.kc-project-intro {
    position: relative;
    overflow: hidden;
    background: #fff;
}

.kc-project-visual {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 720px;
    overflow: hidden;
    background: #111;
}

.kc-project-visual img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 720px;
    max-height: none;
    object-fit: cover;
    transition: transform 1s ease;
}

.kc-project-visual:hover img {
    transform: scale(1.04);
}

.kc-project-visual-shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.08) 25%, rgba(0, 0, 0, 0.78) 100%);
}

.kc-project-visual-top {
    position: absolute;
    top: 35px;
    left: 35px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 14px;
    color: #fff;
}

.kc-project-visual-top span {
    display: flex;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 50%;
    font-size: 12px;
}

.kc-project-visual-top strong {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.kc-project-visual-bottom {
    position: absolute;
    left: 45px;
    bottom: 42px;
    z-index: 2;
    color: #fff;
}

.kc-project-visual-bottom span {
    display: block;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.68);
}

.kc-project-visual-bottom strong {
    display: block;
    font-size: clamp(58px, 5vw, 90px);
    line-height: 0.9;
    font-weight: 400;
    letter-spacing: -2px;
    text-transform: uppercase;
}

.kc-project-year {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
    width: 165px;
    height: 165px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--cr-orange1);
    color: #fff;
}

.kc-project-year small {
    margin-bottom: 5px;
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.kc-project-year strong {
    font-size: 52px;
    line-height: 1;
    font-weight: 400;
}

.kc-project-content {
    height: 100%;
    padding: 55px 0 35px 65px;
}

.kc-project-eyebrow {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 24px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.kc-project-eyebrow span {
    width: 45px;
    height: 1px;
    background: var(--cr-orange1);
}

.kc-project-title {
    max-width: 590px;
    margin-bottom: 28px;
    font-size: clamp(54px, 4.4vw, 82px);
    line-height: 0.93;
    font-weight: 600 !important;
    letter-spacing: -2px;
    color: #111;
}

.kc-project-lead {
    max-width: 590px;
    margin-bottom: 18px;
    font-size: 18px;
    line-height: 1.7;
    color: #333;
}

.kc-project-text {
    max-width: 590px;
    font-size: 15px;
    line-height: 1.8;
    color: #777;
}

.kc-project-details {
    margin-top: 42px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.kc-project-detail {
    display: flex;
    align-items: center;
    gap: 22px;
    padding: 23px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.kc-project-detail-icon {
    width: 55px;
    height: 55px;
    flex: 0 0 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    color: #111;
    font-size: 18px;
    transition: all 0.3s ease;
}


.kc-project-detail-text strong {
    display: block;
    margin-bottom: 5px;
    font-size: 27px;
    line-height: 1;
    font-weight: 600;    
    letter-spacing: -1px;
    color: #111;

}

.kc-project-detail-text span {
    display: block;
    max-width: 390px;
    font-size: 14px;
    line-height: 1.55;
    color: #777;
}

.kc-project-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 28px;
    margin-top: 35px;
}

.kc-project-main-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    min-width: 210px;
    padding: 17px 21px;
    background: #111;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.kc-project-main-button:hover {
    background: var(--cr-orange1);
    color: #000;
    border: 1px solid #000;
}

.kc-project-text-button {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding-bottom: 5px;
    border-bottom: 1px solid #111;
    color: #111;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.kc-project-text-button:hover {
    color: var(--cr-orange1);
    border-color: var(--cr-orange1);
}

@media screen and (max-width: 1199px) {
    .kc-project-content {
        padding-left: 40px;
    }

    .kc-project-visual,
    .kc-project-visual img {
        min-height: 680px;
    }

    .kc-project-title {
        font-size: 60px;
    }
}

@media screen and (max-width: 991px) {
    .kc-project-visual,
    .kc-project-visual img {
        min-height: 580px;
    }

    .kc-project-content {
        padding: 55px 0 0;
    }

    .kc-project-title {
        max-width: 700px;
    }

    .kc-project-lead,
    .kc-project-text {
        max-width: 760px;
    }
}

@media screen and (max-width: 767px) {
    .kc-project-visual,
    .kc-project-visual img {
        min-height: 460px;
    }

    .kc-project-visual-top {
        top: 20px;
        left: 20px;
    }

    .kc-project-visual-bottom {
        left: 22px;
        bottom: 24px;
        padding-right: 120px;
    }

    .kc-project-visual-bottom strong {
        font-size: 48px;
    }

    .kc-project-year {
        width: 110px;
        height: 110px;
    }

    .kc-project-year strong {
        font-size: 38px;
    }

    .kc-project-content {
        padding-top: 40px;
    }

    .kc-project-title {
        font-size: 44px;
        line-height: 0.96;
        letter-spacing: -1px;
    }

    .kc-project-lead {
        font-size: 16px;
    }

    .kc-project-detail {
        gap: 16px;
        padding: 20px 0;
    }

    .kc-project-detail-icon {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
    }

    .kc-project-detail-text strong {
        font-size: 23px;
    }

    .kc-project-actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 22px;
    }
}

.kc-project-info {
    position: relative;
    overflow: hidden;
    background: #f8f6f3;
}

.kc-project-info-heading {
    max-width: 780px;
    margin: 0 auto 60px;
}

.kc-project-info-heading > span {
    display: block;
    margin-bottom: 15px;
    color: var(--cr-orange1);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 3px;
}

.kc-project-info-heading h2 {
    margin: 0;
    font-size: clamp(44px, 5vw, 72px);
    line-height: 1;
    font-weight: 500;
    letter-spacing: -2px;
    color: #171717;
}

.kc-project-info-heading p {
    max-width: 590px;
    margin: 22px auto 0;
    font-size: 15px;
    line-height: 1.75;
    color: #737373;
}

.kc-project-info-layout {
    overflow: hidden;
    border-top: 1px solid #dedbd6;
    border-left: 1px solid #dedbd6;
    background: #ffffff;
}

.kc-project-info-card {
    position: relative;
    display: block;
    min-height: 350px;
    overflow: hidden;
    border-right: 1px solid #dedbd6;
    border-bottom: 1px solid #dedbd6;
    background: #fbfaf8;
    color: #171717;
    transition: background-color 0.35s ease;
}

.kc-project-info-card:hover {
    background: #f2efe9;
    color: #171717;
}

.kc-project-info-motion {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 350px;
    padding: 38px 40px;
    will-change: clip-path;
}

.kc-project-info-number {
    position: absolute;
    top: 36px;
    right: 36px;
    z-index: 4;
    font-size: 18px;
    line-height: 1;
    font-weight: 400;
    color: #858585;
}

.kc-project-info-icon {
    position: relative;
    z-index: 4;
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: auto;
    border: 1px solid #dedad4;
    border-radius: 50%;
    background: #ffffff;
    color: var(--cr-orange1);
    font-size: 21px;
    transition: background-color 0.35s ease, border-color 0.35s ease, color 0.35s ease;
}


.kc-project-info-content {
    position: relative;
    z-index: 4;
    max-width: 500px;
    margin-top: 60px;
    padding-right: 55px;
}

.kc-project-info-content h3 {
    max-width: 500px;
    margin: 0 0 15px;
    font-size: clamp(31px, 2.7vw, 46px);
    line-height: 1.04;
    font-weight: 500;
    letter-spacing: -1px;
    color: #171717;
}

.kc-project-info-content p {
    max-width: 430px;
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
    color: #737373;
}

.kc-project-info-card:hover .kc-project-info-content h3 {
    color: #171717;
}

.kc-project-info-card:hover .kc-project-info-content p {
    color: #737373;
}

.kc-project-info-arrow {
    position: absolute;
    right: 34px;
    bottom: 34px;
    z-index: 5;
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d3cfc9;
    border-radius: 50%;
    background: #ffffff;
    color: #555555;
    font-size: 13px;
    transition: background-color 0.35s ease, border-color 0.35s ease, color 0.35s ease;
}

.kc-project-info-card:hover .kc-project-info-arrow {
    background: var(--cr-orange1);
    border-color: var(--cr-orange1);
    color: #ffffff;
}

.kc-project-info-card-plan:hover {
    background: #f7f5f1;
}

.kc-project-info-plan-motion {
    width: 55%;
    padding-right: 20px;
}

.kc-project-info-plan-motion .kc-project-info-content {
    max-width: 420px;
    padding-right: 20px;
}

.kc-project-info-plan-motion .kc-project-info-content h3 {
    max-width: 410px;
    font-size: clamp(31px, 2.5vw, 43px);
}

.kc-project-info-plan-motion .kc-project-info-number {
    right: 20px;
}

.kc-project-info-plan-motion .kc-project-info-arrow {
    right: 20px;
}

.kc-project-info-plan-visual {
    position: absolute;
    top: 25px;
    right: 25px;
    bottom: 25px;
    z-index: 1;
    width: 43%;
    overflow: hidden;
    pointer-events: none;
}

.kc-project-info-plan-visual img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: contain;
    object-position: center;
    opacity: 1;
    visibility: visible;
    filter: none;
    transform: none;
    clip-path: none;
    transition: none;
}

.kc-project-info-card-plan:hover .kc-project-info-plan-visual,
.kc-project-info-card-plan:hover .kc-project-info-plan-visual img {
    opacity: 1;
    visibility: visible;
    filter: none;
    transform: none;
    clip-path: none;
}

.kc-project-info-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding-top: 32px;
}

.kc-project-info-footer p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #737373;
}

.kc-project-info-footer a {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 6px;
    border-bottom: 1px solid #171717;
    color: #171717;
    font-size: 13px;
    font-weight: 600;
}

.kc-project-info-footer a:hover {
    color: var(--cr-orange1);
    border-color: var(--cr-orange1);
}

@media screen and (max-width: 1199px) {
    .kc-project-info-card,
    .kc-project-info-motion {
        min-height: 330px;
    }

    .kc-project-info-motion {
        padding: 34px;
    }

    .kc-project-info-content h3 {
        font-size: 38px;
    }

    .kc-project-info-plan-motion {
        width: 57%;
    }

    .kc-project-info-plan-visual {
        width: 40%;
    }
}

@media screen and (max-width: 991px) {
    .kc-project-info-heading {
        margin-bottom: 45px;
    }

    .kc-project-info-heading h2 {
        font-size: 58px;
    }

    .kc-project-info-card,
    .kc-project-info-motion {
        min-height: 310px;
    }

    .kc-project-info-card-plan,
    .kc-project-info-card-plan .kc-project-info-motion {
        min-height: 400px;
    }

    .kc-project-info-plan-motion {
        width: 54%;
    }

    .kc-project-info-plan-visual {
        width: 43%;
    }
}

@media screen and (max-width: 767px) {
    .kc-project-info-heading {
        text-align: left !important;
    }

    .kc-project-info-heading h2 {
        font-size: 43px;
        line-height: 1.02;
        letter-spacing: -1px;
    }

    .kc-project-info-heading p {
        margin-left: 0;
    }

    .kc-project-info-card,
    .kc-project-info-motion {
        min-height: 285px;
    }

    .kc-project-info-motion {
        padding: 26px 24px;
    }

    .kc-project-info-number {
        top: 25px;
        right: 24px;
    }

    .kc-project-info-icon {
        width: 54px;
        height: 54px;
        font-size: 18px;
    }

    .kc-project-info-content {
        margin-top: 45px;
        padding-right: 45px;
    }

    .kc-project-info-content h3 {
        font-size: 34px;
        line-height: 1.04;
    }

    .kc-project-info-content p {
        font-size: 13px;
    }

    .kc-project-info-arrow {
        right: 24px;
        bottom: 24px;
        width: 40px;
        height: 40px;
    }

    .kc-project-info-card-plan {
        min-height: 590px;
    }

    .kc-project-info-plan-motion {
        width: 100%;
        min-height: 300px !important;
        padding: 26px 24px;
    }

    .kc-project-info-plan-motion .kc-project-info-number {
        right: 24px;
    }

    .kc-project-info-plan-motion .kc-project-info-arrow {
        right: 24px;
        bottom: 24px;
    }

    .kc-project-info-plan-visual {
        top: auto;
        right: 20px;
        bottom: 20px;
        left: 20px;
        width: auto;
        height: 260px;
    }

    .kc-project-info-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

.fw-600{
    font-weight: 600;
}

.kc-panorama-section {
    position: relative;
    overflow: hidden;
    background: #f6f4f0;
}

.kc-panorama-heading {
    margin-bottom: 55px;
}

.kc-panorama-label {
    display: block;
    margin-bottom: 17px;
    color: var(--cr-orange1);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
}

.kc-panorama-heading h2 {
    max-width: 850px;
    margin: 0;
    font-size: clamp(48px, 5.5vw, 84px);
    line-height: 0.96;
    font-weight: 400;
    letter-spacing: -3px;
    color: #171717;
}

.kc-panorama-heading p {
    max-width: 440px;
    margin: 0 0 5px auto;
    font-size: 15px;
    line-height: 1.8;
    color: #737373;
}

.kc-panorama-wrapper {
    position: relative;
    height: 680px;
    overflow: hidden;
    background: #171717;
}

.kc-panorama-viewer {
    width: 100%;
    height: 100%;
}

.kc-panorama-viewer .pnlm-container {
    background: #171717;
}

.kc-panorama-viewer .pnlm-render-container {
    cursor: grab;
}

.kc-panorama-viewer .pnlm-render-container:active {
    cursor: grabbing;
}

.kc-panorama-viewer .pnlm-controls {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
}

.kc-panorama-viewer .pnlm-control {
    border: 0;
    background-color: rgba(17, 17, 17, 0.72);
    backdrop-filter: blur(8px);
}

.kc-panorama-viewer .pnlm-control:hover {
    background-color: var(--cr-orange1);
}

.kc-panorama-viewer .pnlm-load-box {
    border-radius: 0;
    background: rgba(17, 17, 17, 0.86);
}

.kc-panorama-viewer .pnlm-load-button {
    border-radius: 50%;
    background-color: var(--cr-orange1);
}

.kc-panorama-top-info {
    position: absolute;
    top: 30px;
    left: 30px;
    z-index: 5;
    padding: 17px 20px;
    background: rgba(17, 17, 17, 0.7);
    backdrop-filter: blur(9px);
    color: #ffffff;
    pointer-events: none;
}

.kc-panorama-top-info span {
    display: block;
    margin-bottom: 5px;
    font-size: 11px;
    letter-spacing: 1.5px;
    color: rgba(255, 255, 255, 0.62);
}

.kc-panorama-top-info strong {
    display: block;
    font-size: 26px;
    line-height: 1;
    font-weight: 400;
}

.kc-panorama-help {
    position: absolute;
    left: 30px;
    bottom: 30px;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 13px 18px 13px 13px;
    background: rgba(17, 17, 17, 0.72);
    backdrop-filter: blur(9px);
    color: #ffffff;
    pointer-events: none;
}

.kc-panorama-help-icon {
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #ffffff;
    font-size: 16px;
}

.kc-panorama-help-text strong {
    display: block;
    margin-bottom: 3px;
    font-size: 12px;
    font-weight: 600;
}

.kc-panorama-help-text span {
    display: block;
    font-size: 11px;
    color: rgba(255, 255, 255, 0.62);
}

.kc-panorama-direction {
    position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 5;
    width: 72px;
    height: 72px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.35);
    backdrop-filter: blur(7px);
    color: #ffffff;
    pointer-events: none;
}

.kc-panorama-direction i {
    font-size: 17px;
}

.kc-panorama-direction span {
    font-size: 11px;
    font-weight: 600;
}

.kc-panorama-features {
    border-right: 1px solid #dedbd5;
    border-bottom: 1px solid #dedbd5;
    border-left: 1px solid #dedbd5;
    background: #ffffff;
}

.kc-panorama-feature {
    min-height: 125px;
    display: flex;
    align-items: center;
    gap: 17px;
    padding: 27px 30px;
    border-right: 1px solid #dedbd5;
}

.kc-panorama-features .col-md-4:last-child .kc-panorama-feature {
    border-right: 0;
}

.kc-panorama-feature-icon {
    width: 51px;
    height: 51px;
    flex: 0 0 51px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #dedbd5;
    border-radius: 50%;
    color: var(--cr-orange1);
    font-size: 18px;
}

.kc-panorama-feature strong {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: 600;
    color: #171717;
}

.kc-panorama-feature span {
    display: block;
    font-size: 12px;
    line-height: 1.6;
    color: #777777;
}

@media screen and (max-width: 991px) {
    .kc-panorama-heading h2 {
        margin-bottom: 28px;
        font-size: 62px;
    }

    .kc-panorama-heading p {
        max-width: 600px;
        margin-left: 0;
    }

    .kc-panorama-wrapper {
        height: 560px;
    }
}

@media screen and (max-width: 767px) {
    .kc-panorama-heading {
        margin-bottom: 35px;
    }

    .kc-panorama-heading h2 {
        font-size: 44px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .kc-panorama-wrapper {
        height: 460px;
    }

    .kc-panorama-top-info {
        top: 16px;
        left: 16px;
        padding: 13px 15px;
    }

    .kc-panorama-top-info strong {
        font-size: 21px;
    }

    .kc-panorama-help {
        right: 16px;
        bottom: 16px;
        left: 16px;
    }

    .kc-panorama-help-text span {
        display: none;
    }

    .kc-panorama-direction {
        display: none;
    }

    .kc-panorama-feature {
        min-height: 105px;
        border-right: 0;
        border-bottom: 1px solid #dedbd5;
    }

    .kc-panorama-features .col-md-4:last-child .kc-panorama-feature {
        border-bottom: 0;
    }
}

.kc-photo-gallery {
    position: relative;
    overflow: hidden;
    background: #111111;
    color: #ffffff;
}

.kc-photo-gallery-heading {
    margin-bottom: 65px;
}

.kc-photo-gallery-label {
    display: block;
    margin-bottom: 18px;
    color: var(--cr-orange1);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 3px;
}

.kc-photo-gallery-heading h2 {
    max-width: 850px;
    margin: 0;
    font-size: clamp(48px, 5.5vw, 86px);
    line-height: 0.95;
    font-weight: 400;
    letter-spacing: -3px;
    color: #ffffff;
}

.kc-photo-gallery-heading-right {
    max-width: 430px;
    margin-left: auto;
}

.kc-photo-gallery-heading-right p {
    margin: 0 0 25px;
    font-size: 15px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.58);
}

.kc-photo-gallery-all {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 7px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.55);
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
}

.kc-photo-gallery-all:hover {
    color: var(--cr-orange1);
    border-color: var(--cr-orange1);
}

.kc-photo-gallery-slider-wrap {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.kc-photo-gallery-slider {
    width: 100%;
    overflow: hidden;
}

.kc-photo-gallery-slider .swiper-wrapper {
    display: flex;
    align-items: stretch;
    transition-timing-function: linear !important;
}

.kc-photo-gallery-slider .swiper-slide {
    flex-shrink: 0;
}

.kc-photo-gallery-slide {
    height: 520px;
}

.kc-photo-gallery-item {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #222222;
    color: #ffffff;
}

.kc-photo-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
    opacity: 1;
    visibility: visible;
    transition: transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.kc-photo-gallery-item:hover img {
    transform: scale(1.035);
}

.kc-photo-gallery-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.02) 45%, rgba(0, 0, 0, 0.55) 100%);
    pointer-events: none;
}

.kc-photo-gallery-number {
    position: absolute;
    left: 28px;
    bottom: 27px;
    z-index: 3;
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    color: #ffffff;
}

.kc-photo-gallery-zoom {
    position: absolute;
    top: 25px;
    right: 25px;
    z-index: 3;
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.25);
    backdrop-filter: blur(8px);
    color: #ffffff;
    font-size: 17px;
    transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}

.kc-photo-gallery-item:hover .kc-photo-gallery-zoom {
    background: var(--cr-orange1);
    border-color: var(--cr-orange1);
    transform: rotate(90deg);
}

.kc-photo-gallery-progress {
    position: relative;
    width: calc(100% - 30px);
    max-width: 1320px;
    height: 2px;
    margin: 45px auto 0;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.16);
}

.kc-photo-gallery-progress span {
    display: block;
    width: 22%;
    height: 100%;
    background: var(--cr-orange1);
    transform: translateX(-100%);
    animation: kcGalleryProgress 8s linear infinite;
}

@keyframes kcGalleryProgress {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(550%);
    }
}

.fancybox__container {
    --fancybox-bg: rgba(8, 8, 8, 0.96);
    z-index: 99999;
}

.fancybox__caption {
    font-family: "Sora", sans-serif;
    font-size: 14px;
}

@media screen and (max-width: 1199px) {
    .kc-photo-gallery-slide {
        height: 480px;
    }
}

@media screen and (max-width: 991px) {
    .kc-photo-gallery-heading {
        margin-bottom: 45px;
    }

    .kc-photo-gallery-heading h2 {
        margin-bottom: 30px;
        font-size: 62px;
        letter-spacing: -2px;
    }

    .kc-photo-gallery-heading-right {
        max-width: 600px;
        margin-left: 0;
    }

    .kc-photo-gallery-slide {
        height: 460px;
    }
}

@media screen and (max-width: 767px) {
    .kc-photo-gallery-heading {
        margin-bottom: 35px;
    }

    .kc-photo-gallery-heading h2 {
        font-size: 44px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .kc-photo-gallery-heading-right p {
        font-size: 14px;
    }

    .kc-photo-gallery-slide {
        height: 420px;
    }

    .kc-photo-gallery-number {
        left: 20px;
        bottom: 20px;
    }

    .kc-photo-gallery-zoom {
        top: 18px;
        right: 18px;
        width: 48px;
        height: 48px;
        font-size: 15px;
    }

    .kc-photo-gallery-progress {
        margin-top: 30px;
    }
}

@media screen and (max-width: 480px) {
    .kc-photo-gallery-slide {
        height: 380px;
    }
}

.kc-metrics-section {
    position: relative;
    overflow: hidden;
    background: #111111;
    color: #ffffff;
}

.kc-metrics-section::before {
    content: "";
    position: absolute;
    top: -260px;
    right: -210px;
    width: 640px;
    height: 640px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 83, 46, 0.15) 0%, rgba(255, 83, 46, 0) 72%);
    pointer-events: none;
}

.kc-metrics-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 60px;
}

.kc-metrics-label {
    display: block;
    margin-bottom: 18px;
    color: var(--cr-orange1);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 3px;
}

.kc-metrics-heading h2 {
    max-width: 850px;
    margin: 0;
    font-size: clamp(48px, 5.4vw, 82px);
    line-height: 0.96;
    font-weight: 400;
    letter-spacing: -3px;
    color: #ffffff;
}

.kc-metrics-description {
    max-width: 430px;
    margin: 0 0 5px auto;
    padding-left: 25px;
    border-left: 2px solid var(--cr-orange1);
    font-size: 15px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.58);
}

.kc-metrics-grid {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-top: 1px solid rgba(255, 255, 255, 0.13);
    border-left: 1px solid rgba(255, 255, 255, 0.13);
}

.kc-metric-card {
    position: relative;
    min-height: 315px;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 32px 34px;
    border-right: 1px solid rgba(255, 255, 255, 0.13);
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
    background: #181818;
    color: #ffffff;
    transition: background-color 0.3s ease;
}

.kc-metrics-section.kc-metrics-js-ready .kc-metric-card {
    opacity: 0;
    transform: translateY(30px);
}

.kc-metrics-section.kc-metrics-visible .kc-metric-card {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.5s ease var(--kc-delay), transform 0.5s ease var(--kc-delay), background-color 0.3s ease;
}

.kc-metric-card::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    background: var(--cr-orange1);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.4s ease;
}

.kc-metric-card:hover {
    background: #1e1e1e;
}

.kc-metric-card:hover::after {
    transform: scaleX(1);
}

.kc-metric-card-main {
    min-height: 630px;
    padding: 40px;
    background: var(--cr-orange1);
}

.kc-metric-card-main:hover {
    background: var(--cr-orange1);
}

.kc-metric-card-main::after {
    background: #ffffff;
}

.kc-metric-card-wide,
.kc-metric-card-black,
.kc-metric-card-bottom {
    min-height: 315px;
}

.kc-metric-card-black {
    background: #090909;
}

.kc-metric-card-light {
    background: #f0ede7;
    color: #171717;
}

.kc-metric-card-top {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.kc-metric-index {
    font-size: 17px;
    line-height: 1;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.42);
}

.kc-metric-card-light .kc-metric-index {
    color: rgba(17, 17, 17, 0.42);
}

.kc-metric-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    font-size: 20px;
    transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

.kc-metric-card-main .kc-metric-icon {
    border-color: rgba(255, 255, 255, 0.45);
    background: rgba(255, 255, 255, 0.12);
}

.kc-metric-card-light .kc-metric-icon {
    border-color: rgba(17, 17, 17, 0.14);
    background: #ffffff;
    color: var(--cr-orange1);
}

.kc-metric-card:hover .kc-metric-icon {
    background: var(--cr-orange1);
    border-color: var(--cr-orange1);
    color: #ffffff;
    transform: rotate(-7deg);
}

.kc-metric-card-main:hover .kc-metric-icon {
    background: #ffffff;
    border-color: #ffffff;
    color: var(--cr-orange1);
}

.kc-metric-content {
    position: relative;
    z-index: 3;
    margin-top: auto;
}

.kc-metric-number {
    min-height: 78px;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-bottom: 16px;
    font-size: clamp(64px, 6vw, 94px);
    line-height: 0.82;
    font-weight: 400;
    letter-spacing: -4px;
    color: #ffffff;
    font-variant-numeric: tabular-nums;
}

.kc-metric-number-main {
    min-height: 150px;
    font-size: clamp(115px, 12vw, 195px);
    letter-spacing: -9px;
}

.kc-metric-number-small {
    font-size: clamp(58px, 5vw, 78px);
    letter-spacing: -3px;
}

.kc-metric-card-light .kc-metric-number {
    color: #171717;
}

.kc-metric-number sup {
    margin-top: 8px;
    font-family: "Sora", sans-serif;
    font-size: 14px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0;
    color: rgba(255, 255, 255, 0.55);
}

.kc-metric-card-light .kc-metric-number sup {
    color: rgba(17, 17, 17, 0.52);
}

.kc-metric-content h3 {
    max-width: 460px;
    margin: 0 0 12px;
    font-size: clamp(25px, 2.1vw, 35px);
    line-height: 1.03;
    font-weight: 400;
    letter-spacing: -1px;
    color: #ffffff;
}

.kc-metric-card-light .kc-metric-content h3 {
    color: #171717;
}

.kc-metric-content p {
    max-width: 420px;
    margin: 0;
    font-size: 13px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.5);
}

.kc-metric-card-main .kc-metric-content p {
    max-width: 430px;
    font-size: 15px;
    color: rgba(255, 255, 255, 0.78);
}

.kc-metric-card-light .kc-metric-content p {
    color: rgba(17, 17, 17, 0.58);
}

.kc-metric-watermark {
    position: absolute;
    top: 110px;
    right: -25px;
    z-index: 1;
    font-size: 275px;
    line-height: 0.8;
    font-weight: 400;
    letter-spacing: -18px;
    color: rgba(255, 255, 255, 0.08);
    pointer-events: none;
}

.kc-metric-unit-decoration {
    position: absolute;
    right: 12px;
    bottom: -25px;
    z-index: 1;
    font-size: 170px;
    line-height: 0.8;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.025);
    pointer-events: none;
}

.kc-metric-main-footer {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 45px;
    padding-top: 23px;
    border-top: 1px solid rgba(255, 255, 255, 0.28);
}

.kc-metric-main-footer > span:first-child {
    font-size: 12px;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.78);
}

.kc-metric-main-arrow {
    width: 41px;
    height: 41px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    color: var(--cr-orange1);
    font-size: 13px;
}

.kc-metrics-footer {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding-top: 30px;
}

.kc-metrics-footer-text {
    display: flex;
    align-items: center;
    gap: 13px;
}

.kc-metrics-footer-dot {
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: var(--cr-orange1);
    box-shadow: 0 0 0 6px rgba(255, 83, 46, 0.12);
}

.kc-metrics-footer-text p {
    margin: 0;
    font-size: 13px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.5);
}

.kc-metrics-footer-link {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 7px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
}

.kc-metrics-footer-link:hover {
    color: var(--cr-orange1);
    border-color: var(--cr-orange1);
}

@media screen and (max-width: 1199px) {
    .kc-metric-card {
        padding: 28px;
    }

    .kc-metric-card-main {
        padding: 34px;
    }

    .kc-metric-number-main {
        font-size: 155px;
    }

    .kc-metric-content h3 {
        font-size: 29px;
    }
}

@media screen and (max-width: 991px) {
    .kc-metrics-heading {
        margin-bottom: 45px;
    }

    .kc-metrics-heading h2 {
        margin-bottom: 28px;
        font-size: 60px;
    }

    .kc-metrics-description {
        max-width: 620px;
        margin-left: 0;
    }

    .kc-metric-card-main {
        min-height: 520px;
    }

    .kc-metric-card-wide,
    .kc-metric-card-black,
    .kc-metric-card-bottom {
        min-height: 300px;
    }
}

@media screen and (max-width: 767px) {
    .kc-metrics-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .kc-metrics-description {
        padding-left: 18px;
    }

    .kc-metric-card,
    .kc-metric-card-wide,
    .kc-metric-card-black,
    .kc-metric-card-bottom {
        min-height: 285px;
        padding: 25px 23px;
    }

    .kc-metric-card-main {
        min-height: 450px;
    }

    .kc-metric-number-main {
        min-height: 105px;
        font-size: 125px;
        letter-spacing: -6px;
    }

    .kc-metric-number,
    .kc-metric-number-small {
        min-height: 58px;
        font-size: 63px;
        letter-spacing: -3px;
    }

    .kc-metric-content h3 {
        font-size: 28px;
    }

    .kc-metric-icon {
        width: 53px;
        height: 53px;
        font-size: 18px;
    }

    .kc-metric-watermark {
        top: 120px;
        font-size: 200px;
    }

    .kc-metrics-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

.kc-request-banner {
    position: relative;
    padding: 0px 0;
    background: #f7f5f1;
}

.kc-request-banner-inner {
    position: relative;
    min-height: 245px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    overflow: hidden;
    padding: 50px 55px;
    background:
        linear-gradient(90deg, rgba(15, 15, 15, 0.9) 0%, rgba(15, 15, 15, 0.72) 55%, rgba(15, 15, 15, 0.4) 100%),
        url("/assets/images/banner.png") center center / cover no-repeat;
    color: #ffffff;
}

.kc-request-banner-inner::before {
    content: "";
    position: absolute;
    top: -140px;
    right: 170px;
    width: 360px;
    height: 360px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 50%;
    pointer-events: none;
}

.kc-request-banner-inner::after {
    content: "";
    position: absolute;
    top: -70px;
    right: 235px;
    width: 220px;
    height: 220px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 50%;
    pointer-events: none;
}

.kc-request-banner-content {
    position: relative;
    z-index: 3;
    max-width: 950px;
}

.kc-request-banner-label {
    display: block;
    margin-bottom: 13px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    color: var(--cr-orange1);
}

.kc-request-banner-content h2 {
    max-width: 950px;
    margin: 0 0 15px;
    font-size: clamp(38px, 4.4vw, 67px);
    line-height: 0.98;
    font-weight: 400;
    letter-spacing: -2px;
    color: #ffffff;
}

.kc-request-banner-content p {
    max-width: 950px;
    margin: 0;
    font-size: 14px;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.78);
}

.kc-request-banner-action {
    position: relative;
    z-index: 4;
    flex: 0 0 auto;
}

.kc-request-banner-button {
    min-width: 245px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 12px 12px 12px 23px;
    background: #111111;
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    transition: background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1), color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.kc-request-banner-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    color: #111111;
    font-size: 14px;
    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1), color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.kc-request-banner-button:hover {
    background: var(--cr-orange1);
    color: #ffffff;
    border: 1px solid #fff;
}

.kc-request-banner-button:hover .kc-request-banner-button-icon {
    background: #111111;
    color: #ffffff;
    transform: rotate(45deg);
}

.kc-request-banner-decoration {
    position: absolute;
    top: 50%;
    right: 320px;
    z-index: 1;
    font-size: 245px;
    line-height: 0.8;
    font-weight: 400;
    letter-spacing: -15px;
    color: rgba(255, 255, 255, 0.06);
    transform: translateY(-50%);
    pointer-events: none;
}

@media screen and (max-width: 1199px) {
    .kc-request-banner-inner {
        padding: 45px;
    }

    .kc-request-banner-content h2 {
        font-size: 54px;
    }

    .kc-request-banner-decoration {
        right: 270px;
        font-size: 200px;
    }
}

@media screen and (max-width: 991px) {
    .kc-request-banner-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 35px;
    }

    .kc-request-banner-content {
        max-width: 760px;
    }

    .kc-request-banner-content h2 {
        font-size: 50px;
    }

    .kc-request-banner-decoration {
        top: auto;
        right: 20px;
        bottom: -30px;
        font-size: 180px;
        transform: none;
    }
}

@media screen and (max-width: 767px) {
    .kc-request-banner {
        padding: 30px 0;
    }

    .kc-request-banner-inner {
        min-height: auto;
        padding: 34px 25px;
        background:
            linear-gradient(90deg, rgba(15, 15, 15, 0.92), rgba(15, 15, 15, 0.62)),
            url("/assets/images/banner.png") center center / cover no-repeat;
    }

    .kc-request-banner-content h2 {
        font-size: 39px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .kc-request-banner-content p {
        font-size: 13px;
    }

    .kc-request-banner-action,
    .kc-request-banner-button {
        width: 100%;
    }

    .kc-request-banner-decoration {
        right: -20px;
        bottom: -10px;
        font-size: 145px;
    }
}

.kc-blog-section {
    position: relative;
    overflow: hidden;
    background: #f7f5f1;
}

.kc-blog-section::before {
    content: "";
    position: absolute;
    top: -230px;
    right: -230px;
    width: 520px;
    height: 520px;
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.kc-blog-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 60px;
}

.kc-blog-label {
    display: block;
    margin-bottom: 17px;
    color: var(--cr-orange1);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
}

.kc-blog-heading h2 {
    max-width: 850px;
    margin: 0;
    font-size: clamp(46px, 5.2vw, 80px);
    line-height: 0.96;
    font-weight: 400;
    letter-spacing: -3px;
    color: #171717;
}

.kc-blog-heading-right {
    max-width: 430px;
    margin-left: auto;
}

.kc-blog-heading-right p {
    margin: 0 0 24px;
    font-size: 15px;
    line-height: 1.8;
    color: #737373;
}

.kc-blog-all {
    display: inline-flex;
    align-items: center;
    gap: 17px;
    padding-bottom: 7px;
    border-bottom: 1px solid #171717;
    color: #171717;
    font-size: 13px;
    font-weight: 600;
    transition: color 0.4s ease, border-color 0.4s ease;
}

.kc-blog-all:hover {
    color: var(--cr-orange1);
    border-color: var(--cr-orange1);
}

.kc-blog-card {
    position: relative;
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    opacity: 0;
    transform: translateY(35px);
    transition: opacity 0.7s ease, transform 0.7s ease, box-shadow 0.5s ease;
}

.kc-blog-card.kc-blog-visible {
    opacity: 1;
    transform: translateY(0);
}

.kc-blog-card:hover {
    box-shadow: 0 24px 60px rgba(17, 17, 17, 0.1);
}

.kc-blog-image {
    position: relative;
    display: block;
    height: 350px;
    overflow: hidden;
    background: #191919;
}

.kc-blog-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
}

.kc-blog-card:hover .kc-blog-image img {
    transform: scale(1.055);
}

.kc-blog-image-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.04) 45%, rgba(0, 0, 0, 0.55) 100%);
    pointer-events: none;
}

.kc-blog-category {
    position: absolute;
    left: 24px;
    bottom: 23px;
    z-index: 3;
    padding: 9px 14px;
    background: var(--cr-orange1);
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
}

.kc-blog-image-arrow {
    position: absolute;
    top: 22px;
    right: 22px;
    z-index: 3;
    width: 53px;
    height: 53px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.25);
    backdrop-filter: blur(8px);
    color: #ffffff;
    font-size: 15px;
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.kc-blog-card:hover .kc-blog-image-arrow {
    background: var(--cr-orange1);
    border-color: var(--cr-orange1);
    transform: rotate(45deg);
}

.kc-blog-content {
    position: relative;
    min-height: 320px;
    display: flex;
    flex-direction: column;
    padding: 30px 30px 32px;
}

.kc-blog-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-bottom: 20px;
}

.kc-blog-meta span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #8a8a8a;
    font-size: 11px;
}

.kc-blog-meta i {
    color: var(--cr-orange1);
}

.kc-blog-content h3 {
    margin: 0 0 17px;
    font-size: clamp(29px, 2.5vw, 39px);
    line-height: 1.05;
    font-weight: 400;
    letter-spacing: -1px;
}

.kc-blog-content h3 a {
    color: #171717;
    transition: color 0.35s ease;
    font-weight: 500;
    font-size: 27px;
}

.kc-blog-content h3 a:hover {
    color: var(--cr-orange1);
}

.kc-blog-content p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 26px;
    color: #737373;
    font-size: 14px;
    line-height: 1.75;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.kc-blog-link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 15px;
    margin-top: auto;
    padding-bottom: 6px;
    border-bottom: 1px solid #171717;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    transition: gap 0.4s ease, color 0.4s ease, border-color 0.4s ease;
}

.kc-blog-link:hover {
    gap: 22px;
    color: var(--cr-orange1);
    border-color: var(--cr-orange1);
}

.kc-blog-number {
    position: absolute;
    right: 21px;
    bottom: 18px;
    z-index: 1;
    font-size: 78px;
    line-height: 0.8;
    font-weight: 400;
    color: rgba(17, 17, 17, 0.035);
    pointer-events: none;
}

@media screen and (max-width: 1199px) {
    .kc-blog-image {
        height: 310px;
    }

    .kc-blog-content {
        min-height: 330px;
        padding: 27px;
    }

    .kc-blog-content h3 {
        font-size: 33px;
    }
}

@media screen and (max-width: 991px) {
    .kc-blog-heading {
        margin-bottom: 45px;
    }

    .kc-blog-heading h2 {
        margin-bottom: 28px;
        font-size: 60px;
    }

    .kc-blog-heading-right {
        max-width: 650px;
        margin-left: 0;
    }

    .kc-blog-image {
        height: 320px;
    }
}

@media screen and (max-width: 767px) {
    .kc-blog-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .kc-blog-image {
        height: 300px;
    }

    .kc-blog-content {
        min-height: auto;
        padding: 25px;
    }

    .kc-blog-content h3 {
        font-size: 31px;
    }

    .kc-blog-image-arrow {
        top: 18px;
        right: 18px;
        width: 48px;
        height: 48px;
    }

    .kc-blog-category {
        left: 20px;
        bottom: 20px;
    }
}

.fw-500 {
    font-weight: 500;
}

.ls-mininus-1{
    letter-spacing: -2px;
}

.policy {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 65px 0 80px;
    color: #333333;
    font-size: 15px;
    line-height: 1.85;
    text-align: left;
    word-break: normal;
    overflow-wrap: break-word;
}

.policy > *:first-child {
    margin-top: 0;
}

.policy > *:last-child {
    margin-bottom: 0;
}

.policy p {
    margin: 0 0 22px;
    color: #555555;
    font-size: 15px;
    line-height: 1.85;
}

.policy h1,
.policy h2,
.policy h3,
.policy h4,
.policy h5,
.policy h6 {
    margin: 42px 0 16px;
    color: #171717;
    font-family: "Akshar", sans-serif;
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -0.5px;
}

.policy h1 {
    font-size: 42px;
}

.policy h2 {
    font-size: 34px;
}

.policy h3 {
    font-size: 28px;
}

.policy h4 {
    font-size: 23px;
}

.policy h5 {
    font-size: 19px;
}

.policy h6 {
    font-size: 17px;
}

.policy p > strong:first-child,
.policy p > b:first-child {
    display: block;
    margin-bottom: 7px;
    color: #171717;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.45;
}

.policy strong,
.policy b {
    color: #171717;
    font-weight: 700;
}

.policy ul,
.policy ol {
    margin: 18px 0 26px;
    padding-left: 24px;
    list-style: disc;
}

.policy li {
    margin-bottom: 9px;
    padding-left: 5px;
    color: #555555;
    font-size: 15px;
    line-height: 1.75;
}

.policy ul li::marker {
    color: var(--cr-orange1);
}

.policy ol li::marker {
    color: var(--cr-orange1);
    font-weight: 600;
}

.policy a {
    color: var(--cr-orange1);
    text-decoration: underline;
    text-underline-offset: 4px;
}

.policy a:hover {
    color: #171717;
}

.policy blockquote {
    position: relative;
    margin: 30px 0;
    padding: 24px 28px;
    border-left: 3px solid var(--cr-orange1);
    background: #f7f5f1;
    color: #555555;
}

.policy img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 30px 0;
}

.policy table {
    width: 100%;
    margin: 30px 0;
    border-collapse: collapse;
    background: #ffffff;
}

.policy table th,
.policy table td {
    padding: 14px 16px;
    border: 1px solid #dedbd6;
    color: #555555;
    font-size: 14px;
    line-height: 1.6;
    text-align: left;
    vertical-align: top;
}

.policy table th {
    background: #f7f5f1;
    color: #171717;
    font-weight: 600;
}

.policy hr {
    margin: 38px 0;
    border: 0;
    border-top: 1px solid #dedbd6;
}

@media screen and (max-width: 991px) {
    .policy {
        padding: 50px 0 65px;
    }

    .policy h1 {
        font-size: 36px;
    }

    .policy h2 {
        font-size: 30px;
    }

    .policy h3 {
        font-size: 25px;
    }
}

@media screen and (max-width: 767px) {
    .policy {
        padding: 38px 0 50px;
        font-size: 14px;
        line-height: 1.75;
    }

    .policy p {
        margin-bottom: 18px;
        font-size: 14px;
        line-height: 1.75;
    }

    .policy p > strong:first-child,
    .policy p > b:first-child {
        margin-bottom: 6px;
        font-size: 15px;
    }

    .policy h1 {
        font-size: 31px;
    }

    .policy h2 {
        font-size: 27px;
    }

    .policy h3 {
        font-size: 23px;
    }

    .policy h4 {
        font-size: 20px;
    }

    .policy ul,
    .policy ol {
        padding-left: 20px;
    }

    .policy table {
        display: block;
        overflow-x: auto;
    }
}

.kc-contact-page {
    position: relative;
    overflow: hidden;
    background: #f7f5f1;
}

.kc-contact-page::before {
    content: "";
    position: absolute;
    top: -280px;
    left: -280px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.kc-contact-intro {
    max-width: 570px;
    margin-bottom: 45px;
}

.kc-contact-label {
    display: block;
    margin-bottom: 17px;
    color: var(--cr-orange1);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
}

.kc-contact-intro h2 {
    margin: 0 0 25px;
    font-size: clamp(48px, 5vw, 76px);
    line-height: 0.96;
    font-weight: 400;
    letter-spacing: -3px;
    color: #171717;
}

.kc-contact-intro > p {
    max-width: 520px;
    margin: 0;
    color: #737373;
    font-size: 15px;
    line-height: 1.85;
}

.kc-contact-information {
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.kc-contact-information-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 25px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.12);
}

.kc-contact-information-icon {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(17, 17, 17, 0.14);
    border-radius: 50%;
    background: #ffffff;
    color: var(--cr-orange1);
    font-size: 19px;
}

.kc-contact-information-content {
    min-width: 0;
    padding-top: 2px;
}

.kc-contact-information-content > span {
    display: block;
    margin-bottom: 7px;
    color: #888888;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.5px;
}

.kc-contact-information-content a {
    display: block;
    width: fit-content;
    margin-bottom: 5px;
    color: #171717;
    font-family: "Akshar", sans-serif;
    font-size: 25px;
    line-height: 1.15;
    font-weight: 400;
    transition: color 0.3s ease;
}

.kc-contact-information-content a:last-child {
    margin-bottom: 0;
}

.kc-contact-information-content a:hover {
    color: var(--cr-orange1);
}

.kc-contact-information-content p {
    max-width: 430px;
    margin: 0;
    color: #333333;
    font-size: 15px;
    line-height: 1.7;
}

.kc-contact-note {
    display: flex;
    align-items: flex-start;
    gap: 17px;
    margin-top: 35px;
    padding: 23px;
    background: #171717;
    color: #ffffff;
}

.kc-contact-note-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #ffffff;
    font-size: 17px;
}

.kc-contact-note strong {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: 600;
}

.kc-contact-note p {
    max-width: 390px;
    margin: 0;
    color: rgba(255, 255, 255, 0.62);
    font-size: 12px;
    line-height: 1.65;
}

.kc-contact-form-wrapper {
    position: relative;
    overflow: hidden;
    padding: 52px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
}

.kc-contact-form-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 35px;
}

.kc-contact-form-heading > span {
    display: block;
    margin-bottom: 12px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.kc-contact-form-heading h2 {
    margin: 0 0 13px;
    font-size: clamp(39px, 4vw, 60px);
    line-height: 0.98;
    font-weight: 400;
    letter-spacing: -2px;
    color: #171717;
}

.kc-contact-form-heading p {
    max-width: 540px;
    margin: 0;
    color: #777777;
    font-size: 14px;
    line-height: 1.75;
}

.kc-contact-form {
    position: relative;
    z-index: 2;
}

.kc-contact-form-group {
    position: relative;
    margin-bottom: 31px;
}

.kc-contact-form-group label {
    display: block;
    margin-bottom: 10px;
    color: #777777;
    font-size: 12px;
    font-weight: 500;
}

.kc-contact-form-group input,
.kc-contact-form-group textarea {
    display: block;
    width: 100%;
    padding: 0 0 12px;
    border: 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.18);
    border-radius: 0;
    outline: 0;
    background: transparent;
    color: #171717;
    font-family: "Sora", sans-serif;
    font-size: 15px;
    line-height: 1.6;
    box-shadow: none;
    resize: none;
}

.kc-contact-form-group input:focus,
.kc-contact-form-group textarea:focus {
    border-color: rgba(17, 17, 17, 0.18);
    outline: 0;
    box-shadow: none;
}

.kc-contact-form-line {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: var(--cr-orange1);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.kc-contact-form-group:focus-within .kc-contact-form-line {
    transform: scaleX(1);
}

.kc-contact-form-message {
    margin-bottom: 25px;
}

.kc-contact-form-consent {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 28px;
    color: #777777;
    font-size: 11px;
    line-height: 1.65;
    cursor: pointer;
}

.kc-contact-form-consent input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.kc-contact-form-check {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 1px;
    border: 1px solid rgba(17, 17, 17, 0.22);
    color: transparent;
    font-size: 10px;
    transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.kc-contact-form-consent input:checked + .kc-contact-form-check {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #ffffff;
}

.kc-contact-form-consent a {
    color: #171717;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.kc-contact-form-consent a:hover {
    color: var(--cr-orange1);
}

.kc-contact-submit {
    min-width: 235px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 11px 11px 11px 22px;
    border: 0;
    background: #171717;
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1), color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.kc-contact-submit-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    color: #171717;
    font-size: 14px;
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1), color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.kc-contact-submit:hover {
    background: var(--cr-orange1);
    color: #5b5b5b;
}

.kc-contact-submit:hover .kc-contact-submit-icon {
    background: #171717;
    color: #ffffff;
    transform: rotate(45deg);
}

.kc-contact-form-decoration {
    position: absolute;
    right: -25px;
    bottom: -35px;
    z-index: 1;
    font-size: 240px;
    line-height: 0.8;
    font-weight: 400;
    letter-spacing: -14px;
    color: rgba(17, 17, 17, 0.025);
    pointer-events: none;
}

.kc-contact-alert {
    position: relative;
    z-index: 4;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 25px;
    padding: 16px 18px;
    font-size: 13px;
    line-height: 1.6;
}

.kc-contact-alert i {
    margin-top: 3px;
    font-size: 17px;
}

.kc-contact-alert-success {
    border: 1px solid rgba(35, 145, 86, 0.22);
    background: rgba(35, 145, 86, 0.08);
    color: #187943;
}

.kc-contact-alert-error {
    border: 1px solid rgba(210, 53, 53, 0.22);
    background: rgba(210, 53, 53, 0.08);
    color: #b42121;
}

.kc-contact-map-section {
    padding: 0 0 120px;
    background: #f7f5f1;
}

.kc-contact-map-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 32px;
}

.kc-contact-map-heading > div:first-child > span {
    display: block;
    margin-bottom: 11px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.kc-contact-map-heading h2 {
    margin: 0;
    font-size: clamp(40px, 4.5vw, 64px);
    line-height: 1;
    font-weight: 400;
    letter-spacing: -2px;
    color: #171717;
}

.kc-contact-map-direction {
    display: flex;
    align-items: center;
    gap: 13px;
    max-width: 360px;
    color: #777777;
    font-size: 12px;
    line-height: 1.6;
}

.kc-contact-map-direction i {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #ffffff;
    font-size: 14px;
}

.kc-contact-map {
    position: relative;
    height: 620px;
    overflow: hidden;
    background: #dedbd6;
}

.kc-contact-map-frame {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.kc-contact-map-address {
    position: absolute;
    left: 30px;
    bottom: 30px;
    z-index: 3;
    max-width: 410px;
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding: 18px 20px;
    background: rgba(17, 17, 17, 0.9);
    backdrop-filter: blur(10px);
    color: #ffffff;
}

.kc-contact-map-address-icon {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #ffffff;
}

.kc-contact-map-address span {
    display: block;
    margin-bottom: 5px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 10px;
    letter-spacing: 1.5px;
}

.kc-contact-map-address p {
    margin: 0;
    color: #ffffff;
    font-size: 13px;
    line-height: 1.6;
}

@media screen and (max-width: 1199px) {
    .kc-contact-form-wrapper {
        padding: 42px;
    }

    .kc-contact-intro h2 {
        font-size: 62px;
    }
}

@media screen and (max-width: 991px) {
    .kc-contact-intro {
        max-width: 750px;
    }

    .kc-contact-form-wrapper {
        margin-top: 55px;
    }

    .kc-contact-map-section {
        padding-bottom: 90px;
    }

    .kc-contact-map {
        height: 520px;
    }
}

@media screen and (max-width: 767px) {
    .kc-contact-intro h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .kc-contact-information-content a {
        font-size: 22px;
    }

    .kc-contact-form-wrapper {
        padding: 32px 23px;
    }

    .kc-contact-form-heading h2 {
        font-size: 39px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .kc-contact-submit {
        width: 100%;
    }

    .kc-contact-map-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .kc-contact-map {
        height: 450px;
    }

    .kc-contact-map-address {
        right: 16px;
        bottom: 16px;
        left: 16px;
        max-width: none;
    }
}

.koru-talep-page {
    position: relative;
    overflow: hidden;
    padding: 110px 0 120px;
    background: #f5f3ef;
}

.koru-talep-page::before {
    content: "";
    position: absolute;
    top: -270px;
    right: -270px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-talep-intro {
    position: relative;
    min-height: 100%;
    overflow: hidden;
    padding: 58px 48px 45px;
    background: #171717;
    color: #ffffff;
}

.koru-talep-intro-image {
    position: absolute;
    inset: 0;
    background: url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-talep-intro-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(15, 15, 15, 0.7) 0%,
        rgba(15, 15, 15, 0.94) 100%
    );
}

.koru-talep-intro-content {
    position: relative;
    z-index: 2;
}

.koru-talep-small-title {
    display: block;
    margin-bottom: 18px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-talep-intro h2 {
    max-width: 480px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(47px, 4.5vw, 70px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-talep-intro-text {
    max-width: 440px;
    margin: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 14px;
    line-height: 1.8;
}

.koru-talep-process {
    margin-top: 55px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.koru-talep-process-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 25px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}

.koru-talep-process-number {
    min-width: 48px;
    color: var(--cr-orange1);
    font-size: 28px;
    font-weight: 400;
    line-height: 1;
}

.koru-talep-process-content strong {
    display: block;
    margin-bottom: 7px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.koru-talep-process-content p {
    max-width: 340px;
    margin: 0;
    color: rgba(255, 255, 255, 0.56);
    font-size: 12px;
    line-height: 1.65;
}

.koru-talep-direct-contact {
    position: relative;
    z-index: 2;
    margin-top: 42px;
    padding-top: 27px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.koru-talep-direct-contact > span {
    display: block;
    margin-bottom: 14px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;
}

.koru-talep-direct-contact a {
    display: flex;
    align-items: center;
    gap: 11px;
    width: fit-content;
    margin-bottom: 9px;
    color: #ffffff;
    font-family: "Akshar", sans-serif;
    font-size: 22px;
    line-height: 1.25;
    transition: color 0.35s ease;
}

.koru-talep-direct-contact a:last-child {
    margin-bottom: 0;
}

.koru-talep-direct-contact a i {
    width: 20px;
    color: var(--cr-orange1);
    font-size: 14px;
}

.koru-talep-direct-contact a:hover {
    color: var(--cr-orange1);
}

.koru-talep-form-panel {
    position: relative;
    min-height: 100%;
    overflow: hidden;
    padding: 58px 58px 55px;
    border: 1px solid rgba(17, 17, 17, 0.09);
    background: #ffffff;
}

.koru-talep-form-heading {
    position: relative;
    z-index: 3;
    max-width: 650px;
    margin-bottom: 42px;
}

.koru-talep-form-heading > span {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-talep-form-heading h2 {
    margin: 0 0 15px;
    color: #171717;
    font-size: clamp(42px, 4vw, 61px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-talep-form-heading p {
    max-width: 590px;
    margin: 0;
    color: #777777;
    font-size: 14px;
    line-height: 1.75;
}

.koru-talep-form {
    position: relative;
    z-index: 4;
}

.koru-talep-field {
    position: relative;
    margin-bottom: 31px;
}

.koru-talep-field label {
    display: block;
    margin-bottom: 10px;
    color: #666666;
    font-size: 12px;
    font-weight: 500;
}

.koru-talep-field label span {
    color: var(--cr-orange1);
}

.koru-talep-field input,
.koru-talep-field select,
.koru-talep-field textarea {
    display: block;
    width: 100%;
    min-height: 45px;
    padding: 0 0 12px;
    border: 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.2);
    border-radius: 0;
    outline: 0;
    background: transparent;
    color: #171717;
    font-family: "Sora", sans-serif;
    font-size: 14px;
    line-height: 1.6;
    box-shadow: none;
    transition: border-color 0.35s ease;
}

.koru-talep-field input::placeholder,
.koru-talep-field textarea::placeholder {
    color: #aaaaaa;
}

.koru-talep-field select {
    cursor: pointer;
}

.koru-talep-field textarea {
    min-height: 125px;
    padding-top: 4px;
    resize: none;
}

.koru-talep-field input:focus,
.koru-talep-field select:focus,
.koru-talep-field textarea:focus {
    border-color: var(--cr-orange1);
    outline: 0;
    box-shadow: none;
}

.koru-talep-message-field {
    margin-bottom: 26px;
}

.koru-talep-choice-area {
    margin-bottom: 31px;
    padding: 24px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #f8f6f2;
}

.koru-talep-choice-title {
    display: block;
    margin-bottom: 17px;
    color: #555555;
    font-size: 12px;
    font-weight: 600;
}

.koru-talep-choice-list {
    display: flex;
    align-items: stretch;
    gap: 12px;
}

.koru-talep-choice {
    position: relative;
    flex: 1;
    display: block;
    margin: 0;
    cursor: pointer;
}

.koru-talep-choice-input {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 1px !important;
    min-width: 1px !important;
    height: 1px !important;
    min-height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 0 !important;
    visibility: visible !important;
    overflow: hidden !important;
    pointer-events: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.koru-talep-choice-card {
    position: relative;
    min-height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 14px 16px 44px;
    border: 1px solid rgba(17, 17, 17, 0.15);
    background: #ffffff;
    color: #303030;
    transition:
        border-color 0.35s ease,
        background-color 0.35s ease,
        box-shadow 0.35s ease,
        transform 0.35s ease;
}

.koru-talep-choice-circle {
    position: absolute;
    top: 50%;
    left: 16px;
    width: 20px;
    height: 20px;
    border: 2px solid rgba(17, 17, 17, 0.3);
    border-radius: 50%;
    background: #ffffff;
    transform: translateY(-50%);
    transition:
        border-color 0.3s ease,
        background-color 0.3s ease,
        box-shadow 0.3s ease;
}

.koru-talep-choice-circle::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #000;
    opacity: 0;
    transform: translate(-50%, -50%) scale(0);
    transition:
        opacity 0.25s ease,
        transform 0.25s ease;
}

.koru-talep-choice-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #303030;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
}

.koru-talep-choice-content i {
    color: var(--cr-orange1);
    font-size: 15px;
}

.koru-talep-choice:hover .koru-talep-choice-card {
    border-color: rgba(255, 83, 46, 0.65);
    transform: translateY(-2px);
}

.koru-talep-choice-input:checked + .koru-talep-choice-card {
    border-color: var(--cr-orange1) !important;
    background: rgba(255, 83, 46, 0.08) !important;
    box-shadow: inset 0 0 0 1px var(--cr-orange1) !important;
}

.koru-talep-choice-input:checked + .koru-talep-choice-card .koru-talep-choice-circle {
    border-color: var(--cr-orange1) !important;
}

.koru-talep-choice-input:checked + .koru-talep-choice-card .koru-talep-choice-circle::after {
    opacity: 1 !important;
    transform: translate(-50%, -50%) scale(1) !important;
}

.koru-talep-choice-input:focus + .koru-talep-choice-card {
    border-color: var(--cr-orange1);
    box-shadow: 0 0 0 4px rgba(255, 83, 46, 0.12);
}

.koru-talep-kvkk {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin: 0 0 31px;
    padding: 18px 19px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #f8f6f2;
    cursor: pointer;
}

.koru-talep-kvkk-input {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 1px !important;
    min-width: 1px !important;
    height: 1px !important;
    min-height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 0 !important;
    visibility: visible !important;
    overflow: hidden !important;
    pointer-events: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.koru-talep-kvkk-box {
    position: relative;
    width: 23px;
    height: 23px;
    flex: 0 0 23px;
    margin-top: 1px;
    border: 2px solid rgba(17, 17, 17, 0.28);
    background: #ffffff;
    transition:
        border-color 0.3s ease,
        background-color 0.3s ease,
        box-shadow 0.3s ease;
}

.koru-talep-kvkk-box::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 7px;
    width: 6px;
    height: 12px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    opacity: 0;
    transform: rotate(45deg) scale(0);
    transform-origin: center;
    transition:
        opacity 0.25s ease,
        transform 0.25s ease;
}

.koru-talep-kvkk-text {
    display: block;
    flex: 1;
    color: #777777;
    font-size: 11px;
    line-height: 1.7;
}

.koru-talep-kvkk-text a {
    color: #171717;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.3s ease;
}

.koru-talep-kvkk-text a:hover {
    color: var(--cr-orange1);
}

.koru-talep-kvkk:hover .koru-talep-kvkk-box {
    border-color: var(--cr-orange1);
}

.koru-talep-kvkk-input:checked + .koru-talep-kvkk-box {
    border-color: var(--cr-orange1) !important;
    background: var(--cr-orange1) !important;
}

.koru-talep-kvkk-input:checked + .koru-talep-kvkk-box::after {
    opacity: 1 !important;
    transform: rotate(45deg) scale(1) !important;
}

.koru-talep-kvkk-input:focus + .koru-talep-kvkk-box {
    border-color: var(--cr-orange1);
    box-shadow: 0 0 0 4px rgba(255, 83, 46, 0.12);
}

.koru-talep-submit {
    min-width: 255px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 11px 11px 11px 24px;
    border: 1px solid #171717;
    border-radius: 0;
    outline: 0;
    background: #171717;
    color: #ffffff !important;
    font-family: "Sora", sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-talep-submit-text {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    transition:
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        -webkit-text-fill-color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-talep-submit-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    color: #171717 !important;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-talep-submit-icon i {
    color: #171717 !important;
    font-size: 14px;
}

.koru-talep-submit:hover,
.koru-talep-submit:focus {
    border-color: var(--cr-orange1) !important;
    background: var(--cr-orange1) !important;
    color: #171717 !important;
}

.koru-talep-submit:hover .koru-talep-submit-text,
.koru-talep-submit:focus .koru-talep-submit-text {
    color: #171717 !important;
    -webkit-text-fill-color: #171717 !important;
}

.koru-talep-submit:hover .koru-talep-submit-icon,
.koru-talep-submit:focus .koru-talep-submit-icon {
    background: #ffffff !important;
    color: #171717 !important;
    transform: rotate(45deg);
}

.koru-talep-submit:hover .koru-talep-submit-icon i,
.koru-talep-submit:focus .koru-talep-submit-icon i {
    color: #171717 !important;
}

.koru-talep-submit:active {
    transform: translateY(1px);
}

.koru-talep-alert {
    position: relative;
    z-index: 5;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 28px;
    padding: 17px 19px;
    font-size: 13px;
    line-height: 1.6;
}

.koru-talep-alert i {
    margin-top: 2px;
    font-size: 18px;
}

.koru-talep-alert-success {
    border: 1px solid rgba(34, 143, 81, 0.22);
    background: rgba(34, 143, 81, 0.08);
    color: #187943;
}

.koru-talep-alert-error {
    border: 1px solid rgba(202, 47, 47, 0.22);
    background: rgba(202, 47, 47, 0.08);
    color: #ad2525;
}

.koru-talep-decoration {
    position: absolute;
    right: -28px;
    bottom: -45px;
    z-index: 1;
    color: rgba(17, 17, 17, 0.025);
    font-size: 245px;
    font-weight: 400;
    line-height: 0.8;
    letter-spacing: -15px;
    pointer-events: none;
}

.koru-talep-spam-field {
    position: absolute;
    top: -9999px;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

@media screen and (max-width: 1199px) {
    .koru-talep-intro {
        padding: 48px 38px 40px;
    }

    .koru-talep-form-panel {
        padding: 48px 42px;
    }

    .koru-talep-intro h2 {
        font-size: 57px;
    }
}

@media screen and (max-width: 991px) {
    .koru-talep-page {
        padding: 90px 0;
    }

    .koru-talep-intro,
    .koru-talep-form-panel {
        min-height: auto;
    }
}

@media screen and (max-width: 767px) {
    .koru-talep-page {
        padding: 65px 0;
    }

    .koru-talep-intro {
        padding: 38px 25px 35px;
    }

    .koru-talep-intro h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-talep-process {
        margin-top: 40px;
    }

    .koru-talep-process-item {
        gap: 14px;
    }

    .koru-talep-form-panel {
        padding: 38px 24px;
    }

    .koru-talep-form-heading h2 {
        font-size: 39px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-talep-choice-area {
        padding: 20px;
    }

    .koru-talep-choice-list {
        flex-direction: column;
    }

    .koru-talep-choice-card {
        justify-content: flex-start;
    }

    .koru-talep-choice-content {
        justify-content: flex-start;
    }

    .koru-talep-submit {
        width: 100%;
    }
}

.koru-gallery-page {
    position: relative;
    overflow: hidden;
    padding: 110px 0 120px;
    background: #f5f3ef;
}

.koru-gallery-page::before {
    content: "";
    position: absolute;
    top: -260px;
    right: -260px;
    width: 580px;
    height: 580px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-gallery-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 58px;
}

.koru-gallery-label {
    display: block;
    margin-bottom: 16px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-gallery-heading h2 {
    max-width: 850px;
    margin: 0;
    color: #171717;
    font-size: clamp(48px, 5.5vw, 82px);
    font-weight: 500;
    line-height: 0.96;
    letter-spacing: -3px;
}

.koru-gallery-heading-info {
    max-width: 420px;
    margin-left: auto;
}

.koru-gallery-heading-info > p {
    margin: 0 0 25px;
    color: #747474;
    font-size: 14px;
    line-height: 1.8;
}

.koru-gallery-counter {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-top: 20px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-gallery-counter-number {
    color: var(--cr-orange1);
    font-size: 47px;
    font-weight: 500;
    line-height: 1;
}

.koru-gallery-counter-text {
    max-width: 75px;
    color: #555555;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
}

.koru-gallery-list {
    position: relative;
    z-index: 2;
}

.koru-gallery-card {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #171717;
}

.koru-gallery-card-feature,
.koru-gallery-card-side {
    height: 580px;
}

.koru-gallery-card-standard {
    height: 390px;
}

.koru-gallery-link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.koru-gallery-link img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
    transform: scale(1);
    transition: transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-gallery-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.04) 35%,
            rgba(0, 0, 0, 0.62) 100%
        );
    opacity: 0.75;
    transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1);
    pointer-events: none;
}

.koru-gallery-index {
    position: absolute;
    top: 24px;
    left: 26px;
    z-index: 3;
    color: #ffffff;
    font-size: 25px;
    font-weight: 500;
    line-height: 1;
}

.koru-gallery-index::after {
    content: "";
    display: block;
    width: 27px;
    height: 2px;
    margin-top: 9px;
    background: var(--cr-orange1);
}

.koru-gallery-view {
    position: absolute;
    right: 24px;
    bottom: 24px;
    left: 26px;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}

.koru-gallery-view-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.28);
    backdrop-filter: blur(8px);
    color: #ffffff;
    font-size: 15px;
    transition:
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-gallery-card:hover .koru-gallery-link img {
    transform: scale(1.055);
}

.koru-gallery-card:hover .koru-gallery-overlay {
    opacity: 1;
}

.koru-gallery-card:hover .koru-gallery-view-icon {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    transform: rotate(45deg);
}

.koru-gallery-empty {
    position: relative;
    z-index: 2;
    padding: 80px 30px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    text-align: center;
}

.koru-gallery-empty-icon {
    width: 75px;
    height: 75px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #ffffff;
    font-size: 25px;
}

.koru-gallery-empty h3 {
    margin: 0 0 12px;
    color: #171717;
    font-size: 38px;
    font-weight: 500;
    line-height: 1;
}

.koru-gallery-empty p {
    max-width: 450px;
    margin: 0 auto;
    color: #777777;
    font-size: 14px;
    line-height: 1.75;
}

.koru-gallery-footer {
    position: relative;
    z-index: 2;
    min-height: 270px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 45px;
    margin-top: 75px;
    padding: 48px 55px;
    overflow: hidden;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.92) 0%,
            rgba(15, 15, 15, 0.72) 58%,
            rgba(15, 15, 15, 0.48) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-gallery-footer-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
}

.koru-gallery-footer-content > span {
    display: block;
    margin-bottom: 13px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-gallery-footer-content h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(40px, 4.5vw, 65px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-gallery-footer-button {
    position: relative;
    z-index: 3;
    min-width: 245px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 11px 11px 11px 23px;
    background: #ffffff;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-gallery-footer-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 14px;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-gallery-footer-button:hover {
    background: var(--cr-orange1);
    color: #fff;
    border : 1px solid #fff;
}

.koru-gallery-footer-button:hover .koru-gallery-footer-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

.fancybox__container {
    z-index: 999999;
}

.fancybox__backdrop {
    background: rgba(10, 10, 10, 0.95);
}

.fancybox__caption {
    font-family: "Sora", sans-serif;
    font-size: 13px;
}

@media screen and (max-width: 1199px) {
    .koru-gallery-card-feature,
    .koru-gallery-card-side {
        height: 510px;
    }

    .koru-gallery-card-standard {
        height: 350px;
    }

    .koru-gallery-footer {
        padding: 45px;
    }
}

@media screen and (max-width: 991px) {
    .koru-gallery-page {
        padding: 90px 0;
    }

    .koru-gallery-heading {
        margin-bottom: 45px;
    }

    .koru-gallery-heading h2 {
        margin-bottom: 28px;
        font-size: 62px;
    }

    .koru-gallery-heading-info {
        max-width: 650px;
        margin-left: 0;
    }

    .koru-gallery-card-feature,
    .koru-gallery-card-side {
        height: 450px;
    }

    .koru-gallery-card-standard {
        height: 340px;
    }

    .koru-gallery-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-gallery-page {
        padding: 65px 0;
    }

    .koru-gallery-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-gallery-card-feature,
    .koru-gallery-card-side,
    .koru-gallery-card-standard {
        height: 365px;
    }

    .koru-gallery-index {
        top: 20px;
        left: 20px;
    }

    .koru-gallery-view {
        right: 20px;
        bottom: 20px;
        left: 20px;
    }

    .koru-gallery-view-icon {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
    }

    .koru-gallery-footer {
        min-height: auto;
        margin-top: 50px;
        padding: 36px 25px;
    }

    .koru-gallery-footer-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-gallery-footer-button {
        width: 100%;
    }
}

.koru-about-intro {
    position: relative;
    overflow: hidden;
    padding: 115px 0 125px;
    background: #f5f3ef;
}

.koru-about-intro::before {
    content: "";
    position: absolute;
    top: -280px;
    right: -280px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-about-visual {
    position: relative;
    padding-right: 45px;
    padding-bottom: 45px;
}

.koru-about-image {
    position: relative;
    height: 690px;
    overflow: hidden;
    background: #dedbd5;
}

.koru-about-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(17, 17, 17, 0) 55%,
        rgba(17, 17, 17, 0.22) 100%
    );
    pointer-events: none;
}

.koru-about-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

.koru-about-image-number {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
    width: 190px;
    min-height: 175px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 25px 28px;
    background: var(--cr-orange1);
    color: #171717;
}

.koru-about-image-number strong {
    display: block;
    margin-bottom: 5px;
    font-size: 74px;
    font-weight: 500;
    line-height: 0.85;
    letter-spacing: -4px;
}

.koru-about-image-number span {
    max-width: 90px;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.45;
}

.koru-about-image-line {
    position: absolute;
    top: 45px;
    right: 16px;
    width: 1px;
    height: 180px;
    background: rgba(17, 17, 17, 0.18);
}

.koru-about-image-line::before {
    content: "";
    position: absolute;
    top: 0;
    left: -4px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--cr-orange1);
}

.koru-about-content {
    position: relative;
    max-width: 650px;
    padding-left: 35px;
}

.koru-about-label {
    display: block;
    margin-bottom: 18px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-about-content > h2 {
    max-width: 650px;
    margin: 0 0 30px;
    color: #171717;
    font-size: clamp(52px, 4vw, 78px);
    font-weight: 500;
    line-height: 0.95;
    letter-spacing: -3px;
}

.koru-about-richtext {
    color: #666666;
    font-size: 14px;
    line-height: 1.85;
}

.koru-about-richtext p {
    margin: 0 0 19px;
    color: #666666;
    font-size: 14px;
    line-height: 1.85;
}

.koru-about-richtext p:last-child {
    margin-bottom: 0;
}

.koru-about-richtext strong,
.koru-about-richtext b {
    color: #171717;
    font-weight: 600;
}

.koru-about-richtext ul,
.koru-about-richtext ol {
    margin: 20px 0;
    padding-left: 20px;
}

.koru-about-richtext li {
    margin-bottom: 8px;
}

.koru-about-richtext li::marker {
    color: var(--cr-orange1);
}

.koru-about-richtext img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 25px 0;
}

.koru-about-highlights {
    margin-top: 38px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-about-highlight {
    display: flex;
    align-items: flex-start;
    gap: 17px;
    padding: 21px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-about-highlight-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(17, 17, 17, 0.14);
    border-radius: 50%;
    background: #ffffff;
    color: var(--cr-orange1);
    font-size: 17px;
}

.koru-about-highlight strong {
    display: block;
    margin-bottom: 5px;
    color: #171717;
    font-size: 13px;
    font-weight: 600;
}

.koru-about-highlight p {
    margin: 0;
    color: #777777;
    font-size: 12px;
    line-height: 1.65;
}

.koru-about-button {
    min-width: 270px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 37px;
    padding: 11px 11px 11px 23px;
    background: #171717;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-about-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    color: #171717;
    font-size: 14px;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-about-button:hover {
    background: var(--cr-orange1);
    color: #171717;
    border: 1px solid #171717;
}

.koru-about-button:hover .koru-about-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

.koru-about-purpose {
    position: relative;
    overflow: hidden;
    padding: 120px 0;
    background: #171717;
}

.koru-about-purpose::before {
    content: "66";
    position: absolute;
    top: -70px;
    right: -30px;
    color: rgba(255, 255, 255, 0.025);
    font-family: "Akshar", sans-serif;
    font-size: 440px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -30px;
    pointer-events: none;
}

.koru-about-purpose-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 60px;
}

.koru-about-purpose-heading span {
    display: block;
    margin-bottom: 16px;
    color: #f1f1f1;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-about-purpose-heading h2 {
    max-width: 880px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(48px, 5.2vw, 78px);
    font-weight: 500;
    line-height: 0.96;
    letter-spacing: -3px;
}

.koru-about-purpose-heading p {
    max-width: 410px;
    margin: 0 0 5px auto;
    color: rgba(255, 255, 255, 0.58);
    font-size: 14px;
    line-height: 1.8;
}

.koru-about-purpose-box {
    position: relative;
    min-height: 480px;
    height: 100%;
    overflow: hidden;
    padding: 45px;
    border: 1px solid rgba(255, 255, 255, 0.13);
}

.koru-about-mission {
    background: #222222;
}

.koru-about-vision {
    background: var(--cr-orange1);
}

.koru-about-purpose-number {
    position: absolute;
    top: 25px;
    right: 30px;
    color: rgba(255, 255, 255, 0.08);
    font-size: 130px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -8px;
    pointer-events: none;
}

.koru-about-vision .koru-about-purpose-number {
    color: rgba(17, 17, 17, 0.08);
}

.koru-about-purpose-icon {
    position: relative;
    z-index: 2;
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 75px;
    border: 1px solid rgba(255, 255, 255, 0.26);
    border-radius: 50%;
    color: rgba(255, 255, 255, 0.26);
    font-size: 22px;
}

.koru-about-purpose-content {
    position: relative;
    z-index: 2;
}

.koru-about-purpose-content > span {
    display: block;
    margin-bottom: 14px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-about-vision .koru-about-purpose-content > span {
    color: #ffffff;
}

.koru-about-purpose-content h3 {
    max-width: 650px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(37px, 4vw, 55px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -2px;
}

.koru-about-vision .koru-about-purpose-content h3 {
    color: #fff;
}

.koru-about-purpose-text {
    max-width: 650px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 13px;
    line-height: 1.8;
}

.koru-about-purpose-text p {
    margin: 0 0 16px;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}

.koru-about-purpose-text p:last-child {
    margin-bottom: 0;
}


.koru-about-purpose-text strong,
.koru-about-purpose-text b {
    color: #ffffff;
    font-weight: 600;
}


.koru-about-purpose-text ul,
.koru-about-purpose-text ol {
    margin: 18px 0;
    padding-left: 20px;
}

.koru-about-purpose-text li {
    margin-bottom: 7px;
}

.koru-about-numbers {
    padding: 90px 0;
    background: #ffffff;
}

.koru-about-numbers-inner {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 25px;
}

.koru-about-number-item {
    flex: 1;
    text-align: center;
}

.koru-about-number-item strong {
    display: block;
    margin-bottom: 10px;
    color: #171717;
    font-size: clamp(52px, 5vw, 78px);
    font-weight: 500;
    line-height: 0.9;
    letter-spacing: -3px;
}

.koru-about-number-item span {
    color: #777777;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.5;
}

.koru-about-number-divider {
    width: 1px;
    background: rgba(17, 17, 17, 0.12);
}

.koru-about-cta {
    padding: 0 0 120px;
    background: #ffffff;
}

.koru-about-cta-inner {
    position: relative;
    min-height: 315px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    overflow: hidden;
    padding: 55px 60px;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.92) 0%,
            rgba(15, 15, 15, 0.73) 58%,
            rgba(15, 15, 15, 0.4) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-about-cta-content {
    position: relative;
    z-index: 2;
    max-width: 750px;
}

.koru-about-cta-content > span {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-about-cta-content h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(42px, 4.7vw, 67px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-about-cta-content p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 13px;
    line-height: 1.75;
}

.koru-about-cta-button {
    position: relative;
    z-index: 3;
    min-width: 235px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 23px;
    padding: 11px 11px 11px 22px;
    background: #ffffff;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-about-cta-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 14px;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-about-cta-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-about-cta-button:hover .koru-about-cta-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

@media screen and (max-width: 1199px) {
    .koru-about-visual {
        padding-right: 35px;
    }

    .koru-about-image {
        height: 620px;
    }

    .koru-about-content {
        padding-left: 20px;
    }

    .koru-about-purpose-box {
        padding: 38px;
    }

    .koru-about-cta-inner {
        padding: 50px;
    }
}

@media screen and (max-width: 991px) {
    .koru-about-intro {
        padding: 90px 0;
    }

    .koru-about-content {
        max-width: 780px;
        padding-left: 0;
    }

    .koru-about-purpose {
        padding: 90px 0;
    }

    .koru-about-purpose-heading h2 {
        margin-bottom: 25px;
        font-size: 60px;
    }

    .koru-about-purpose-heading p {
        max-width: 650px;
        margin-left: 0;
    }

    .koru-about-numbers-inner {
        flex-wrap: wrap;
    }

    .koru-about-number-item {
        flex: 0 0 calc(50% - 15px);
        padding: 25px;
    }

    .koru-about-number-divider {
        display: none;
    }

    .koru-about-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-about-intro {
        padding: 65px 0;
    }

    .koru-about-visual {
        padding-right: 20px;
        padding-bottom: 35px;
    }

    .koru-about-image {
        height: 480px;
    }

    .koru-about-image-number {
        width: 155px;
        min-height: 140px;
        padding: 21px;
    }

    .koru-about-image-number strong {
        font-size: 60px;
    }

    .koru-about-image-line {
        display: none;
    }

    .koru-about-content > h2 {
        font-size: 44px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-about-button {
        width: 100%;
    }

    .koru-about-purpose {
        padding: 65px 0;
    }

    .koru-about-purpose-heading {
        margin-bottom: 40px;
    }

    .koru-about-purpose-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-about-purpose-box {
        min-height: auto;
        padding: 32px 25px;
    }

    .koru-about-purpose-icon {
        margin-bottom: 55px;
    }

    .koru-about-purpose-content h3 {
        font-size: 37px;
        letter-spacing: -1px;
    }

    .koru-about-numbers {
        padding: 65px 0;
    }

    .koru-about-number-item {
        flex: 0 0 100%;
        padding: 22px;
        border-bottom: 1px solid rgba(17, 17, 17, 0.1);
    }

    .koru-about-number-item:last-child {
        border-bottom: 0;
    }

    .koru-about-cta {
        padding-bottom: 65px;
    }

    .koru-about-cta-inner {
        min-height: auto;
        padding: 38px 25px;
    }

    .koru-about-cta-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-about-cta-button {
        width: 100%;
    }
}

.koru-video-page {
    position: relative;
    overflow: hidden;
    padding: 110px 0 120px;
    background: #f5f3ef;
}

.koru-video-page::before {
    content: "";
    position: absolute;
    top: -280px;
    right: -280px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-video-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 58px;
}

.koru-video-heading-label {
    display: block;
    margin-bottom: 16px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-video-heading h2 {
    max-width: 820px;
    margin: 0;
    color: #171717;
    font-size: clamp(47px, 5.2vw, 78px);
    font-weight: 500;
    line-height: 0.97;
    letter-spacing: -3px;
}

.koru-video-heading-info {
    max-width: 420px;
    margin-left: auto;
}

.koru-video-heading-info > p {
    margin: 0 0 24px;
    color: #747474;
    font-size: 14px;
    line-height: 1.8;
}

.koru-video-count {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-top: 20px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-video-count strong {
    color: var(--cr-orange1);
    font-size: 47px;
    font-weight: 500;
    line-height: 1;
}

.koru-video-count span {
    max-width: 90px;
    color: #555555;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.45;
}

.koru-video-card {
    position: relative;
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    transition:
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-video-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 25px 65px rgba(17, 17, 17, 0.1);
}

.koru-video-media {
    position: relative;
    display: block;
    height: 290px;
    overflow: hidden;
    background: #171717;
}

.koru-video-media img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
    transform: scale(1);
    transition: transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-video-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.08) 20%,
            rgba(0, 0, 0, 0.58) 100%
        );
    transition: background-color 0.7s ease;
    pointer-events: none;
}

.koru-video-index {
    position: absolute;
    top: 22px;
    left: 23px;
    z-index: 3;
    color: #ffffff;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
}

.koru-video-index::after {
    content: "";
    display: block;
    width: 26px;
    height: 2px;
    margin-top: 8px;
    background: var(--cr-orange1);
}

.koru-video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 4;
    width: 78px;
    height: 78px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.35);
    backdrop-filter: blur(10px);
    color: #ffffff;
    font-size: 18px;
    transform: translate(-50%, -50%);
    transition:
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-video-play i {
    margin-left: 4px;
}

.koru-video-watch {
    position: absolute;
    right: 22px;
    bottom: 20px;
    z-index: 3;
    color: rgba(255, 255, 255, 0.82);
    font-size: 11px;
    font-weight: 600;
}

.koru-video-card:hover .koru-video-media img {
    transform: scale(1.06);
}

.koru-video-card:hover .koru-video-play {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
    transform: translate(-50%, -50%) scale(1.08);
}

.koru-video-content {
    min-height: 300px;
    display: flex;
    flex-direction: column;
    padding: 29px 29px 31px;
}

.koru-video-content-label {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;
}

.koru-video-content h3 {
    margin: 0 0 16px;
    color: #171717;
    font-size: clamp(29px, 2.5vw, 38px);
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: -1px;
}

.koru-video-content h3 a {
    color: #171717;
    transition: color 0.35s ease;
}

.koru-video-content h3 a:hover {
    color: var(--cr-orange1);
}

.koru-video-content p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 25px;
    color: #777777;
    font-size: 13px;
    line-height: 1.75;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.koru-video-link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 14px;
    margin-top: auto;
    padding-bottom: 6px;
    border-bottom: 1px solid #171717;
    color: #171717;
    font-size: 11px;
    font-weight: 600;
    transition:
        gap 0.4s ease,
        color 0.4s ease,
        border-color 0.4s ease;
}

.koru-video-link:hover {
    gap: 21px;
    border-color: var(--cr-orange1);
    color: var(--cr-orange1);
}

.koru-video-empty {
    position: relative;
    z-index: 2;
    padding: 80px 30px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    text-align: center;
}

.koru-video-empty-icon {
    width: 76px;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 25px;
}

.koru-video-empty h3 {
    margin: 0 0 12px;
    color: #171717;
    font-size: 38px;
    font-weight: 500;
    line-height: 1;
}

.koru-video-empty p {
    max-width: 460px;
    margin: 0 auto;
    color: #777777;
    font-size: 14px;
    line-height: 1.75;
}

.koru-video-cta {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    margin-top: 75px;
    overflow: hidden;
    padding: 52px 56px;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.92) 0%,
            rgba(15, 15, 15, 0.72) 58%,
            rgba(15, 15, 15, 0.4) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-video-cta-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
}

.koru-video-cta-content > span {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-video-cta-content h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(40px, 4.5vw, 64px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-video-cta-content p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 13px;
    line-height: 1.75;
}

.koru-video-cta-button {
    position: relative;
    z-index: 3;
    min-width: 240px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 11px 11px 11px 22px;
    background: #ffffff;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-video-cta-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 14px;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-video-cta-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-video-cta-button:hover .koru-video-cta-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

.fancybox__container {
    z-index: 999999;
}

.fancybox__backdrop {
    background: rgba(8, 8, 8, 0.96);
}

.fancybox__content {
    background: #000000;
}

.fancybox__iframe {
    background: #000000;
}

@media screen and (max-width: 1199px) {
    .koru-video-media {
        height: 260px;
    }

    .koru-video-content {
        min-height: 315px;
        padding: 26px;
    }

    .koru-video-cta {
        padding: 46px;
    }
}

@media screen and (max-width: 991px) {
    .koru-video-page {
        padding: 90px 0;
    }

    .koru-video-heading {
        margin-bottom: 45px;
    }

    .koru-video-heading h2 {
        margin-bottom: 28px;
        font-size: 60px;
    }

    .koru-video-heading-info {
        max-width: 650px;
        margin-left: 0;
    }

    .koru-video-media {
        height: 290px;
    }

    .koru-video-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-video-page {
        padding: 65px 0;
    }

    .koru-video-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-video-media {
        height: 250px;
    }

    .koru-video-play {
        width: 68px;
        height: 68px;
    }

    .koru-video-content {
        min-height: auto;
        padding: 25px;
    }

    .koru-video-content h3 {
        font-size: 31px;
    }

    .koru-video-cta {
        min-height: auto;
        margin-top: 50px;
        padding: 37px 25px;
    }

    .koru-video-cta-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-video-cta-button {
        width: 100%;
    }
}


.koru-tour360-page {
    position: relative;
    overflow: hidden;
    padding: 110px 0 120px;
    background: #f5f3ef;
}

.koru-tour360-page::before {
    content: "";
    position: absolute;
    top: -280px;
    right: -280px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-tour360-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 55px;
}

.koru-tour360-label {
    display: block;
    margin-bottom: 16px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-tour360-heading h2 {
    max-width: 850px;
    margin: 0;
    color: #171717;
    font-size: clamp(48px, 5.3vw, 80px);
    font-weight: 500;
    line-height: 0.96;
    letter-spacing: -3px;
}

.koru-tour360-heading-content {
    max-width: 430px;
    margin-left: auto;
}

.koru-tour360-heading-content > p {
    margin: 0 0 23px;
    color: #747474;
    font-size: 14px;
    line-height: 1.8;
}

.koru-tour360-heading-tip {
    display: flex;
    align-items: center;
    gap: 14px;
    padding-top: 19px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-tour360-heading-tip > span {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 15px;
}

.koru-tour360-heading-tip p {
    margin: 0;
    color: #555555;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.55;
}

.koru-tour360-stage {
    position: relative;
    z-index: 10;
    width: 100%;
    height: 720px;
    overflow: hidden;
    background: #111111;
}

.koru-tour360-viewer {
    width: 100%;
    height: 100%;
    background: #111111;
}

.koru-tour360-viewer .pnlm-container {
    font-family: "Sora", sans-serif;
}

.koru-tour360-viewer .pnlm-render-container {
    cursor: grab;
}

.koru-tour360-viewer .pnlm-render-container:active {
    cursor: grabbing;
}

.koru-tour360-loading {
    position: absolute;
    inset: 0;
    z-index: 50;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: #171717;
    color: #ffffff;
    opacity: 1;
    transition: opacity 0.5s ease;
}

.koru-tour360-loading-hidden {
    opacity: 0;
    pointer-events: none;
}

.koru-tour360-loading-icon {
    position: relative;
    width: 58px;
    height: 58px;
    margin-bottom: 20px;
    border: 2px solid rgba(255, 255, 255, 0.14);
    border-top-color: var(--cr-orange1);
    border-radius: 50%;
    animation: koruTour360Loading 0.8s linear infinite;
}

.koru-tour360-loading strong {
    margin-bottom: 7px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
}

.koru-tour360-loading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.52);
    font-size: 11px;
}

@keyframes koruTour360Loading {
    to {
        transform: rotate(360deg);
    }
}

.koru-tour360-error {
    position: absolute;
    inset: 0;
    z-index: 49;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 30px;
    background: #171717;
    color: #ffffff;
    text-align: center;
}

.koru-tour360-error-visible {
    display: flex;
}

.koru-tour360-error > span {
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 24px;
}

.koru-tour360-error strong {
    margin-bottom: 8px;
    font-size: 16px;
    font-weight: 600;
}

.koru-tour360-error p {
    max-width: 500px;
    margin: 0;
    color: rgba(255, 255, 255, 0.55);
    font-size: 11px;
    line-height: 1.7;
}

.koru-tour360-topbar {
    position: absolute;
    top: 25px;
    right: 25px;
    left: 25px;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    pointer-events: none;
}

.koru-tour360-status {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    padding: 10px 16px 10px 10px;
    background: rgba(17, 17, 17, 0.72);
    backdrop-filter: blur(12px);
    color: #ffffff;
    pointer-events: auto;
}

.koru-tour360-status-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 16px;
}

.koru-tour360-status-text {
    display: flex;
    flex-direction: column;
}

.koru-tour360-status-text strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}

.koru-tour360-status-text small {
    color: rgba(255, 255, 255, 0.5);
    font-size: 9px;
    line-height: 1.4;
}

.koru-tour360-top-fullscreen {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 19px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    background: rgba(17, 17, 17, 0.72);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-family: "Sora", sans-serif;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    pointer-events: auto;
    transition:
        border-color 0.5s ease,
        background-color 0.5s ease,
        color 0.5s ease;
}

.koru-tour360-top-fullscreen:hover {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
}

.koru-tour360-guide {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 25;
    min-width: 260px;
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 24px 26px;
    background: rgba(17, 17, 17, 0.68);
    backdrop-filter: blur(12px);
    color: #ffffff;
    text-align: center;
    transform: translate(-50%, -50%);
    transition:
        opacity 0.5s ease,
        visibility 0.5s ease,
        transform 0.5s ease;
    pointer-events: none;
}

.koru-tour360-guide-hidden {
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, -45%);
}

.koru-tour360-guide-icon {
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 50%;
    color: var(--cr-orange1);
    font-size: 18px;
    animation: koruTour360Guide 1.5s ease-in-out infinite;
}

.koru-tour360-guide strong {
    margin-bottom: 6px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}

.koru-tour360-guide p {
    max-width: 220px;
    margin: 0;
    color: rgba(255, 255, 255, 0.55);
    font-size: 9px;
    line-height: 1.55;
}

@keyframes koruTour360Guide {
    0%,
    100% {
        transform: translateX(-5px);
    }

    50% {
        transform: translateX(5px);
    }
}

.koru-tour360-location {
    position: absolute;
    left: 25px;
    bottom: 25px;
    z-index: 27;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 12px 15px;
    background: rgba(17, 17, 17, 0.7);
    backdrop-filter: blur(12px);
    color: #ffffff;
    pointer-events: none;
}

.koru-tour360-location-dot {
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    border-radius: 50%;
    background: var(--cr-orange1);
    box-shadow: 0 0 0 6px rgba(255, 83, 46, 0.16);
}

.koru-tour360-location > span:last-child {
    display: flex;
    flex-direction: column;
}

.koru-tour360-location strong {
    margin-bottom: 2px;
    color: #ffffff;
    font-size: 10px;
    font-weight: 600;
}

.koru-tour360-location small {
    color: rgba(255, 255, 255, 0.5);
    font-size: 8px;
}

.koru-tour360-controls {
    position: absolute;
    right: 25px;
    bottom: 25px;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    pointer-events: none;
}

.koru-tour360-control {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 17px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    background: rgba(17, 17, 17, 0.72);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-family: "Sora", sans-serif;
    font-size: 10px;
    font-weight: 600;
    cursor: pointer;
    pointer-events: auto;
    transition:
        border-color 0.45s ease,
        background-color 0.45s ease,
        color 0.45s ease,
        transform 0.45s ease;
}

.koru-tour360-control i {
    font-size: 14px;
}

.koru-tour360-control:hover {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
    transform: translateY(-2px);
}

.koru-tour360-control-active {
    border-color: rgba(255, 83, 46, 0.8);
}

.koru-tour360-control-primary {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
}

.koru-tour360-control-primary:hover {
    border-color: #ffffff;
    background: #ffffff;
    color: #171717;
}

.koru-tour360-mobile-message {
    display: none;
}

body.koru-tour360-body-lock {
    overflow: hidden !important;
}

.koru-tour360-fallback-fullscreen {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    width: 100vw !important;
    height: 100vh !important;
}

.koru-tour360-stage:fullscreen,
.koru-tour360-stage:-webkit-full-screen {
    width: 100vw;
    height: 100vh;
}

.koru-tour360-stage:fullscreen .koru-tour360-viewer,
.koru-tour360-stage:-webkit-full-screen .koru-tour360-viewer,
.koru-tour360-fallback-fullscreen .koru-tour360-viewer {
    width: 100%;
    height: 100%;
}

.koru-tour360-features {
    position: relative;
    z-index: 2;
    padding-top: 35px;
}

.koru-tour360-feature {
    position: relative;
    min-height: 285px;
    height: 100%;
    overflow: hidden;
    padding: 32px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    transition:
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-tour360-feature:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 55px rgba(17, 17, 17, 0.08);
}

.koru-tour360-feature-number {
    position: absolute;
    top: 18px;
    right: 23px;
    color: rgba(17, 17, 17, 0.045);
    font-size: 82px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -5px;
    pointer-events: none;
}

.koru-tour360-feature-icon {
    position: relative;
    z-index: 2;
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 43px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 19px;
}

.koru-tour360-feature h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 13px;
    color: #171717;
    font-size: 31px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -1px;
}

.koru-tour360-feature p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: #777777;
    font-size: 12px;
    line-height: 1.75;
}

.koru-tour360-detail {
    position: relative;
    z-index: 2;
    margin-top: 85px;
    padding: 58px;
    background: #171717;
}

.koru-tour360-detail-content > span {
    display: block;
    margin-bottom: 14px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-tour360-detail-content h2 {
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(43px, 4.5vw, 66px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-tour360-detail-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.58);
    font-size: 13px;
    line-height: 1.8;
}

.koru-tour360-detail-list {
    padding-left: 35px;
}

.koru-tour360-detail-item {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 18px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    color: #ffffff;
    font-size: 12px;
    font-weight: 500;
}

.koru-tour360-detail-item:first-child {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.koru-tour360-detail-item i {
    color: var(--cr-orange1);
    font-size: 17px;
}

.koru-tour360-cta {
    position: relative;
    z-index: 2;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    margin-top: 85px;
    overflow: hidden;
    padding: 52px 56px;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.92) 0%,
            rgba(15, 15, 15, 0.72) 58%,
            rgba(15, 15, 15, 0.4) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-tour360-cta-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
}

.koru-tour360-cta-content > span {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-tour360-cta-content h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(40px, 4.5vw, 64px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-tour360-cta-content p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 13px;
    line-height: 1.75;
}

.koru-tour360-cta-button {
    position: relative;
    z-index: 3;
    min-width: 240px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 11px 11px 11px 22px;
    background: #ffffff;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-tour360-cta-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 14px;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-tour360-cta-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-tour360-cta-button:hover .koru-tour360-cta-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

@media screen and (max-width: 1199px) {
    .koru-tour360-stage {
        height: 650px;
    }

    .koru-tour360-control {
        padding: 0 14px;
    }

    .koru-tour360-location {
        display: none;
    }

    .koru-tour360-detail {
        padding: 48px;
    }

    .koru-tour360-cta {
        padding: 46px;
    }
}

@media screen and (max-width: 991px) {
    .koru-tour360-page {
        padding: 90px 0;
    }

    .koru-tour360-heading {
        margin-bottom: 45px;
    }

    .koru-tour360-heading h2 {
        margin-bottom: 28px;
        font-size: 60px;
    }

    .koru-tour360-heading-content {
        max-width: 650px;
        margin-left: 0;
    }

    .koru-tour360-stage {
        height: 590px;
    }

    .koru-tour360-controls {
        right: 18px;
        left: 18px;
        justify-content: center;
        flex-wrap: wrap;
    }

    .koru-tour360-detail-list {
        margin-top: 35px;
        padding-left: 0;
    }

    .koru-tour360-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-tour360-page {
        padding: 65px 0;
    }

    .koru-tour360-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-tour360-stage {
        height: 540px;
    }

    .koru-tour360-topbar {
        top: 15px;
        right: 15px;
        left: 15px;
    }

    .koru-tour360-status {
        padding: 8px 11px 8px 8px;
    }

    .koru-tour360-status-icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
    }

    .koru-tour360-status-text small {
        display: none;
    }

    .koru-tour360-top-fullscreen {
        min-width: 46px;
        min-height: 46px;
        padding: 0 14px;
    }

    .koru-tour360-top-fullscreen span {
        display: none;
    }

    .koru-tour360-guide {
        min-width: 220px;
        padding: 19px 20px;
    }

    .koru-tour360-controls {
        right: 15px;
        bottom: 15px;
        left: 15px;
        justify-content: flex-start;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .koru-tour360-controls::-webkit-scrollbar {
        display: none;
    }

    .koru-tour360-control {
        min-width: 52px;
        min-height: 52px;
        flex: 0 0 52px;
        padding: 0;
    }

    .koru-tour360-control span {
        display: none;
    }

    .koru-tour360-control-primary {
        min-width: 58px;
        flex-basis: 58px;
    }

    .koru-tour360-mobile-message {
        position: absolute;
        right: 15px;
        bottom: 78px;
        left: 15px;
        z-index: 26;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        padding: 10px 13px;
        background: rgba(17, 17, 17, 0.65);
        backdrop-filter: blur(10px);
        color: rgba(255, 255, 255, 0.72);
        font-size: 9px;
        line-height: 1.4;
        text-align: center;
        pointer-events: none;
    }

    .koru-tour360-mobile-message i {
        color: var(--cr-orange1);
        font-size: 14px;
    }

    .koru-tour360-feature {
        min-height: auto;
        padding: 27px;
    }

    .koru-tour360-feature-icon {
        margin-bottom: 35px;
    }

    .koru-tour360-detail {
        margin-top: 60px;
        padding: 36px 25px;
    }

    .koru-tour360-detail-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-tour360-cta {
        min-height: auto;
        margin-top: 60px;
        padding: 37px 25px;
    }

    .koru-tour360-cta-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-tour360-cta-button {
        width: 100%;
    }

    .koru-tour360-fallback-fullscreen,
    .koru-tour360-stage:fullscreen,
    .koru-tour360-stage:-webkit-full-screen {
        height: 100vh !important;
    }
}

.koru-blogs-page {
    position: relative;
    overflow: hidden;
    padding: 110px 0 120px;
    background: #f5f3ef;
}

.koru-blogs-page::before {
    content: "";
    position: absolute;
    top: -280px;
    right: -280px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-blogs-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 58px;
}

.koru-blogs-label {
    display: block;
    margin-bottom: 16px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-blogs-heading h2 {
    max-width: 880px;
    margin: 0;
    color: #171717;
    font-size: clamp(48px, 5.3vw, 80px);
    font-weight: 500;
    line-height: 0.96;
    letter-spacing: -3px;
}

.koru-blogs-heading-side {
    max-width: 420px;
    margin-left: auto;
}

.koru-blogs-heading-side > p {
    margin: 0 0 24px;
    color: #747474;
    font-size: 14px;
    line-height: 1.8;
}

.koru-blogs-count {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-top: 20px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-blogs-count strong {
    display: block;
    color: var(--cr-orange1);
    font-size: 48px;
    font-weight: 500;
    line-height: 1;
}

.koru-blogs-count span {
    max-width: 90px;
    color: #555555;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.45;
}

.koru-blogs-list {
    position: relative;
    z-index: 2;
}

.koru-blog-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    transition:
        transform 0.65s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 25px 65px rgba(17, 17, 17, 0.1);
}

.koru-blog-image {
    position: relative;
    display: block;
    height: 315px;
    overflow: hidden;
    background: #171717;
}

.koru-blog-card-featured .koru-blog-image {
    height: 510px;
}

.koru-blog-card-side .koru-blog-image {
    height: 345px;
}

.koru-blog-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
    transform: scale(1);
    transition: transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-card:hover .koru-blog-image img {
    transform: scale(1.055);
}

.koru-blog-image-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.04) 35%,
        rgba(0, 0, 0, 0.65) 100%
    );
    pointer-events: none;
}

.koru-blog-category {
    position: absolute;
    left: 24px;
    bottom: 23px;
    z-index: 3;
    padding: 9px 14px;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.3;
}

.koru-blog-order {
    position: absolute;
    top: 23px;
    left: 25px;
    z-index: 3;
    color: #ffffff;
    font-size: 25px;
    font-weight: 500;
    line-height: 1;
}

.koru-blog-order::after {
    content: "";
    display: block;
    width: 27px;
    height: 2px;
    margin-top: 9px;
    background: var(--cr-orange1);
}

.koru-blog-image-button {
    position: absolute;
    top: 22px;
    right: 22px;
    z-index: 3;
    width: 53px;
    height: 53px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.28);
    backdrop-filter: blur(8px);
    color: #ffffff;
    font-size: 15px;
    transition:
        transform 0.75s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.75s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.75s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-card:hover .koru-blog-image-button {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
    transform: rotate(45deg);
}

.koru-blog-body {
    min-height: 315px;
    display: flex;
    flex-direction: column;
    padding: 29px 29px 31px;
}

.koru-blog-card-featured .koru-blog-body {
    min-height: 330px;
    padding: 34px 35px 36px;
}

.koru-blog-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-bottom: 19px;
}

.koru-blog-meta span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #8b8b8b;
    font-size: 10px;
    line-height: 1.5;
}

.koru-blog-meta i {
    color: var(--cr-orange1);
    font-size: 12px;
}

.koru-blog-body h3 {
    margin: 0 0 17px;
    color: #171717;
    font-size: clamp(29px, 2.5vw, 39px);
    font-weight: 500;
    line-height: 1.04;
    letter-spacing: -1px;
}

.koru-blog-card-featured .koru-blog-body h3 {
    max-width: 760px;
    font-size: clamp(38px, 4vw, 58px);
    letter-spacing: -2px;
}

.koru-blog-body h3 a {
    color: #171717;
    transition: color 0.35s ease;
}

.koru-blog-body h3 a:hover {
    color: var(--cr-orange1);
}

.koru-blog-body > p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 27px;
    color: #777777;
    font-size: 13px;
    line-height: 1.75;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.koru-blog-card-featured .koru-blog-body > p {
    max-width: 760px;
    font-size: 14px;
}

.koru-blog-detail-link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 14px;
    margin-top: auto;
    padding-bottom: 6px;
    border-bottom: 1px solid #171717;
    color: #171717;
    font-size: 11px;
    font-weight: 600;
    transition:
        gap 0.4s ease,
        color 0.4s ease,
        border-color 0.4s ease;
}

.koru-blog-detail-link:hover {
    gap: 22px;
    border-color: var(--cr-orange1);
    color: var(--cr-orange1);
}

.koru-blogs-empty {
    position: relative;
    z-index: 2;
    padding: 85px 30px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    text-align: center;
}

.koru-blogs-empty-icon {
    width: 76px;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 25px;
}

.koru-blogs-empty h3 {
    margin: 0 0 12px;
    color: #171717;
    font-size: 39px;
    font-weight: 500;
    line-height: 1;
}

.koru-blogs-empty p {
    max-width: 480px;
    margin: 0 auto;
    color: #777777;
    font-size: 14px;
    line-height: 1.75;
}

.koru-blogs-cta {
    position: relative;
    z-index: 2;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    margin-top: 80px;
    overflow: hidden;
    padding: 52px 56px;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.92) 0%,
            rgba(15, 15, 15, 0.72) 58%,
            rgba(15, 15, 15, 0.42) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-blogs-cta-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
}

.koru-blogs-cta-content > span {
    display: block;
    margin-bottom: 13px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-blogs-cta-content h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(40px, 4.5vw, 64px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-blogs-cta-content p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 13px;
    line-height: 1.75;
}

.koru-blogs-cta-button {
    position: relative;
    z-index: 3;
    min-width: 240px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 11px 11px 11px 22px;
    background: #ffffff;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blogs-cta-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 14px;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blogs-cta-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-blogs-cta-button:hover .koru-blogs-cta-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

@media screen and (max-width: 1199px) {
    .koru-blog-card-featured .koru-blog-image {
        height: 460px;
    }

    .koru-blog-image {
        height: 285px;
    }

    .koru-blog-card-side .koru-blog-image {
        height: 315px;
    }

    .koru-blogs-cta {
        padding: 46px;
    }
}

@media screen and (max-width: 991px) {
    .koru-blogs-page {
        padding: 90px 0;
    }

    .koru-blogs-heading {
        margin-bottom: 45px;
    }

    .koru-blogs-heading h2 {
        margin-bottom: 28px;
        font-size: 60px;
    }

    .koru-blogs-heading-side {
        max-width: 650px;
        margin-left: 0;
    }

    .koru-blog-card-featured .koru-blog-image,
    .koru-blog-card-side .koru-blog-image,
    .koru-blog-image {
        height: 360px;
    }

    .koru-blogs-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-blogs-page {
        padding: 65px 0;
    }

    .koru-blogs-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-blog-card-featured .koru-blog-image,
    .koru-blog-card-side .koru-blog-image,
    .koru-blog-image {
        height: 310px;
    }

    .koru-blog-body,
    .koru-blog-card-featured .koru-blog-body {
        min-height: auto;
        padding: 25px;
    }

    .koru-blog-card-featured .koru-blog-body h3,
    .koru-blog-body h3 {
        font-size: 32px;
        line-height: 1.04;
        letter-spacing: -1px;
    }

    .koru-blog-image-button {
        top: 18px;
        right: 18px;
        width: 48px;
        height: 48px;
    }

    .koru-blog-category {
        left: 20px;
        bottom: 20px;
    }

    .koru-blog-order {
        top: 20px;
        left: 20px;
    }

    .koru-blogs-cta {
        min-height: auto;
        margin-top: 55px;
        padding: 37px 25px;
    }

    .koru-blogs-cta-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-blogs-cta-button {
        width: 100%;
    }
}


.koru-blog-detail-page {
    position: relative;
    overflow: hidden;
    background: #f5f3ef;
}

.koru-blog-detail-hero {
    position: relative;
    overflow: hidden;
    padding: 110px 0 80px;
    background: #f5f3ef;
}

.koru-blog-detail-hero::before {
    content: "";
    position: absolute;
    top: -310px;
    right: -310px;
    width: 680px;
    height: 680px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-blog-detail-hero-inner {
    position: relative;
    z-index: 2;
    max-width: 1050px;
    margin: 0 auto;
    text-align: center;
}

.koru-blog-detail-category {
    display: flex;
    justify-content: center;
    margin-bottom: 25px;
}

.koru-blog-detail-category span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 15px;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.4;
}

.koru-blog-detail-hero h2 {
    margin: 0;
    color: #171717;
    font-size: clamp(54px, 7vw, 105px);
    font-weight: 500;
    line-height: 0.93;
    letter-spacing: -5px;
}

.koru-blog-detail-lead {
    max-width: 780px;
    margin: 30px auto 0;
    color: #686868;
    font-size: 16px;
    line-height: 1.85;
}

.koru-blog-detail-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 25px;
    margin-top: 35px;
    padding-top: 25px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-blog-detail-meta > span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #777777;
    font-size: 11px;
    line-height: 1.5;
}

.koru-blog-detail-meta i {
    color: var(--cr-orange1);
    font-size: 14px;
}

.koru-blog-detail-main {
    padding: 0 0 120px;
    background: #f5f3ef;
}

.koru-blog-detail-cover {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 690px;
    margin-bottom: 75px;
    overflow: hidden;
    background: #171717;
}

.koru-blog-detail-cover img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

.koru-blog-detail-cover-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.03) 45%,
        rgba(0, 0, 0, 0.58) 100%
    );
    pointer-events: none;
}

.koru-blog-detail-cover-number {
    position: absolute;
    top: 28px;
    left: 31px;
    color: #ffffff;
    font-size: 31px;
    font-weight: 500;
    line-height: 1;
}

.koru-blog-detail-cover-number::after {
    content: "";
    display: block;
    width: 31px;
    height: 2px;
    margin-top: 10px;
    background: var(--cr-orange1);
}

.koru-blog-detail-cover-label {
    position: absolute;
    right: 30px;
    bottom: 28px;
    display: flex;
    align-items: center;
    gap: 14px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
}

.koru-blog-detail-cover-label i {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.48);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.26);
    backdrop-filter: blur(8px);
    color: #ffffff;
}

.koru-blog-detail-content {
    padding-right: 45px;
}

.koru-blog-richtext {
    color: #4f4f4f;
    font-size: 16px;
    line-height: 1.9;
}

.koru-blog-richtext > *:first-child {
    margin-top: 0;
}

.koru-blog-richtext > *:last-child {
    margin-bottom: 0;
}

.koru-blog-richtext p {
    margin: 0 0 25px;
    color: #4f4f4f;
    font-size: 16px;
    line-height: 1.9;
}

.koru-blog-richtext h1,
.koru-blog-richtext h2,
.koru-blog-richtext h3,
.koru-blog-richtext h4,
.koru-blog-richtext h5,
.koru-blog-richtext h6 {
    margin: 48px 0 20px;
    color: #171717;
    font-family: "Akshar", sans-serif;
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: -1px;
}

.koru-blog-richtext h1 {
    font-size: 52px;
}

.koru-blog-richtext h2 {
    font-size: 45px;
}

.koru-blog-richtext h3 {
    font-size: 38px;
}

.koru-blog-richtext h4 {
    font-size: 31px;
}

.koru-blog-richtext h5 {
    font-size: 25px;
}

.koru-blog-richtext h6 {
    font-size: 20px;
}

.koru-blog-richtext strong,
.koru-blog-richtext b {
    color: #171717;
    font-weight: 700;
}

.koru-blog-richtext a {
    color: var(--cr-orange1);
    text-decoration: underline;
    text-underline-offset: 4px;
}

.koru-blog-richtext a:hover {
    color: #171717;
}

.koru-blog-richtext ul,
.koru-blog-richtext ol {
    margin: 25px 0 30px;
    padding-left: 25px;
}

.koru-blog-richtext li {
    margin-bottom: 11px;
    padding-left: 5px;
    color: #4f4f4f;
    line-height: 1.8;
}

.koru-blog-richtext li::marker {
    color: var(--cr-orange1);
    font-weight: 700;
}

.koru-blog-richtext blockquote {
    position: relative;
    margin: 40px 0;
    padding: 35px 38px 35px 42px;
    border-left: 4px solid var(--cr-orange1);
    background: #ffffff;
    color: #171717;
    font-family: "Akshar", sans-serif;
    font-size: 27px;
    font-weight: 500;
    line-height: 1.35;
}

.koru-blog-richtext blockquote p {
    margin: 0;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

.koru-blog-richtext img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 38px auto;
}

.koru-blog-richtext figure {
    max-width: 100%;
    margin: 38px 0;
}

.koru-blog-richtext figure img {
    margin: 0;
}

.koru-blog-richtext figcaption {
    margin-top: 10px;
    color: #888888;
    font-size: 11px;
    line-height: 1.6;
    text-align: center;
}

.koru-blog-richtext table {
    width: 100%;
    margin: 38px 0;
    border-collapse: collapse;
    background: #ffffff;
}

.koru-blog-richtext table th,
.koru-blog-richtext table td {
    padding: 15px 17px;
    border: 1px solid #dedbd6;
    color: #555555;
    font-size: 13px;
    line-height: 1.7;
    text-align: left;
    vertical-align: top;
}

.koru-blog-richtext table th {
    background: #171717;
    color: #ffffff;
    font-weight: 600;
}

.koru-blog-richtext iframe,
.koru-blog-richtext video {
    display: block;
    width: 100%;
    max-width: 100%;
    min-height: 460px;
    margin: 40px 0;
    border: 0;
}

.koru-blog-richtext hr {
    margin: 45px 0;
    border: 0;
    border-top: 1px solid rgba(17, 17, 17, 0.14);
}

.koru-blog-share {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 60px;
    padding: 28px 0;
    border-top: 1px solid rgba(17, 17, 17, 0.13);
    border-bottom: 1px solid rgba(17, 17, 17, 0.13);
}

.koru-blog-share-heading span {
    display: block;
    margin-bottom: 5px;
    color: #171717;
    font-size: 13px;
    font-weight: 700;
}

.koru-blog-share-heading p {
    margin: 0;
    color: #888888;
    font-size: 10px;
    line-height: 1.6;
}

.koru-blog-share-buttons {
    display: flex;
    align-items: center;
    gap: 8px;
}

.koru-blog-share-button {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(17, 17, 17, 0.16);
    border-radius: 50%;
    background: transparent;
    color: #171717;
    font-size: 14px;
    cursor: pointer;
    transition:
        border-color 0.4s ease,
        background-color 0.4s ease,
        color 0.4s ease,
        transform 0.4s ease;
}

.koru-blog-share-button:hover {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
    transform: translateY(-3px);
}

.koru-blog-navigation {
    display: flex;
    gap: 18px;
    margin-top: 55px;
}

.koru-blog-navigation-item {
    flex: 1;
    min-height: 165px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 27px 29px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #ffffff;
    transition:
        border-color 0.5s ease,
        transform 0.5s ease,
        box-shadow 0.5s ease;
}

.koru-blog-navigation-item:hover {
    border-color: var(--cr-orange1);
    transform: translateY(-4px);
    box-shadow: 0 18px 45px rgba(17, 17, 17, 0.07);
}

.koru-blog-navigation-next {
    text-align: right;
}

.koru-blog-navigation-direction {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 15px;
    color: var(--cr-orange1);
    font-size: 10px;
    font-weight: 600;
}

.koru-blog-navigation-next .koru-blog-navigation-direction {
    justify-content: flex-end;
}

.koru-blog-navigation-item strong {
    display: block;
    color: #171717;
    font-size: 27px;
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: -1px;
}

.koru-blog-sidebar {
    position: sticky;
    top: 120px;
    padding-left: 25px;
}

.koru-blog-sidebar-box {
    margin-bottom: 25px;
    padding: 30px;
    border: 1px solid rgba(17, 17, 17, 0.11);
    background: #ffffff;
}

.koru-blog-sidebar-title {
    display: block;
    margin-bottom: 23px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(17, 17, 17, 0.11);
    color: #171717;
    font-size: 13px;
    font-weight: 700;
}

.koru-blog-sidebar-info-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 17px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.09);
}

.koru-blog-sidebar-info-item:first-child {
    padding-top: 0;
}

.koru-blog-sidebar-info-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.koru-blog-sidebar-info-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f5f3ef;
    color: var(--cr-orange1);
    font-size: 15px;
}

.koru-blog-sidebar-info-item small {
    display: block;
    margin-bottom: 4px;
    color: #999999;
    font-size: 9px;
    line-height: 1.4;
}

.koru-blog-sidebar-info-item strong {
    display: block;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
}

.koru-blog-recent-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 17px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.1);
}

.koru-blog-recent-item:first-child {
    padding-top: 0;
}

.koru-blog-recent-image {
    width: 92px;
    height: 78px;
    flex: 0 0 92px;
    overflow: hidden;
    background: #171717;
}

.koru-blog-recent-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-recent-item:hover .koru-blog-recent-image img {
    transform: scale(1.07);
}

.koru-blog-recent-content {
    min-width: 0;
}

.koru-blog-recent-content > span {
    display: block;
    margin-bottom: 6px;
    color: var(--cr-orange1);
    font-size: 9px;
    font-weight: 600;
}

.koru-blog-recent-content h3 {
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.08;
}

.koru-blog-recent-content h3 a {
    color: #171717;
    transition: color 0.3s ease;
}

.koru-blog-recent-content h3 a:hover {
    color: var(--cr-orange1);
}

.koru-blog-sidebar-all {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 22px;
    padding-bottom: 6px;
    border-bottom: 1px solid #171717;
    color: #171717;
    font-size: 10px;
    font-weight: 600;
    transition:
        gap 0.4s ease,
        color 0.4s ease,
        border-color 0.4s ease;
}

.koru-blog-sidebar-all:hover {
    gap: 19px;
    border-color: var(--cr-orange1);
    color: var(--cr-orange1);
}

.koru-blog-sidebar-request {
    position: relative;
    overflow: hidden;
    padding: 34px 30px;
    background:
        linear-gradient(
            180deg,
            rgba(15, 15, 15, 0.75),
            rgba(15, 15, 15, 0.94)
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-blog-sidebar-request > span {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;
}

.koru-blog-sidebar-request h3 {
    margin: 0 0 15px;
    color: #ffffff;
    font-size: 35px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -1px;
}

.koru-blog-sidebar-request p {
    margin: 0 0 25px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 11px;
    line-height: 1.7;
}

.koru-blog-sidebar-request > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 10px 10px 10px 18px;
    background: #ffffff;
    color: #171717;
    font-size: 10px;
    font-weight: 600;
    transition:
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-sidebar-request > a > span:last-child {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    transition:
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-sidebar-request > a:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-blog-sidebar-request > a:hover > span:last-child {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

.koru-related-blogs {
    padding: 115px 0 120px;
    background: #171717;
}

.koru-related-blogs-heading {
    margin-bottom: 55px;
}

.koru-related-blogs-heading span {
    display: block;
    margin-bottom: 14px;
    color: var(--cr-orange1);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-related-blogs-heading h2 {
    max-width: 820px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(45px, 5vw, 75px);
    font-weight: 500;
    line-height: 0.97;
    letter-spacing: -3px;
}

.koru-related-blogs-all {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    float: right;
    padding-bottom: 7px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    transition:
        gap 0.4s ease,
        color 0.4s ease,
        border-color 0.4s ease;
}

.koru-related-blogs-all span {
    margin: 0;
    color: inherit;
    font-size: inherit;
    letter-spacing: 0;
}

.koru-related-blogs-all:hover {
    gap: 21px;
    border-color: var(--cr-orange1);
    color: var(--cr-orange1);
}

.koru-related-blog-card {
    height: 100%;
    overflow: hidden;
    background: #ffffff;
}

.koru-related-blog-image {
    position: relative;
    display: block;
    height: 300px;
    overflow: hidden;
    background: #111111;
}

.koru-related-blog-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-related-blog-card:hover .koru-related-blog-image img {
    transform: scale(1.06);
}

.koru-related-blog-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.02) 40%,
        rgba(0, 0, 0, 0.55) 100%
    );
}

.koru-related-blog-category {
    position: absolute;
    left: 22px;
    bottom: 21px;
    z-index: 2;
    padding: 8px 12px;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 9px;
    font-weight: 700;
}

.koru-related-blog-arrow {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 2;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    background: rgba(17, 17, 17, 0.3);
    backdrop-filter: blur(8px);
    color: #ffffff;
    transition:
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-related-blog-card:hover .koru-related-blog-arrow {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
    transform: rotate(45deg);
}

.koru-related-blog-content {
    min-height: 315px;
    display: flex;
    flex-direction: column;
    padding: 27px 27px 30px;
}

.koru-related-blog-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 17px;
}

.koru-related-blog-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #929292;
    font-size: 9px;
}

.koru-related-blog-meta i {
    color: var(--cr-orange1);
}

.koru-related-blog-content h3 {
    margin: 0 0 15px;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.04;
    letter-spacing: -1px;
}

.koru-related-blog-content h3 a {
    color: #171717;
    transition: color 0.3s ease;
}

.koru-related-blog-content h3 a:hover {
    color: var(--cr-orange1);
}

.koru-related-blog-content p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 25px;
    color: #777777;
    font-size: 12px;
    line-height: 1.75;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.koru-related-blog-link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 13px;
    margin-top: auto;
    padding-bottom: 6px;
    border-bottom: 1px solid #171717;
    color: #171717;
    font-size: 10px;
    font-weight: 600;
    transition:
        gap 0.4s ease,
        color 0.4s ease,
        border-color 0.4s ease;
}

.koru-related-blog-link:hover {
    gap: 20px;
    border-color: var(--cr-orange1);
    color: var(--cr-orange1);
}

.koru-blog-detail-cta {
    padding: 0 0 120px;
    background: #ffffff;
}

.koru-blog-detail-cta-inner {
    min-height: 310px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    padding: 54px 58px;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.92) 0%,
            rgba(15, 15, 15, 0.72) 58%,
            rgba(15, 15, 15, 0.4) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-blog-detail-cta-content {
    max-width: 750px;
}

.koru-blog-detail-cta-content > span {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-blog-detail-cta-content h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(41px, 4.5vw, 65px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-blog-detail-cta-content p {
    max-width: 610px;
    margin: 0;
    color: rgba(255, 255, 255, 0.67);
    font-size: 12px;
    line-height: 1.75;
}

.koru-blog-detail-cta-button {
    min-width: 240px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 23px;
    padding: 11px 11px 11px 22px;
    background: #ffffff;
    color: #171717;
    font-size: 11px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-detail-cta-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-detail-cta-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-blog-detail-cta-button:hover .koru-blog-detail-cta-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

.koru-blog-not-found {
    padding: 120px 0;
    background: #f5f3ef;
}

.koru-blog-not-found-inner {
    padding: 80px 30px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    text-align: center;
}

.koru-blog-not-found-icon {
    width: 82px;
    height: 82px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 27px;
}

.koru-blog-not-found h2 {
    margin: 0 0 13px;
    color: #171717;
    font-size: 53px;
    font-weight: 500;
    line-height: 1;
}

.koru-blog-not-found p {
    max-width: 530px;
    margin: 0 auto 30px;
    color: #777777;
    font-size: 14px;
    line-height: 1.75;
}

.koru-blog-not-found-button {
    min-width: 210px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 10px 10px 10px 21px;
    background: #171717;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
}

.koru-blog-not-found-button-icon {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    color: #171717;
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-blog-not-found-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-blog-not-found-button:hover .koru-blog-not-found-button-icon {
    transform: rotate(45deg);
}

.koru-blog-copy-message {
    position: fixed;
    right: 25px;
    bottom: 25px;
    z-index: 999999;
    padding: 15px 20px;
    background: #171717;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition:
        opacity 0.35s ease,
        visibility 0.35s ease,
        transform 0.35s ease;
}

.koru-blog-copy-message-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

@media screen and (max-width: 1199px) {
    .koru-blog-detail-cover {
        height: 600px;
    }

    .koru-blog-detail-content {
        padding-right: 25px;
    }

    .koru-blog-sidebar {
        padding-left: 10px;
    }

    .koru-blog-detail-cta-inner {
        padding: 48px;
    }
}

@media screen and (max-width: 991px) {
    .koru-blog-detail-hero {
        padding: 90px 0 70px;
    }

    .koru-blog-detail-hero h2 {
        font-size: 72px;
        letter-spacing: -3px;
    }

    .koru-blog-detail-cover {
        height: 500px;
        margin-bottom: 55px;
    }

    .koru-blog-detail-content {
        padding-right: 0;
    }

    .koru-blog-sidebar {
        position: static;
        margin-top: 60px;
        padding-left: 0;
    }

    .koru-related-blogs {
        padding: 90px 0;
    }

    .koru-related-blogs-heading h2 {
        margin-bottom: 25px;
        font-size: 58px;
    }

    .koru-related-blogs-all {
        float: none;
    }

    .koru-blog-detail-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-blog-detail-hero {
        padding: 65px 0 50px;
    }

    .koru-blog-detail-hero h2 {
        font-size: 46px;
        line-height: 0.98;
        letter-spacing: -1px;
    }

    .koru-blog-detail-lead {
        margin-top: 22px;
        font-size: 14px;
        line-height: 1.75;
    }

    .koru-blog-detail-meta {
        align-items: flex-start;
        justify-content: flex-start;
        flex-direction: column;
        gap: 11px;
    }

    .koru-blog-detail-cover {
        height: 360px;
        margin-bottom: 45px;
    }

    .koru-blog-detail-cover-number {
        top: 20px;
        left: 20px;
    }

    .koru-blog-detail-cover-label {
        right: 20px;
        bottom: 20px;
    }

    .koru-blog-richtext,
    .koru-blog-richtext p {
        font-size: 14px;
        line-height: 1.8;
    }

    .koru-blog-richtext h1 {
        font-size: 39px;
    }

    .koru-blog-richtext h2 {
        font-size: 35px;
    }

    .koru-blog-richtext h3 {
        font-size: 31px;
    }

    .koru-blog-richtext h4 {
        font-size: 27px;
    }

    .koru-blog-richtext blockquote {
        padding: 27px 23px;
        font-size: 23px;
    }

    .koru-blog-richtext table {
        display: block;
        overflow-x: auto;
    }

    .koru-blog-richtext iframe,
    .koru-blog-richtext video {
        min-height: 260px;
    }

    .koru-blog-share {
        align-items: flex-start;
        flex-direction: column;
    }

    .koru-blog-share-buttons {
        flex-wrap: wrap;
    }

    .koru-blog-navigation {
        flex-direction: column;
    }

    .koru-blog-navigation-next {
        text-align: left;
    }

    .koru-blog-navigation-next .koru-blog-navigation-direction {
        justify-content: flex-start;
    }

    .koru-related-blogs {
        padding: 65px 0;
    }

    .koru-related-blogs-heading h2 {
        font-size: 42px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-related-blog-image {
        height: 280px;
    }

    .koru-blog-detail-cta {
        padding-bottom: 65px;
    }

    .koru-blog-detail-cta-inner {
        min-height: auto;
        padding: 37px 25px;
    }

    .koru-blog-detail-cta-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-blog-detail-cta-button {
        width: 100%;
    }

    .koru-blog-not-found {
        padding: 65px 0;
    }

    .koru-blog-not-found-inner {
        padding: 55px 24px;
    }

    .koru-blog-not-found h2 {
        font-size: 42px;
    }
}

.koru-plans-page {
    position: relative;
    overflow: hidden;
    padding: 110px 0 120px;
    background: #f5f3ef;
}

.koru-plans-page::before {
    content: "";
    position: absolute;
    top: -280px;
    right: -280px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-plans-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 55px;
}

.koru-plans-heading-label {
    display: block;
    margin-bottom: 16px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-plans-heading h2 {
    max-width: 880px;
    margin: 0;
    color: #171717;
    font-size: clamp(48px, 5.3vw, 80px);
    font-weight: 500;
    line-height: 0.96;
    letter-spacing: -3px;
}

.koru-plans-heading-side {
    max-width: 430px;
    margin-left: auto;
}

.koru-plans-heading-side > p {
    margin: 0 0 22px;
    color: #747474;
    font-size: 14px;
    line-height: 1.8;
}

.koru-plans-heading-tip {
    display: flex;
    align-items: center;
    gap: 14px;
    padding-top: 19px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-plans-heading-tip > span {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 15px;
}

.koru-plans-heading-tip p {
    margin: 0;
    color: #555555;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.55;
}

.koru-plans-selector {
    position: relative;
    z-index: 3;
    display: flex;
    gap: 14px;
    margin-bottom: 16px;
}

.koru-plans-main-button {
    position: relative;
    flex: 1;
    min-height: 110px;
    display: flex;
    align-items: center;
    gap: 22px;
    overflow: hidden;
    padding: 20px 25px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #ffffff;
    color: #171717;
    text-align: left;
    cursor: pointer;
    transition:
        border-color 0.5s ease,
        background-color 0.5s ease,
        transform 0.5s ease;
}

.koru-plans-main-button:hover {
    border-color: var(--cr-orange1);
    transform: translateY(-3px);
}

.koru-plans-main-button-active {
    border-color: #171717;
    background: #171717;
    color: #ffffff;
}

.koru-plans-main-button-number {
    color: rgba(17, 17, 17, 0.08);
    font-size: 66px;
    font-weight: 500;
    line-height: 0.8;
    letter-spacing: -4px;
}

.koru-plans-main-button-active .koru-plans-main-button-number {
    color: rgba(255, 255, 255, 0.09);
}

.koru-plans-main-button-content {
    display: flex;
    align-items: center;
    gap: 15px;
}

.koru-plans-main-button-content > i {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f5f3ef;
    color: var(--cr-orange1);
    font-size: 17px;
}

.koru-plans-main-button-active .koru-plans-main-button-content > i {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-plans-main-button-content > span {
    display: flex;
    flex-direction: column;
}

.koru-plans-main-button-content strong {
    margin-bottom: 4px;
    color: inherit;
    font-size: 14px;
    font-weight: 600;
}

.koru-plans-main-button-content small {
    color: #888888;
    font-size: 10px;
    line-height: 1.5;
}

.koru-plans-main-button-active .koru-plans-main-button-content small {
    color: rgba(255, 255, 255, 0.5);
}

.koru-plans-floor-selector {
    position: relative;
    z-index: 3;
    display: none;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 12px;
    background: #ffffff;
    border: 1px solid rgba(17, 17, 17, 0.1);
}

.koru-plans-floor-selector-visible {
    display: flex;
}

.koru-plans-floor-button {
    min-width: 150px;
    padding: 13px 20px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #f5f3ef;
    color: #555555;
    font-family: "Sora", sans-serif;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition:
        border-color 0.35s ease,
        background-color 0.35s ease,
        color 0.35s ease;
}

.koru-plans-floor-button:hover {
    border-color: var(--cr-orange1);
    color: #171717;
}

.koru-plans-floor-button-active {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
}

.koru-plan-stage {
    position: relative;
    height: 760px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #ffffff;
}

.koru-plan-stage-header {
    min-height: 84px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
}

.koru-plan-current {
    display: flex;
    align-items: center;
    gap: 13px;
}

.koru-plan-current-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f5f3ef;
    color: var(--cr-orange1);
    font-size: 17px;
}

.koru-plan-current > span:last-child {
    display: flex;
    flex-direction: column;
}

.koru-plan-current small {
    margin-bottom: 3px;
    color: #999999;
    font-size: 9px;
    font-weight: 600;
}

.koru-plan-current strong {
    color: #171717;
    font-size: 13px;
    font-weight: 600;
}

.koru-plan-toolbar {
    display: flex;
    align-items: center;
    gap: 7px;
}

.koru-plan-tool {
    min-height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 13px;
    border: 1px solid rgba(17, 17, 17, 0.13);
    background: #f5f3ef;
    color: #171717;
    font-family: "Sora", sans-serif;
    font-size: 9px;
    font-weight: 600;
    cursor: pointer;
    transition:
        border-color 0.4s ease,
        background-color 0.4s ease,
        color 0.4s ease;
}

.koru-plan-tool:hover {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
}

.koru-plan-tool i {
    font-size: 13px;
}

.koru-plan-tool-primary {
    border-color: #171717;
    background: #171717;
    color: #ffffff;
}

.koru-plan-tool-primary:hover {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
}

.koru-plan-zoom-value {
    min-width: 50px;
    color: #777777;
    font-size: 10px;
    font-weight: 600;
    text-align: center;
}

.koru-plan-viewport {
    position: relative;
    flex: 1;
    overflow: auto;
    background:
        linear-gradient(45deg, #f8f7f4 25%, transparent 25%),
        linear-gradient(-45deg, #f8f7f4 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, #f8f7f4 75%),
        linear-gradient(-45deg, transparent 75%, #f8f7f4 75%);
    background-size: 26px 26px;
    background-position: 0 0, 0 13px, 13px -13px, -13px 0;
}

.koru-plan-canvas {
    min-width: 100%;
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 45px;
}

.koru-plan-canvas img {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
    object-fit: contain;
    object-position: center;
    user-select: none;
    transition: width 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-plan-loading {
    position: absolute;
    inset: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: #ffffff;
    opacity: 1;
    transition: opacity 0.35s ease;
}

.koru-plan-loading-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.koru-plan-loading-spinner {
    width: 48px;
    height: 48px;
    margin-bottom: 15px;
    border: 2px solid rgba(17, 17, 17, 0.1);
    border-top-color: var(--cr-orange1);
    border-radius: 50%;
    animation: koruPlanLoading 0.8s linear infinite;
}

.koru-plan-loading strong {
    color: #171717;
    font-size: 12px;
    font-weight: 600;
}

@keyframes koruPlanLoading {
    to {
        transform: rotate(360deg);
    }
}

.koru-plan-error {
    position: absolute;
    inset: 0;
    z-index: 9;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 30px;
    background: #ffffff;
    text-align: center;
}

.koru-plan-error-visible {
    display: flex;
}

.koru-plan-error > span {
    width: 68px;
    height: 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 23px;
}

.koru-plan-error strong {
    margin-bottom: 8px;
    color: #171717;
    font-size: 15px;
    font-weight: 600;
}

.koru-plan-error p {
    max-width: 430px;
    margin: 0;
    color: #777777;
    font-size: 11px;
    line-height: 1.7;
}

.koru-plan-drag-hint {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 6;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 13px;
    background: rgba(17, 17, 17, 0.8);
    color: #ffffff;
    font-size: 9px;
    line-height: 1.5;
    pointer-events: none;
}

.koru-plan-drag-hint i {
    color: var(--cr-orange1);
    font-size: 13px;
}

.koru-plan-stage-footer {
    min-height: 57px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 12px 18px;
    border-top: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
}

.koru-plan-stage-footer p {
    margin: 0;
    color: #999999;
    font-size: 8px;
    line-height: 1.5;
}

.koru-plan-scale {
    display: flex;
    align-items: center;
    gap: 10px;
}

.koru-plan-scale > span {
    position: relative;
    width: 62px;
    height: 1px;
    background: #171717;
}

.koru-plan-scale > span::before,
.koru-plan-scale > span::after {
    content: "";
    position: absolute;
    top: -3px;
    width: 1px;
    height: 7px;
    background: #171717;
}

.koru-plan-scale > span::before {
    left: 0;
}

.koru-plan-scale > span::after {
    right: 0;
}

.koru-plan-scale small {
    color: #777777;
    font-size: 8px;
}

.koru-plan-information {
    position: relative;
    height: 100%;
    min-height: 760px;
    display: flex;
    flex-direction: column;
    padding: 34px 30px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #171717;
    color: #ffffff;
}

.koru-plan-information-label {
    display: block;
    margin-bottom: 15px;
    color: var(--cr-orange1);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;
}

.koru-plan-information h3 {
    margin: 0 0 20px;
    color: #ffffff;
    font-size: 37px;
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -1px;
}

.koru-plan-information > p {
    margin: 0;
    color: rgba(255, 255, 255, 0.59);
    font-size: 11px;
    line-height: 1.8;
}

.koru-plan-guide {
    margin-top: 35px;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.koru-plan-guide-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 20px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.koru-plan-guide-item > span {
    min-width: 30px;
    color: var(--cr-orange1);
    font-size: 21px;
    line-height: 1;
}

.koru-plan-guide-item strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
}

.koru-plan-guide-item p {
    margin: 0;
    color: rgba(255, 255, 255, 0.48);
    font-size: 9px;
    line-height: 1.65;
}

.koru-plan-request-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: auto;
    padding: 10px 10px 10px 17px;
    background: #ffffff;
    color: #171717;
    font-size: 9px;
    font-weight: 600;
    transition:
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-plan-request-button > span:last-child {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 13px;
    transition:
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-plan-request-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-plan-request-button:hover > span:last-child {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

body.koru-plan-body-lock {
    overflow: hidden !important;
}

.koru-plan-fallback-fullscreen {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    width: 100vw !important;
    height: 100vh !important;
}

.koru-plan-stage:fullscreen,
.koru-plan-stage:-webkit-full-screen {
    width: 100vw;
    height: 100vh;
}

.koru-plan-stage:fullscreen .koru-plan-viewport,
.koru-plan-stage:-webkit-full-screen .koru-plan-viewport,
.koru-plan-fallback-fullscreen .koru-plan-viewport {
    flex: 1;
}

.koru-plans-summary {
    margin-top: 70px;
}

.koru-plans-summary-card {
    position: relative;
    height: 100%;
    min-height: 340px;
    overflow: hidden;
    padding: 32px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    transition:
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-plans-summary-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 55px rgba(17, 17, 17, 0.08);
}

.koru-plans-summary-number {
    position: absolute;
    top: 18px;
    right: 23px;
    color: rgba(17, 17, 17, 0.045);
    font-size: 82px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -5px;
    pointer-events: none;
}

.koru-plans-summary-icon {
    position: relative;
    z-index: 2;
    width: 59px;
    height: 59px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 45px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 19px;
}

.koru-plans-summary-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 14px;
    color: #171717;
    font-size: 34px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -1px;
}

.koru-plans-summary-card p {
    position: relative;
    z-index: 2;
    margin: 0 0 25px;
    color: #777777;
    font-size: 11px;
    line-height: 1.75;
}

.koru-plans-summary-link {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    padding: 0 0 6px;
    border: 0;
    border-bottom: 1px solid #171717;
    background: transparent;
    color: #171717;
    font-family: "Sora", sans-serif;
    font-size: 10px;
    font-weight: 600;
    cursor: pointer;
    transition:
        gap 0.4s ease,
        border-color 0.4s ease,
        color 0.4s ease;
}

.koru-plans-summary-link:hover {
    gap: 20px;
    border-color: var(--cr-orange1);
    color: var(--cr-orange1);
}

.koru-plans-note {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-top: 35px;
    padding: 23px 25px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
}

.koru-plans-note-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f5f3ef;
    color: var(--cr-orange1);
    font-size: 17px;
}

.koru-plans-note strong {
    display: block;
    margin-bottom: 6px;
    color: #171717;
    font-size: 12px;
    font-weight: 600;
}

.koru-plans-note p {
    max-width: 950px;
    margin: 0;
    color: #777777;
    font-size: 10px;
    line-height: 1.7;
}

.koru-plans-cta {
    position: relative;
    min-height: 310px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    margin-top: 80px;
    overflow: hidden;
    padding: 54px 58px;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.93) 0%,
            rgba(15, 15, 15, 0.72) 58%,
            rgba(15, 15, 15, 0.42) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-plans-cta-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
}

.koru-plans-cta-content > span {
    display: block;
    margin-bottom: 13px;
    color: var(--cr-orange1);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-plans-cta-content h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(41px, 4.5vw, 65px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-plans-cta-content p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, 0.67);
    font-size: 12px;
    line-height: 1.75;
}

.koru-plans-cta-button {
    position: relative;
    z-index: 3;
    min-width: 240px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 23px;
    padding: 11px 11px 11px 22px;
    background: #ffffff;
    color: #171717;
    font-size: 11px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-plans-cta-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 14px;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-plans-cta-button:hover {
    background: var(--cr-orange1);
    color: #fff;
    border: 1px solid #fff;
}

.koru-plans-cta-button:hover .koru-plans-cta-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

@media screen and (max-width: 1199px) {
    .koru-plan-stage {
        height: 680px;
    }

    .koru-plan-information {
        min-height: 680px;
        padding: 29px 24px;
    }

    .koru-plan-information h3 {
        font-size: 35px;
    }

    .koru-plan-tool span {
        display: none;
    }
}

@media screen and (max-width: 991px) {
    .koru-plans-page {
        padding: 90px 0;
    }

    .koru-plans-heading {
        margin-bottom: 45px;
    }

    .koru-plans-heading h2 {
        margin-bottom: 28px;
        font-size: 60px;
    }

    .koru-plans-heading-side {
        max-width: 650px;
        margin-left: 0;
    }

    .koru-plan-information {
        min-height: auto;
    }

    .koru-plan-request-button {
        margin-top: 35px;
    }

    .koru-plans-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-plans-page {
        padding: 65px 0;
    }

    .koru-plans-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-plans-selector {
        flex-direction: column;
    }

    .koru-plans-main-button {
        min-height: 95px;
        padding: 17px 19px;
    }

    .koru-plans-main-button-number {
        font-size: 52px;
    }

    .koru-plans-main-button-content > i {
        width: 43px;
        height: 43px;
        flex-basis: 43px;
    }

    .koru-plans-floor-selector {
        overflow-x: auto;
    }

    .koru-plans-floor-button {
        min-width: 135px;
        flex: 0 0 135px;
    }

    .koru-plan-stage {
        height: 590px;
    }

    .koru-plan-stage-header {
        align-items: flex-start;
        flex-direction: column;
        padding: 14px;
    }

    .koru-plan-toolbar {
        width: 100%;
        overflow-x: auto;
        padding-bottom: 3px;
        scrollbar-width: none;
    }

    .koru-plan-toolbar::-webkit-scrollbar {
        display: none;
    }

    .koru-plan-tool {
        min-width: 45px;
        flex: 0 0 45px;
        padding: 0;
    }

    .koru-plan-tool-primary {
        min-width: 49px;
        flex-basis: 49px;
    }

    .koru-plan-zoom-value {
        min-width: 45px;
        flex: 0 0 45px;
    }

    .koru-plan-canvas {
        padding: 25px;
    }

    .koru-plan-drag-hint {
        right: 12px;
        bottom: 12px;
        left: 12px;
        justify-content: center;
        text-align: center;
    }

    .koru-plan-stage-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .koru-plan-information {
        padding: 32px 25px;
    }

    .koru-plan-information h3 {
        font-size: 37px;
    }

    .koru-plans-summary {
        margin-top: 50px;
    }

    .koru-plans-summary-card {
        min-height: auto;
        padding: 27px;
    }

    .koru-plans-summary-icon {
        margin-bottom: 36px;
    }

    .koru-plans-note {
        padding: 20px;
    }

    .koru-plans-cta {
        min-height: auto;
        margin-top: 55px;
        padding: 37px 25px;
    }

    .koru-plans-cta-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-plans-cta-button {
        width: 100%;
    }

    .koru-plan-fallback-fullscreen,
    .koru-plan-stage:fullscreen,
    .koru-plan-stage:-webkit-full-screen {
        height: 100vh !important;
    }
}

.koru-location-page {
    position: relative;
    overflow: hidden;
    padding: 110px 0 120px;
    background: #f5f3ef;
}

.koru-location-page::before {
    content: "";
    position: absolute;
    top: -280px;
    right: -280px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(17, 17, 17, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.koru-location-heading {
    position: relative;
    z-index: 2;
    margin-bottom: 58px;
}

.koru-location-heading-label {
    display: block;
    margin-bottom: 16px;
    color: var(--cr-orange1);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-location-heading h2 {
    max-width: 900px;
    margin: 0;
    color: #171717;
    font-size: clamp(48px, 5.3vw, 80px);
    font-weight: 500;
    line-height: 0.96;
    letter-spacing: -3px;
}

.koru-location-heading-side {
    max-width: 430px;
    margin-left: auto;
}

.koru-location-heading-side > p {
    margin: 0 0 23px;
    color: #747474;
    font-size: 14px;
    line-height: 1.8;
}

.koru-location-heading-tip {
    display: flex;
    align-items: center;
    gap: 14px;
    padding-top: 19px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-location-heading-tip > span {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 15px;
}

.koru-location-heading-tip p {
    margin: 0;
    color: #555555;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.55;
}

.koru-location-map-stage {
    position: relative;
    z-index: 3;
    height: 720px;
    overflow: hidden;
    background: #d9d7d2;
}

.koru-location-map {
    width: 100%;
    height: 100%;
}

.koru-location-map iframe {
    display: block;
    width: 100% !important;
    height: 100% !important;
    min-height: 100%;
    border: 0;
}

.koru-location-map-empty {
    width: 100%;
    height: 100%;
    min-height: 620px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 30px;
    background: #e8e5df;
    text-align: center;
}

.koru-location-map-empty span {
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 24px;
}

.koru-location-map-empty strong {
    margin-bottom: 8px;
    color: #171717;
    font-size: 15px;
    font-weight: 600;
}

.koru-location-map-empty p {
    max-width: 420px;
    margin: 0;
    color: #777777;
    font-size: 11px;
    line-height: 1.7;
}

.koru-location-map-topbar {
    position: absolute;
    top: 24px;
    right: 24px;
    left: 24px;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    pointer-events: none;
}

.koru-location-map-project {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    padding: 10px 16px 10px 10px;
    background: rgba(17, 17, 17, 0.82);
    backdrop-filter: blur(12px);
    color: #ffffff;
    pointer-events: auto;
}

.koru-location-map-project-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 16px;
}

.koru-location-map-project > span:last-child {
    display: flex;
    flex-direction: column;
}

.koru-location-map-project strong {
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}

.koru-location-map-project small {
    color: rgba(255, 255, 255, 0.5);
    font-size: 9px;
}

.koru-location-fullscreen {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 19px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    background: rgba(17, 17, 17, 0.82);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-family: "Sora", sans-serif;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    pointer-events: auto;
    transition:
        border-color 0.45s ease,
        background-color 0.45s ease,
        color 0.45s ease;
}

.koru-location-fullscreen:hover {
    border-color: var(--cr-orange1);
    background: var(--cr-orange1);
    color: #171717;
}

.koru-location-map-address {
    position: absolute;
    left: 24px;
    bottom: 24px;
    z-index: 10;
    max-width: 500px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 12px 17px 12px 12px;
    background: rgba(17, 17, 17, 0.84);
    backdrop-filter: blur(12px);
    color: #ffffff;
    pointer-events: none;
}

.koru-location-map-address-icon {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 16px;
}

.koru-location-map-address > span:last-child {
    display: flex;
    flex-direction: column;
}

.koru-location-map-address small {
    margin-bottom: 3px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 8px;
}

.koru-location-map-address strong {
    color: #ffffff;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.5;
}

.koru-location-direction {
    position: absolute;
    right: 24px;
    bottom: 24px;
    z-index: 11;
    min-width: 220px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 10px 10px 10px 19px;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 10px;
    font-weight: 600;
    transition:
        background-color 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-direction-icon {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    transition:
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-direction:hover {
    background: #ffffff;
    color: #171717;
}

.koru-location-direction:hover .koru-location-direction-icon {
    background: #171717;
    color: #ffffff;
    transform: rotate(45deg);
}

.koru-location-contact {
    position: relative;
    z-index: 3;
    min-height: 720px;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 45px 38px 38px;
    background: #171717;
    color: #ffffff;
}

.koru-location-contact-label {
    display: block;
    margin-bottom: 15px;
    color: var(--cr-orange1);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-location-contact > h2 {
    margin: 0 0 19px;
    color: #ffffff;
    font-size: clamp(40px, 4vw, 55px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-location-contact > p {
    margin: 0;
    color: rgba(255, 255, 255, 0.58);
    font-size: 11px;
    line-height: 1.75;
}

.koru-location-contact-list {
    margin-top: 34px;
    border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.koru-location-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.koru-location-contact-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.07);
    color: var(--cr-orange1);
    font-size: 15px;
}

.koru-location-contact-item > div {
    min-width: 0;
    padding-top: 2px;
}

.koru-location-contact-item small {
    display: block;
    margin-bottom: 5px;
    color: rgba(255, 255, 255, 0.42);
    font-size: 8px;
    line-height: 1.4;
}

.koru-location-contact-item strong {
    display: block;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.6;
    word-break: break-word;
}

.koru-location-contact-item a strong {
    transition: color 0.3s ease;
}

.koru-location-contact-item a:hover strong {
    color: var(--cr-orange1);
}

.koru-location-contact-actions {
    margin-top: auto;
    padding-top: 30px;
}

.koru-location-whatsapp {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 10px;
    padding: 15px 17px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    transition:
        border-color 0.4s ease,
        background-color 0.4s ease;
}

.koru-location-whatsapp > i {
    color: var(--cr-orange1);
    font-size: 23px;
}

.koru-location-whatsapp > span {
    display: flex;
    flex-direction: column;
}

.koru-location-whatsapp small {
    margin-bottom: 3px;
    color: rgba(255, 255, 255, 0.45);
    font-size: 8px;
}

.koru-location-whatsapp strong {
    color: #ffffff;
    font-size: 10px;
    font-weight: 600;
}

.koru-location-whatsapp:hover {
    border-color: var(--cr-orange1);
    background: rgba(255, 83, 46, 0.09);
}

.koru-location-request {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 10px 10px 10px 18px;
    background: #ffffff;
    color: #171717;
    font-size: 10px;
    font-weight: 600;
    transition:
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-request > span:last-child {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    transition:
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-request:hover {
    background: var(--cr-orange1);
    color: #fff;
}

.koru-location-request:hover > span:last-child {
    background: #ffffff;
    color: #000;
    transform: rotate(45deg);
}

body.koru-location-body-lock {
    overflow: hidden !important;
}

.koru-location-map-fallback-fullscreen {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    width: 100vw !important;
    height: 100vh !important;
}

.koru-location-map-stage:fullscreen,
.koru-location-map-stage:-webkit-full-screen {
    width: 100vw;
    height: 100vh;
}

.koru-location-map-stage:fullscreen .koru-location-map,
.koru-location-map-stage:-webkit-full-screen .koru-location-map,
.koru-location-map-fallback-fullscreen .koru-location-map {
    width: 100%;
    height: 100%;
}

.koru-location-access {
    position: relative;
    z-index: 2;
    margin-top: 35px;
}

.koru-location-access-card {
    position: relative;
    min-height: 315px;
    height: 100%;
    overflow: hidden;
    padding: 32px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    background: #ffffff;
    transition:
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-access-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 55px rgba(17, 17, 17, 0.08);
}

.koru-location-access-number {
    position: absolute;
    top: 18px;
    right: 23px;
    color: rgba(17, 17, 17, 0.045);
    font-size: 82px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -5px;
    pointer-events: none;
}

.koru-location-access-icon {
    position: relative;
    z-index: 2;
    width: 59px;
    height: 59px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 43px;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #171717;
    font-size: 19px;
}

.koru-location-access-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 14px;
    color: #171717;
    font-size: 34px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -1px;
}

.koru-location-access-card p {
    position: relative;
    z-index: 2;
    margin: 0 0 26px;
    color: #777777;
    font-size: 11px;
    line-height: 1.75;
}

.koru-location-access-card > a,
.koru-location-access-map-button {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    padding: 0 0 6px;
    border: 0;
    border-bottom: 1px solid #171717;
    background: transparent;
    color: #171717;
    font-family: "Sora", sans-serif;
    font-size: 10px;
    font-weight: 600;
    cursor: pointer;
    transition:
        gap 0.4s ease,
        border-color 0.4s ease,
        color 0.4s ease;
}

.koru-location-access-card > a:hover,
.koru-location-access-map-button:hover {
    gap: 20px;
    border-color: var(--cr-orange1);
    color: var(--cr-orange1);
}

.koru-location-experience {
    position: relative;
    z-index: 2;
    margin-top: 90px;
    padding: 70px;
    background: #ffffff;
}

.koru-location-experience-image {
    position: relative;
    height: 600px;
    overflow: hidden;
    background: #d8d5cf;
}

.koru-location-experience-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

.koru-location-experience-badge {
    position: absolute;
    right: 25px;
    bottom: 25px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 11px 17px 11px 11px;
    background: rgba(17, 17, 17, 0.84);
    backdrop-filter: blur(12px);
    color: #ffffff;
}

.koru-location-experience-badge-icon {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cr-orange1);
    color: #fff;
}

.koru-location-experience-badge > span:last-child {
    display: flex;
    flex-direction: column;
}

.koru-location-experience-badge small {
    margin-bottom: 3px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 8px;
}

.koru-location-experience-badge strong {
    color: #ffffff;
    font-size: 10px;
    font-weight: 600;
}

.koru-location-experience-content {
    max-width: 610px;
    padding-left: 35px;
}

.koru-location-experience-content > span {
    display: block;
    margin-bottom: 16px;
    color: var(--cr-orange1);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-location-experience-content h2 {
    margin: 0 0 24px;
    color: #171717;
    font-size: clamp(40px, 4.1vw, 63px);
    font-weight: 500;
    line-height: 0.97;
    letter-spacing: -3px;
}

.koru-location-experience-content > p {
    margin: 0;
    color: #707070;
    font-size: 13px;
    line-height: 1.85;
}

.koru-location-experience-list {
    margin-top: 32px;
    border-top: 1px solid rgba(17, 17, 17, 0.12);
}

.koru-location-experience-list > div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 17px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.12);
    color: #333333;
    font-size: 11px;
    font-weight: 600;
}

.koru-location-experience-list i {
    color: var(--cr-orange1);
    font-size: 16px;
}

.koru-location-experience-button {
    min-width: 225px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-top: 35px;
    padding: 10px 10px 10px 21px;
    background: #171717;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    transition:
        background-color 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-experience-button > span:last-child {
    width: 47px;
    height: 47px;
    flex: 0 0 47px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    color: #171717;
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-experience-button:hover {
    background: var(--cr-orange1);
    color: #171717;
}

.koru-location-experience-button:hover > span:last-child {
    transform: rotate(45deg);
}

.koru-location-cta {
    position: relative;
    z-index: 2;
    min-height: 310px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    margin-top: 85px;
    overflow: hidden;
    padding: 54px 58px;
    background:
        linear-gradient(
            90deg,
            rgba(15, 15, 15, 0.93) 0%,
            rgba(15, 15, 15, 0.72) 58%,
            rgba(15, 15, 15, 0.42) 100%
        ),
        url("/assets/images/banner.png") center center / cover no-repeat;
}

.koru-location-cta-content {
    position: relative;
    z-index: 2;
    max-width: 780px;
}

.koru-location-cta-content > span {
    display: block;
    margin-bottom: 13px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.koru-location-cta-content h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(41px, 4.5vw, 65px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -2px;
}

.koru-location-cta-content p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, 0.67);
    font-size: 12px;
    line-height: 1.75;
}

.koru-location-cta-button {
    position: relative;
    z-index: 3;
    min-width: 240px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 23px;
    padding: 11px 11px 11px 22px;
    background: #ffffff;
    color: #171717;
    font-size: 11px;
    font-weight: 600;
    transition:
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-cta-button-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #171717;
    color: #ffffff;
    font-size: 14px;
    transition:
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        background-color 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.koru-location-cta-button:hover {
    background: var(--cr-orange1);
    color: #fff;
    border: 1px solid #fff;
}

.koru-location-cta-button:hover .koru-location-cta-button-icon {
    background: #ffffff;
    color: #171717;
    transform: rotate(45deg);
}

@media screen and (max-width: 1199px) {
    .koru-location-map-stage,
    .koru-location-contact {
        min-height: 670px;
        height: 670px;
    }

    .koru-location-contact {
        padding: 38px 30px 30px;
    }

    .koru-location-experience {
        padding: 55px;
    }

    .koru-location-experience-image {
        height: 540px;
    }

    .koru-location-cta {
        padding: 48px;
    }
}

@media screen and (max-width: 991px) {
    .koru-location-page {
        padding: 90px 0;
    }

    .koru-location-heading {
        margin-bottom: 45px;
    }

    .koru-location-heading h2 {
        margin-bottom: 28px;
        font-size: 60px;
    }

    .koru-location-heading-side {
        max-width: 650px;
        margin-left: 0;
    }

    .koru-location-map-stage {
        height: 620px;
    }

    .koru-location-contact {
        min-height: auto;
        height: auto;
    }

    .koru-location-contact-actions {
        margin-top: 35px;
    }

    .koru-location-experience {
        padding: 45px;
    }

    .koru-location-experience-content {
        max-width: 760px;
        padding-left: 0;
    }

    .koru-location-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media screen and (max-width: 767px) {
    .koru-location-page {
        padding: 65px 0;
    }

    .koru-location-heading h2 {
        font-size: 43px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-location-map-stage {
        height: 560px;
    }

    .koru-location-map-topbar {
        top: 14px;
        right: 14px;
        left: 14px;
    }

    .koru-location-map-project {
        padding: 8px 11px 8px 8px;
    }

    .koru-location-map-project-icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
    }

    .koru-location-map-project small {
        display: none;
    }

    .koru-location-fullscreen {
        width: 46px;
        min-height: 46px;
        padding: 0;
    }

    .koru-location-fullscreen span {
        display: none;
    }

    .koru-location-map-address {
        right: 14px;
        bottom: 82px;
        left: 14px;
        max-width: none;
    }

    .koru-location-direction {
        right: 14px;
        bottom: 14px;
        left: 14px;
        width: auto;
    }

    .koru-location-contact {
        padding: 35px 25px;
    }

    .koru-location-contact > h2 {
        font-size: 42px;
        letter-spacing: -1px;
    }

    .koru-location-access-card {
        min-height: auto;
        padding: 27px;
    }

    .koru-location-access-icon {
        margin-bottom: 35px;
    }

    .koru-location-experience {
        margin-top: 60px;
        padding: 25px;
    }

    .koru-location-experience-image {
        height: 430px;
    }

    .koru-location-experience-badge {
        right: 15px;
        bottom: 15px;
        left: 15px;
    }

    .koru-location-experience-content h2 {
        font-size: 41px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-location-experience-button {
        width: 100%;
    }

    .koru-location-cta {
        min-height: auto;
        margin-top: 60px;
        padding: 37px 25px;
    }

    .koru-location-cta-content h2 {
        font-size: 40px;
        line-height: 1;
        letter-spacing: -1px;
    }

    .koru-location-cta-button {
        width: 100%;
    }

    .koru-location-map-fallback-fullscreen,
    .koru-location-map-stage:fullscreen,
    .koru-location-map-stage:-webkit-full-screen {
        height: 100vh !important;
    }
}

/* ==========================================================
   KORU ÇARŞI MENÜ SAYFA TİPİ
   Index: şeffaf ve beyaz
   İç sayfalar: beyaz, gölgeli ve koyu
========================================================== */

/* INDEX SAYFASI */
body.koru-home-page .tc-navbar-st1 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    color: #ffffff;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.55) 0%,
        rgba(0, 0, 0, 0) 100%
    );
    box-shadow: none;
}

body.koru-home-page .tc-navbar-st1 .navbar-nav .nav-item .nav-link,
body.koru-home-page .tc-navbar-st1 .nav-side,
body.koru-home-page .tc-navbar-st1 .nav-side a,
body.koru-home-page .tc-navbar-st1 #txtTelefonHeader {
    color: #ffffff;
}

body.koru-home-page .tc-navbar-st1 .navbar-brand img {
    filter: none;
}


/* INDEX HARİCİNDEKİ TÜM SAYFALAR */
body.koru-inner-page .tc-navbar-st1 {
  position: absolute;
    top: 0px;
    left: unset !important;
    z-index: 1000;
    color: #1d1d1d;
    background: unset !important;
    border-bottom: unset !important;
    box-shadow: unset !important;
    -webkit-backdrop-filter: unset !important;
    backdrop-filter: unset !important;
}

body.koru-inner-page .tc-navbar-st1 .text-white {
    color: #1d1d1d !important;
} 


/* İÇ SAYFA MENÜ YAZILARI */
body.koru-inner-page .tc-navbar-st1 .navbar-nav .nav-item .nav-link {
    color: #242424 !important;
}

body.koru-inner-page .tc-navbar-st1 .nav-side,
body.koru-inner-page .tc-navbar-st1 .nav-side a,
body.koru-inner-page .tc-navbar-st1 #txtTelefonHeader {
    color: #242424 !important;
}


/* TELEFON, DİL VE MENÜ İKONLARI */
body.koru-inner-page .tc-navbar-st1 .nav-side i,
body.koru-inner-page .tc-navbar-st1 .nav-side svg,
body.koru-inner-page .tc-navbar-st1 .navbar-toggler,
body.koru-inner-page .tc-navbar-st1 .navbar-toggler i {
    color: #242424 !important;
}


/* BEYAZ LOGOYU İÇ SAYFALARDA SİYAHA ÇEVİRİR */
body.koru-inner-page .tc-navbar-st1 .navbar-brand img {
    filter: brightness(0) saturate(100%);
}


/* AKTİF VE HOVER MENÜ RENGİ */
body.koru-inner-page .tc-navbar-st1 .navbar-nav .nav-item .nav-link:hover,
body.koru-inner-page .tc-navbar-st1 .navbar-nav .nav-item .nav-link.active {
    color: var(--cr-orange1) !important;
}


/* DROPDOWN MENÜ */
body.koru-inner-page .tc-navbar-st1 .dropdown-menu {
    border: 1px solid rgba(17, 17, 17, 0.07);
    background: #ffffff;
    box-shadow: 0 15px 40px rgba(17, 17, 17, 0.12);
}

body.koru-inner-page .tc-navbar-st1 .dropdown-menu a {
    color: #242424 !important;
}

body.koru-inner-page .tc-navbar-st1 .dropdown-menu a:hover,
body.koru-inner-page .tc-navbar-st1 .dropdown-menu a.active {
    color: var(--cr-orange1) !important;
}


/* MOBİL MENÜ */
@media screen and (max-width: 991px) {
    body.koru-inner-page .tc-navbar-st1 {
        position: relative;
        padding: 15px 0;
        background: #ffffff;
        box-shadow: 0 10px 28px rgba(17, 17, 17, 0.12);
    }

    body.koru-inner-page .tc-navbar-st1 .navbar-collapse {
        margin-top: 15px;
        padding: 20px;
        border: 1px solid rgba(17, 17, 17, 0.07);
        background: #ffffff;
        box-shadow: 0 15px 35px rgba(17, 17, 17, 0.12);
    }

    body.koru-inner-page .tc-navbar-st1 .navbar-collapse .nav-link {
        color: #242424 !important;
    }

    body.koru-inner-page .tc-navbar-st1 .navbar-toggler {
        border-color: #242424;
        background: #242424;
        color: #ffffff !important;
    }

    body.koru-inner-page .tc-navbar-st1 .navbar-toggler i,
    body.koru-inner-page .tc-navbar-st1 .navbar-toggler span {
        color: #ffffff !important;
    }
}