.home9-modern-header + main .slider__area {
    margin-top: 0px !important;
}

.home9-modern-header {
    padding-top: 10px !important;
    padding-bottom: 12px !important;
}

.home9-modern-header .home9-logo-row {
    padding-top: 8px !important;
    padding-bottom: 10px !important;
}

.home9-modern-header .home9-menu-row {
    margin-top: 6px !important;
}

.guihon-breadcrumb-hero {
    position: relative;
    isolation: isolate;
    padding: 72px 0 76px;
}

.guihon-breadcrumb-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(0, 0, 0, 0.68);
}

.guihon-breadcrumb-hero .container,
.guihon-breadcrumb-hero .breadcrumb__shape {
    position: relative;
    z-index: 1;
}

.guihon-breadcrumb-hero .bg-img {
    background-position: center 18% !important;
    background-size: cover;
}

.guihon-breadcrumb-hero .breadcrumb__content .title {
    color: #ffffff;
}

.guihon-breadcrumb-hero .breadcrumb__content .breadcrumb-item,
.guihon-breadcrumb-hero .breadcrumb__content .breadcrumb-item a {
    color: rgba(255, 255, 255, 0.86);
}

@media (max-width: 991.98px) {
    .guihon-breadcrumb-hero {
        padding: 56px 0 60px;
    }
}

.guihon-about-more {
    margin-top: 18px;
}

.guihon-about-more p {
    text-align: justify;
}

.guihon-about-more p:last-child {
    margin-bottom: 0;
}

.guihon-about-copy {
    width: 100%;
}

.guihon-about-visual {
    width: 100%;
    height: 100%;
}

.guihon-about-visual > img:nth-child(1) {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    object-position: center;
    display: block;
}

@media (max-width: 991.98px) {
    .guihon-about-visual > img:nth-child(1) {
        min-height: auto;
        height: auto;
    }
}

.guihon-services-page {
    min-height: 100vh;
    background: #ffffff;
}

.guihon-services-list {
    position: relative;
}

.guihon-services-page::before {
    display: none;
}

.guihon-services-page .home9-services-kicker {
    border-color: rgba(var(--home9-brand-rgb), 0.14);
    background: rgba(var(--home9-brand-rgb), 0.08);
    color: #18463a;
}

.guihon-services-page .home9-services-title {
    color: #0e2a24;
}

.guihon-services-page .home9-services-text {
    color: #4b625b;
}

.guihon-services-grid {
    align-items: stretch;
}

.guihon-services-item {
    display: flex;
}

.guihon-services-item .home9-service-panel {
    width: 100%;
}

.guihon-services-grid .guihon-services-item:nth-child(2n) .home9-service-panel {
    --home9-service-accent: var(--home9-brand-deep);
    --home9-service-accent-rgb: 19, 141, 114;
    --home9-service-warm: #8b654f;
    --home9-service-warm-rgb: 139, 101, 79;
}

.guihon-services-grid .guihon-services-item:nth-child(3n) .home9-service-panel {
    --home9-service-accent: #37a883;
    --home9-service-accent-rgb: 55, 168, 131;
    --home9-service-warm: #755442;
    --home9-service-warm-rgb: 117, 84, 66;
}

.guihon-services-grid .guihon-services-item:nth-child(4n) .home9-service-panel {
    --home9-service-accent: #74c2a6;
    --home9-service-accent-rgb: 116, 194, 166;
    --home9-service-warm: #9a745c;
    --home9-service-warm-rgb: 154, 116, 92;
}

.guihon-services-item[hidden] {
    display: none !important;
}

.guihon-services-pagination-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 34px;
}

.guihon-services-page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.guihon-services-page-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    min-height: 48px;
    padding: 12px 18px;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.16);
    border-radius: 999px;
    background: #ffffff;
    color: #173d34;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    transition: background-color 0.24s ease, color 0.24s ease, border-color 0.24s ease, transform 0.24s ease, box-shadow 0.24s ease;
}

.guihon-services-page-btn:hover {
    transform: translateY(-2px);
    border-color: rgba(var(--home9-brand-rgb), 0.24);
    background: rgba(var(--home9-brand-rgb), 0.08);
    color: #0f2d26;
    box-shadow: 0 12px 24px rgba(var(--home9-brand-rgb), 0.12);
}

.guihon-services-page-btn.is-active {
    border-color: rgba(var(--home9-brand-rgb), 0.2);
    background: linear-gradient(90deg, var(--home9-accent) 0%, var(--home9-brand) 100%);
    color: #ffffff;
    box-shadow: 0 18px 34px rgba(var(--home9-brand-rgb), 0.24);
}

.guihon-services-page-btn:disabled {
    opacity: 0.45;
    cursor: default;
    transform: none;
    box-shadow: none;
}

@media (max-width: 767.98px) {
    .guihon-services-pagination-nav {
        gap: 10px;
    }

    .guihon-services-page-btn {
        min-width: 44px;
        min-height: 44px;
        padding: 10px 14px;
        font-size: 13px;
    }
}

.guihon-service-detail-page .services__details-content > p,
.guihon-service-detail-page .services__details-top-content p,
.guihon-service-detail-page .services__details-inner-content p,
.guihon-service-detail-page .services__details-inner-content-two p {
    text-align: justify;
}

.guihon-service-detail-page .services__details-top-content .title {
    line-height: 1.16;
}

@media (min-width: 992px) {
    .guihon-service-detail-page .services__details-wrap > .row .col-70 {
        width: 72%;
    }

    .guihon-service-detail-page .services__details-wrap > .row .col-30 {
        width: 28%;
    }

    .guihon-service-detail-page .services__details-top .row .col-49 {
        width: 44%;
    }

    .guihon-service-detail-page .services__details-top .row .col-51 {
        width: 56%;
    }

    .guihon-service-detail-page .services__sidebar {
        margin-right: 0;
        margin-left: 20px;
    }
}

@media (max-width: 991.98px) {
    .guihon-service-detail-page .services__sidebar {
        margin-left: 0;
    }
}

.guihon-service-sidebar-list .list-wrap li a.is-active {
    background: var(--tg-theme-primary-500);
    color: var(--tg-color-white-default);
    border-color: var(--tg-theme-primary-500);
}

.guihon-service-sidebar-list .list-wrap li a.is-active i {
    color: var(--tg-theme-secondary-500);
}

.guihon-service-faq {
    background:
        radial-gradient(circle at 12% 12%, rgba(var(--home9-brand-rgb), 0.08), transparent 20%),
        linear-gradient(180deg, #f7fbf9 0%, #ffffff 100%);
}

.guihon-service-faq .home9-faq-layout {
    align-items: stretch;
}

.guihon-service-faq .home9-faq-panel {
    min-height: 100%;
}

.guihon-service-faq .home9-faq-accordion {
    flex: 0 0 auto;
}

.guihon-service-faq .home9-faq-support {
    margin-top: 22px;
}

.guihon-service-fill-card {
    margin-top: 22px;
    padding: 26px;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.12);
    border-radius: 28px;
    background:
        radial-gradient(circle at 100% 0%, rgba(var(--home9-accent-rgb), 0.16), transparent 32%),
        linear-gradient(180deg, #ffffff 0%, #eef5f2 100%);
    box-shadow: 0 20px 42px rgba(14, 32, 27, 0.08);
}

.guihon-service-fill-head h3 {
    margin: 12px 0 0;
    color: #163b34;
    font-size: 28px;
    line-height: 1.14;
    letter-spacing: -0.03em;
}

.guihon-service-fill-head p {
    margin: 14px 0 0;
    color: #5b6d67;
    font-size: 15px;
    line-height: 1.75;
}

.guihon-service-fill-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #3a7d6f;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.guihon-service-fill-kicker::before {
    content: "";
    width: 30px;
    height: 1px;
    background: currentColor;
}

.guihon-service-fill-steps {
    display: grid;
    gap: 18px;
    margin-top: 22px;
}

.guihon-service-fill-step {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 14px;
    align-items: start;
}

.guihon-service-fill-step + .guihon-service-fill-step {
    padding-top: 18px;
    border-top: 1px solid rgba(var(--home9-brand-rgb), 0.1);
}

.guihon-service-fill-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: linear-gradient(135deg, #3eaf8e 0%, #154e44 100%);
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.guihon-service-fill-step strong {
    display: block;
    color: #163b34;
    font-size: 17px;
    line-height: 1.3;
}

.guihon-service-fill-step p {
    margin: 8px 0 0;
    color: #587069;
    font-size: 14px;
    line-height: 1.7;
}

.guihon-service-fill-checklist {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.guihon-service-fill-checklist span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(var(--home9-brand-rgb), 0.08);
    color: #18463a;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
}

.guihon-service-faq .home9-question-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.guihon-service-faq .home9-question-form {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.guihon-service-faq .home9-question-actions {
    margin-top: auto;
}

.home9-voice-note {
    padding: 18px 18px 16px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.06);
}

.home9-voice-note-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.home9-voice-note-text {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 14px;
    line-height: 1.7;
}

.home9-voice-note-timer {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 64px;
    min-height: 36px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.home9-voice-note-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.home9-voice-note-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.home9-voice-note-btn:hover,
.home9-voice-note-btn:focus-visible {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.28);
    background: rgba(255, 255, 255, 0.12);
    transform: translateY(-1px);
}

.home9-voice-note-btn.is-primary {
    border-color: rgba(var(--home9-accent-rgb), 0.4);
    background: linear-gradient(135deg, rgba(var(--home9-accent-rgb), 0.42) 0%, rgba(var(--home9-brand-rgb), 0.4) 100%);
}

.home9-voice-note-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
    transform: none;
}

.home9-voice-note-status {
    margin: 14px 0 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
    line-height: 1.65;
}

.home9-voice-note-status.is-recording {
    color: #baf7dd;
}

.home9-voice-note-status.is-error {
    color: #ffd7d7;
}

.home9-voice-note-player {
    width: 100%;
    margin-top: 14px;
    filter: saturate(0.9);
}

@media (max-width: 767.98px) {
    .guihon-service-fill-card {
        padding: 20px 18px;
        border-radius: 22px;
    }

    .guihon-service-fill-head h3 {
        font-size: 24px;
    }

    .guihon-service-fill-step {
        grid-template-columns: minmax(0, 1fr);
    }

    .guihon-service-fill-step + .guihon-service-fill-step {
        padding-top: 16px;
    }

    .guihon-service-fill-number {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .guihon-service-fill-checklist span {
        min-height: 38px;
        font-size: 12px;
    }

    .home9-voice-note {
        padding: 16px;
        border-radius: 18px;
    }

    .home9-voice-note-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .home9-voice-note-timer {
        min-height: 34px;
    }

    .home9-voice-note-actions {
        gap: 8px;
    }

    .home9-voice-note-btn {
        width: 100%;
    }
}

.guihon-location-detail-area {
    padding: 120px 0 110px;
    background:
        linear-gradient(180deg, rgba(var(--home9-brand-rgb), 0.05) 0%, rgba(var(--home9-brand-rgb), 0.02) 18%, #ffffff 42%),
        #ffffff;
}

.guihon-location-gallery {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.guihon-location-main-image,
.guihon-location-gallery-thumb,
.guihon-location-summary,
.guihon-location-panel,
.guihon-location-side-card {
    border: 1px solid rgba(17, 37, 59, 0.08);
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(17, 37, 59, 0.08);
}

.guihon-location-main-image {
    position: relative;
    overflow: hidden;
    border-radius: 32px;
}

.guihon-location-main-image img {
    width: 100%;
    min-height: 520px;
    object-fit: cover;
    display: block;
}

.guihon-location-main-overlay {
    position: absolute;
    inset: auto 20px 20px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.guihon-location-pill-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.guihon-location-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 999px;
    background: rgba(var(--home9-brand-rgb), 0.1);
    color: var(--home9-brand-deeper);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.14);
}

.guihon-location-pill.is-success {
    background: rgba(34, 197, 94, 0.12);
    color: #146534;
    border-color: rgba(34, 197, 94, 0.18);
}

.guihon-location-pill.is-success i {
    font-size: 10px;
}

.guihon-location-pill.is-dark {
    background: rgba(10, 18, 28, 0.66);
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.18);
    backdrop-filter: blur(10px);
}

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

.guihon-location-gallery-thumb {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
}

.guihon-location-gallery-thumb img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.guihon-location-gallery-thumb:hover img {
    transform: scale(1.05);
}

.guihon-location-gallery-label {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    display: inline-flex;
    justify-content: center;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(10, 18, 28, 0.72);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
}

.guihon-location-summary {
    position: sticky;
    top: 118px;
    border-radius: 32px;
    padding: 34px 30px;
}

.guihon-location-title {
    margin: 0 0 16px;
    color: #11253b;
    font-size: 44px;
    line-height: 1.08;
    letter-spacing: -0.03em;
}

.guihon-location-lead,
.guihon-location-panel p,
.guihon-location-side-card p,
.guihon-location-feature-card p {
    margin: 0;
    color: #5f6f81;
    font-size: 15px;
    line-height: 1.8;
}

.guihon-location-quick {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 28px;
}

.guihon-location-quick-item,
.guihon-location-spec-item,
.guihon-location-feature-card {
    border-radius: 22px;
    border: 1px solid rgba(17, 37, 59, 0.08);
    background: linear-gradient(145deg, rgba(var(--home9-brand-rgb), 0.06) 0%, rgba(var(--home9-accent-rgb), 0.06) 100%);
}

.guihon-location-quick-item {
    padding: 16px 18px;
}

.guihon-location-quick-item span,
.guihon-location-price-kicker,
.guihon-location-spec-item span {
    display: block;
    color: #708091;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.guihon-location-quick-item strong,
.guihon-location-spec-item strong {
    display: block;
    margin-top: 8px;
    color: #11253b;
    font-size: 18px;
    line-height: 1.3;
}

.guihon-location-price-box {
    margin-top: 26px;
    padding: 24px;
    border-radius: 28px;
    background: linear-gradient(145deg, rgba(var(--home9-accent-rgb), 0.12) 0%, rgba(var(--home9-brand-rgb), 0.12) 100%);
    border: 1px solid rgba(var(--home9-brand-rgb), 0.12);
}

.guihon-location-price-main {
    margin-top: 10px;
    color: var(--home9-brand-deeper);
    font-size: 42px;
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.03em;
}

.guihon-location-price-main small {
    font-size: 18px;
    font-weight: 700;
    color: #425265;
}

.guihon-location-price-extra {
    display: grid;
    gap: 12px;
    margin: 18px 0 0;
    padding: 0;
}

.guihon-location-price-extra li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.74);
    color: #425265;
    font-size: 14px;
    font-weight: 700;
}

.guihon-location-price-extra li strong {
    color: #11253b;
    font-size: 15px;
    font-weight: 800;
}

.guihon-location-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

.guihon-location-actions .btn,
.guihon-location-secondary-btn {
    min-height: 54px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 800;
}

.guihon-location-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
}

.guihon-location-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 22px;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.16);
    background: #ffffff;
    color: #173d34;
    box-shadow: 0 12px 24px rgba(var(--home9-brand-rgb), 0.08);
}

.guihon-location-secondary-btn:hover,
.guihon-location-secondary-btn:focus-visible {
    color: #173d34;
    transform: translateY(-1px);
    box-shadow: 0 16px 28px rgba(var(--home9-brand-rgb), 0.12);
}

.guihon-location-note {
    margin: 16px 0 0;
    color: #708091;
    font-size: 14px;
    line-height: 1.75;
}

.guihon-location-content {
    margin-top: 42px;
}

.guihon-location-panel,
.guihon-location-side-card {
    border-radius: 30px;
}

.guihon-location-panel {
    padding: 34px 30px;
}

.guihon-location-panel + .guihon-location-panel,
.guihon-location-side-card + .guihon-location-side-card {
    margin-top: 24px;
}

.guihon-location-panel-title,
.guihon-location-side-card h4 {
    margin: 0 0 18px;
    color: #11253b;
    font-size: 28px;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.guihon-location-panel p + p {
    margin-top: 14px;
}

.guihon-location-spec-grid,
.guihon-location-feature-grid {
    display: grid;
    gap: 14px;
}

.guihon-location-spec-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.guihon-location-spec-item {
    padding: 16px 18px;
}

.guihon-location-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.guihon-location-feature-card {
    padding: 22px 20px;
}

.guihon-location-feature-card i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 16px;
    background: rgba(var(--home9-brand-rgb), 0.12);
    color: var(--home9-brand-deeper);
    font-size: 20px;
    margin-bottom: 16px;
}

.guihon-location-feature-card h4 {
    margin: 0 0 8px;
    color: #11253b;
    font-size: 20px;
    line-height: 1.25;
}

.guihon-location-side-card {
    padding: 28px 24px;
}

.guihon-location-side-card--accent {
    background: linear-gradient(145deg, rgba(var(--home9-accent-rgb), 0.12) 0%, rgba(var(--home9-brand-rgb), 0.12) 100%);
}

.guihon-location-side-card .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 0 22px;
    border-radius: 999px;
    margin-top: 18px;
}

.guihon-location-list {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
}

.guihon-location-list li {
    position: relative;
    padding-left: 30px;
    color: #425265;
    font-size: 15px;
    line-height: 1.75;
}

.guihon-location-list li::before {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 2px;
    color: var(--home9-brand);
    font-size: 14px;
}

@media (max-width: 1199.98px) {
    .guihon-location-title {
        font-size: 38px;
    }

    .guihon-location-summary {
        top: 96px;
    }
}

@media (max-width: 991.98px) {
    .guihon-location-detail-area {
        padding: 90px 0 80px;
    }

    .guihon-location-main-image img {
        min-height: 420px;
    }

    .guihon-location-summary {
        position: static;
    }
}

@media (max-width: 767.98px) {
    .guihon-location-title {
        font-size: 32px;
    }

    .guihon-location-main-image,
    .guihon-location-summary,
    .guihon-location-panel,
    .guihon-location-side-card {
        border-radius: 24px;
    }

    .guihon-location-main-image img {
        min-height: 320px;
    }

    .guihon-location-gallery-grid,
    .guihon-location-spec-grid,
    .guihon-location-feature-grid,
    .guihon-location-quick {
        grid-template-columns: minmax(0, 1fr);
    }

    .guihon-location-panel,
    .guihon-location-summary,
    .guihon-location-side-card {
        padding: 24px 20px;
    }

    .guihon-location-price-main {
        font-size: 34px;
    }

    .guihon-location-actions {
        flex-direction: column;
    }

    .guihon-location-actions .btn,
    .guihon-location-secondary-btn {
        width: 100%;
    }
}

.guihon-location-gallery--wide {
    gap: 24px;
}

.guihon-location-gallery-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.guihon-location-gallery-title {
    margin: 14px 0 0;
    color: #11253b;
    font-size: 38px;
    line-height: 1.08;
    letter-spacing: -0.03em;
}

.guihon-location-gallery-note {
    margin: 0;
    color: #5f6f81;
    font-size: 15px;
    line-height: 1.7;
}

.guihon-location-gallery-track {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    padding: 6px 6px 16px;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--home9-brand-rgb), 0.45) rgba(var(--home9-brand-rgb), 0.08);
}

.guihon-location-gallery-track::-webkit-scrollbar {
    height: 10px;
}

.guihon-location-gallery-track::-webkit-scrollbar-track {
    background: rgba(var(--home9-brand-rgb), 0.08);
    border-radius: 999px;
}

.guihon-location-gallery-track::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg, var(--home9-accent) 0%, var(--home9-brand) 100%);
    border-radius: 999px;
}

.guihon-location-gallery-slide {
    position: relative;
    flex: 0 0 min(88vw, 920px);
    overflow: hidden;
    border-radius: 32px;
    border: 1px solid rgba(17, 37, 59, 0.08);
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(17, 37, 59, 0.08);
    scroll-snap-align: start;
}

.guihon-location-gallery-slide img {
    width: 100%;
    height: 620px;
    object-fit: cover;
    display: block;
}

.guihon-location-gallery-slide .guihon-location-gallery-label {
    left: 20px;
    right: auto;
    bottom: 20px;
    padding: 12px 18px;
}

.guihon-location-detail-grid {
    align-items: start;
}

.guihon-location-panel--compact {
    min-height: 100%;
}

.guihon-location-panel-intro {
    margin-bottom: 22px !important;
}

.guihon-location-spec-grid--compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.guihon-location-list-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 24px;
}

.guihon-location-mini-list {
    padding: 22px 20px;
    border-radius: 22px;
    border: 1px solid rgba(17, 37, 59, 0.08);
    background: linear-gradient(145deg, rgba(var(--home9-brand-rgb), 0.05) 0%, rgba(var(--home9-accent-rgb), 0.05) 100%);
}

.guihon-location-mini-list h4 {
    margin: 0 0 14px;
    color: #11253b;
    font-size: 22px;
    line-height: 1.2;
}

@media (max-width: 1199.98px) {
    .guihon-location-gallery-slide img {
        height: 540px;
    }

    .guihon-location-spec-grid--compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .guihon-location-gallery-title {
        font-size: 32px;
    }

    .guihon-location-gallery-slide {
        flex-basis: 88vw;
    }

    .guihon-location-gallery-slide img {
        height: 440px;
    }
}

@media (max-width: 767.98px) {
    .guihon-location-gallery-head {
        align-items: flex-start;
    }

    .guihon-location-gallery-title {
        font-size: 28px;
    }

    .guihon-location-gallery-track {
        gap: 14px;
        padding-right: 2px;
        padding-left: 2px;
    }

    .guihon-location-gallery-slide {
        flex-basis: 90vw;
        border-radius: 24px;
    }

    .guihon-location-gallery-slide img {
        height: 300px;
    }

    .guihon-location-gallery-slide .guihon-location-gallery-label {
        left: 14px;
        bottom: 14px;
        padding: 10px 14px;
    }

    .guihon-location-spec-grid--compact,
    .guihon-location-list-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .guihon-location-mini-list {
        padding: 18px 16px;
    }
}

body.guihon-gallery-open {
    overflow: hidden;
}

.guihon-vehicle-detail {
    padding: 110px 0 90px;
    background: #ffffff;
}

.guihon-vehicle-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(340px, 0.82fr);
    gap: 56px;
    align-items: start;
}

.guihon-vehicle-heading {
    margin-bottom: 24px;
}

.guihon-vehicle-name {
    margin: 0;
    color: #050505;
    font-size: 62px;
    line-height: 0.98;
    letter-spacing: -0.05em;
}

.guihon-vehicle-stage {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 470px;
    padding: 24px;
    border: 0;
    border-radius: 34px;
    background: #ffffff;
    box-shadow: none;
    cursor: zoom-in;
}

.guihon-vehicle-stage img {
    width: 100%;
    max-width: 760px;
    max-height: 430px;
    object-fit: contain;
    display: block;
}

.guihon-vehicle-thumbs-shell {
    margin-top: 26px;
    padding: 34px 28px 26px;
    border-radius: 34px;
    background: #f5f6fa;
}

.guihon-vehicle-thumbs {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 170px;
    gap: 18px;
    overflow-x: auto;
    padding-bottom: 10px;
    scrollbar-width: none;
}

.guihon-vehicle-thumbs::-webkit-scrollbar {
    display: none;
}

.guihon-vehicle-thumb,
.guihon-vehicle-lightbox-thumb {
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
}

.guihon-vehicle-thumb {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    box-shadow: 0 14px 28px rgba(17, 37, 59, 0.12);
    opacity: 0.72;
    transition: transform 0.24s ease, opacity 0.24s ease, box-shadow 0.24s ease;
}

.guihon-vehicle-thumb img {
    width: 100%;
    height: 115px;
    object-fit: cover;
    display: block;
}

.guihon-vehicle-thumb.is-active,
.guihon-vehicle-thumb:hover {
    opacity: 1;
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(17, 37, 59, 0.16);
}

.guihon-vehicle-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
}

.guihon-vehicle-dot {
    width: 18px;
    height: 18px;
    border: 0;
    border-radius: 50%;
    background: #0e76bf;
    opacity: 0.95;
    cursor: pointer;
    transition: transform 0.24s ease, background-color 0.24s ease;
}

.guihon-vehicle-dot.is-active {
    background: #f5ae2a;
    transform: scale(1.08);
}

.guihon-vehicle-sidebar {
    padding-top: 42px;
}

.guihon-vehicle-specs {
    display: grid;
    gap: 24px;
    margin: 0;
    padding: 0;
}

.guihon-vehicle-specs li {
    display: flex;
    align-items: center;
    gap: 18px;
    color: #060606;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.03em;
}

.guihon-vehicle-spec-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    color: #0e76bf;
    font-size: 28px;
    flex: 0 0 42px;
}

.guihon-vehicle-booking {
    margin-top: 40px;
    padding: 30px 28px;
    border: 1px solid rgba(17, 37, 59, 0.08);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 18px 40px rgba(17, 37, 59, 0.08);
}

.guihon-vehicle-booking-kicker {
    display: block;
    color: #708091;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.guihon-vehicle-price {
    display: block;
    margin-top: 12px;
    color: #111111;
    font-size: 40px;
    line-height: 1.04;
    letter-spacing: -0.04em;
}

.guihon-vehicle-price small {
    font-size: 18px;
    font-weight: 700;
    color: #556478;
}

.guihon-vehicle-booking p {
    margin: 14px 0 0;
    color: #5f6f81;
    font-size: 15px;
    line-height: 1.75;
}

.guihon-vehicle-booking-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

.guihon-vehicle-booking-actions .btn,
.guihon-vehicle-call {
    min-height: 54px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 800;
}

.guihon-vehicle-booking-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 26px;
}

.guihon-vehicle-call {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 22px;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.16);
    background: #ffffff;
    color: #173d34;
    box-shadow: 0 12px 24px rgba(var(--home9-brand-rgb), 0.08);
}

.guihon-vehicle-call:hover,
.guihon-vehicle-call:focus-visible {
    color: #173d34;
    transform: translateY(-1px);
}

.guihon-vehicle-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr) 84px;
    align-items: center;
    padding: 30px 22px 34px;
    background: rgba(8, 12, 18, 0.88);
    backdrop-filter: blur(5px);
}

.guihon-vehicle-lightbox-top {
    position: absolute;
    top: 18px;
    left: 24px;
    right: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.guihon-vehicle-lightbox-counter {
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.guihon-vehicle-lightbox-close,
.guihon-vehicle-lightbox-arrow {
    border: 0;
    color: #ffffff;
    cursor: pointer;
}

.guihon-vehicle-lightbox-close {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    font-size: 20px;
}

.guihon-vehicle-lightbox-arrow {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    font-size: 22px;
    justify-self: center;
}

.guihon-vehicle-lightbox-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    width: 100%;
}

.guihon-vehicle-lightbox-body > img {
    width: min(1120px, 100%);
    max-height: 72vh;
    object-fit: contain;
    display: block;
}

.guihon-vehicle-lightbox-thumbs {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 130px;
    gap: 14px;
    overflow-x: auto;
    width: min(820px, 100%);
    padding-bottom: 8px;
    scrollbar-width: none;
}

.guihon-vehicle-lightbox-thumbs::-webkit-scrollbar {
    display: none;
}

.guihon-vehicle-lightbox-thumb {
    overflow: hidden;
    border-radius: 18px;
    opacity: 0.65;
    transition: opacity 0.24s ease, transform 0.24s ease;
}

.guihon-vehicle-lightbox-thumb img {
    width: 100%;
    height: 86px;
    object-fit: cover;
    display: block;
}

.guihon-vehicle-lightbox-thumb.is-active,
.guihon-vehicle-lightbox-thumb:hover {
    opacity: 1;
    transform: translateY(-2px);
}

@media (max-width: 1399.98px) {
    .guihon-vehicle-name {
        font-size: 54px;
    }

    .guihon-vehicle-specs li {
        font-size: 28px;
    }
}

@media (max-width: 1199.98px) {
    .guihon-vehicle-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 36px;
    }

    .guihon-vehicle-sidebar {
        padding-top: 0;
    }

    .guihon-vehicle-specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 24px;
    }

    .guihon-vehicle-specs li {
        font-size: 24px;
    }

    .guihon-vehicle-lightbox {
        grid-template-columns: 72px minmax(0, 1fr) 72px;
    }
}

@media (max-width: 991.98px) {
    .guihon-vehicle-detail {
        padding: 90px 0 74px;
    }

    .guihon-vehicle-name {
        font-size: 46px;
    }

    .guihon-vehicle-stage {
        min-height: 400px;
    }

    .guihon-vehicle-stage img {
        max-height: 360px;
    }

    .guihon-vehicle-thumbs-shell {
        padding: 26px 20px 22px;
    }

    .guihon-vehicle-thumbs {
        grid-auto-columns: 150px;
    }

    .guihon-vehicle-lightbox {
        grid-template-columns: 1fr;
        padding-left: 16px;
        padding-right: 16px;
    }

    .guihon-vehicle-lightbox-arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    .guihon-vehicle-lightbox-arrow.is-prev {
        left: 18px;
    }

    .guihon-vehicle-lightbox-arrow.is-next {
        right: 18px;
    }
}

@media (max-width: 767.98px) {
    .guihon-vehicle-name {
        font-size: 34px;
    }

    .guihon-vehicle-stage {
        min-height: 300px;
        padding: 16px;
        border-radius: 24px;
    }

    .guihon-vehicle-stage img {
        max-height: 260px;
    }

    .guihon-vehicle-thumbs-shell {
        margin-top: 18px;
        padding: 20px 14px 18px;
        border-radius: 24px;
    }

    .guihon-vehicle-thumbs {
        grid-auto-columns: 128px;
        gap: 12px;
    }

    .guihon-vehicle-thumb img {
        height: 88px;
    }

    .guihon-vehicle-dot {
        width: 14px;
        height: 14px;
    }

    .guihon-vehicle-specs {
        grid-template-columns: minmax(0, 1fr);
    }

    .guihon-vehicle-specs li {
        font-size: 22px;
        gap: 14px;
    }

    .guihon-vehicle-spec-icon {
        width: 34px;
        flex-basis: 34px;
        font-size: 22px;
    }

    .guihon-vehicle-booking {
        margin-top: 28px;
        padding: 22px 18px;
        border-radius: 22px;
    }

    .guihon-vehicle-price {
        font-size: 32px;
    }

    .guihon-vehicle-booking-actions {
        flex-direction: column;
    }

    .guihon-vehicle-booking-actions .btn,
    .guihon-vehicle-call {
        width: 100%;
    }

    .guihon-vehicle-lightbox-top {
        top: 12px;
        left: 12px;
        right: 12px;
    }

    .guihon-vehicle-lightbox-counter {
        font-size: 14px;
    }

    .guihon-vehicle-lightbox-close {
        width: 40px;
        height: 40px;
    }

    .guihon-vehicle-lightbox-body {
        gap: 18px;
    }

    .guihon-vehicle-lightbox-body > img {
        max-height: 58vh;
    }

    .guihon-vehicle-lightbox-thumbs {
        grid-auto-columns: 100px;
        gap: 10px;
    }

    .guihon-vehicle-lightbox-thumb img {
        height: 68px;
    }

    .guihon-vehicle-lightbox-arrow {
        width: 46px;
        height: 46px;
        font-size: 18px;
    }

    .guihon-vehicle-lightbox-arrow.is-prev {
        left: 8px;
    }

    .guihon-vehicle-lightbox-arrow.is-next {
        right: 8px;
    }
}

/* Modern refresh: vehicle detail */
.guihon-vehicle-detail {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(720px 360px at 6% 10%, rgba(var(--home9-brand-rgb), 0.11), transparent 62%),
        radial-gradient(620px 320px at 100% 0%, rgba(var(--home9-accent-rgb), 0.14), transparent 58%),
        linear-gradient(180deg, #f9fbfd 0%, #ffffff 34%, #f7f9fc 100%);
}

.guihon-vehicle-detail::before,
.guihon-vehicle-detail::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    filter: blur(18px);
    pointer-events: none;
    z-index: 0;
}

.guihon-vehicle-detail::before {
    width: 260px;
    height: 260px;
    right: -90px;
    top: 110px;
    background: rgba(var(--home9-brand-rgb), 0.12);
}

.guihon-vehicle-detail::after {
    width: 220px;
    height: 220px;
    left: -80px;
    bottom: 120px;
    background: rgba(var(--home9-accent-rgb), 0.12);
}

.guihon-vehicle-detail .container {
    position: relative;
    z-index: 1;
}

.guihon-vehicle-layout {
    gap: 64px;
}

.guihon-vehicle-heading {
    max-width: 780px;
    margin-bottom: 28px;
}

.guihon-vehicle-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(var(--home9-accent-rgb), 0.14) 0%, rgba(var(--home9-brand-rgb), 0.14) 100%);
    border: 1px solid rgba(var(--home9-brand-rgb), 0.12);
    color: var(--home9-brand-deeper);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.guihon-vehicle-name {
    margin-top: 18px;
    color: #08111b;
    font-size: 72px;
    line-height: 0.94;
    letter-spacing: -0.06em;
}

.guihon-vehicle-subtitle {
    max-width: 620px;
    margin: 18px 0 0;
    color: #5a6878;
    font-size: 18px;
    line-height: 1.85;
}

.guihon-vehicle-stage {
    position: relative;
    min-height: 500px;
    padding: 32px 28px 52px;
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 36px;
    background:
        radial-gradient(380px 220px at 15% 20%, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0) 70%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.92) 0%, rgba(244, 247, 251, 0.96) 52%, rgba(238, 243, 249, 1) 100%);
    box-shadow:
        0 36px 70px rgba(17, 37, 59, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.guihon-vehicle-stage::before {
    content: "";
    position: absolute;
    inset: 16px;
    border-radius: 28px;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.08);
    pointer-events: none;
}

.guihon-vehicle-stage:hover {
    transform: translateY(-4px);
    box-shadow:
        0 42px 84px rgba(17, 37, 59, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.guihon-vehicle-stage img {
    max-width: 780px;
    max-height: 452px;
    filter: drop-shadow(0 34px 36px rgba(8, 17, 27, 0.16));
}

.guihon-vehicle-stage-note {
    position: absolute;
    right: 22px;
    bottom: 20px;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(8, 17, 27, 0.82);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: 0 12px 24px rgba(8, 17, 27, 0.16);
}

.guihon-vehicle-thumbs-shell {
    position: relative;
    margin-top: 30px;
    padding: 30px 26px 24px;
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 32px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.92) 0%, rgba(242, 246, 250, 0.98) 100%);
    box-shadow: 0 28px 48px rgba(17, 37, 59, 0.08);
}

.guihon-vehicle-thumbs-shell::before {
    content: "";
    position: absolute;
    inset: 14px;
    border-radius: 24px;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.06);
    pointer-events: none;
}

.guihon-vehicle-thumbs {
    gap: 16px;
}

.guihon-vehicle-thumb {
    border-radius: 24px;
    opacity: 0.76;
    box-shadow: 0 16px 30px rgba(17, 37, 59, 0.1);
}

.guihon-vehicle-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 2px solid transparent;
    border-radius: 24px;
    transition: border-color 0.24s ease;
}

.guihon-vehicle-thumb.is-active,
.guihon-vehicle-thumb:hover {
    box-shadow: 0 22px 34px rgba(17, 37, 59, 0.14);
}

.guihon-vehicle-thumb.is-active::after {
    border-color: rgba(var(--home9-brand-rgb), 0.36);
}

.guihon-vehicle-dot {
    width: 13px;
    height: 13px;
    background: rgba(14, 118, 191, 0.2);
    box-shadow: inset 0 0 0 4px #0e76bf;
}

.guihon-vehicle-dot.is-active {
    background: #f5ae2a;
    box-shadow: 0 0 0 8px rgba(245, 174, 42, 0.18);
}

.guihon-vehicle-sidebar {
    position: sticky;
    top: 118px;
    padding-top: 24px;
}

.guihon-vehicle-sidebar-card {
    position: relative;
    overflow: hidden;
    padding: 24px;
    border-radius: 34px;
    border: 1px solid rgba(255, 255, 255, 0.7);
    background:
        linear-gradient(160deg, rgba(8, 17, 27, 0.97) 0%, rgba(15, 34, 49, 0.95) 46%, rgba(19, 141, 114, 0.9) 100%);
    box-shadow: 0 34px 64px rgba(10, 24, 36, 0.22);
    color: #ffffff;
}

.guihon-vehicle-sidebar-card::before {
    content: "";
    position: absolute;
    top: -90px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
}

.guihon-vehicle-sidebar-card::after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 140px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.04) 100%);
    pointer-events: none;
}

.guihon-vehicle-sidebar-top {
    position: relative;
    z-index: 1;
    padding-bottom: 18px;
}

.guihon-vehicle-sidebar-badge {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.guihon-vehicle-sidebar-top p {
    margin: 14px 0 0;
    max-width: 360px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 15px;
    line-height: 1.75;
}

.guihon-vehicle-specs {
    position: relative;
    z-index: 1;
    gap: 14px;
}

.guihon-vehicle-specs li {
    gap: 16px;
    padding: 17px 18px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 24px;
    line-height: 1.2;
    transition: transform 0.24s ease, background-color 0.24s ease, border-color 0.24s ease;
    backdrop-filter: blur(8px);
}

.guihon-vehicle-specs li:hover {
    transform: translateX(4px);
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.14);
}

.guihon-vehicle-spec-icon {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.12);
    color: #98decb;
    font-size: 22px;
    flex: 0 0 48px;
}

.guihon-vehicle-booking {
    position: relative;
    z-index: 1;
    margin-top: 22px;
    padding: 24px;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.06) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
}

.guihon-vehicle-booking-kicker {
    color: rgba(255, 255, 255, 0.68);
}

.guihon-vehicle-price {
    color: #ffffff;
}

.guihon-vehicle-price small {
    color: rgba(255, 255, 255, 0.78);
}

.guihon-vehicle-booking p {
    color: rgba(255, 255, 255, 0.76);
}

.guihon-vehicle-booking-actions .btn {
    border: 0;
    background: linear-gradient(90deg, #f5ae2a 0%, #f9c857 100%);
    color: #101214;
    box-shadow: 0 18px 34px rgba(245, 174, 42, 0.22);
}

.guihon-vehicle-booking-actions .btn:hover,
.guihon-vehicle-booking-actions .btn:focus-visible {
    color: #101214;
    transform: translateY(-1px);
}

.guihon-vehicle-call {
    border-color: rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
    box-shadow: none;
}

.guihon-vehicle-call:hover,
.guihon-vehicle-call:focus-visible {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.14);
}

.guihon-vehicle-lightbox {
    background:
        radial-gradient(560px 280px at 50% 100%, rgba(var(--home9-brand-rgb), 0.16), transparent 62%),
        rgba(5, 9, 14, 0.94);
    backdrop-filter: blur(8px);
}

.guihon-vehicle-lightbox-top {
    top: 16px;
}

.guihon-vehicle-lightbox-counter {
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
    display: inline-flex;
    align-items: center;
}

.guihon-vehicle-lightbox-close,
.guihon-vehicle-lightbox-arrow {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 18px 28px rgba(0, 0, 0, 0.18);
    transition: transform 0.24s ease, background-color 0.24s ease, border-color 0.24s ease;
}

.guihon-vehicle-lightbox-close:hover,
.guihon-vehicle-lightbox-arrow:hover {
    transform: scale(1.04);
    background: rgba(255, 255, 255, 0.13);
    border-color: rgba(255, 255, 255, 0.16);
}

.guihon-vehicle-lightbox-body > img {
    border-radius: 32px;
    background: rgba(255, 255, 255, 0.04);
    box-shadow: 0 34px 70px rgba(0, 0, 0, 0.28);
}

.guihon-vehicle-lightbox-thumbs {
    padding: 10px 0 8px;
}

.guihon-vehicle-lightbox-thumb {
    border-radius: 18px;
    border: 2px solid transparent;
}

.guihon-vehicle-lightbox-thumb.is-active {
    border-color: rgba(245, 174, 42, 0.9);
}

@media (max-width: 1399.98px) {
    .guihon-vehicle-name {
        font-size: 64px;
    }
}

@media (max-width: 1199.98px) {
    .guihon-vehicle-sidebar {
        position: static;
        top: auto;
        padding-top: 0;
    }

    .guihon-vehicle-specs li {
        font-size: 22px;
    }
}

@media (max-width: 991.98px) {
    .guihon-vehicle-name {
        font-size: 52px;
    }

    .guihon-vehicle-subtitle {
        font-size: 16px;
    }

    .guihon-vehicle-stage {
        min-height: 430px;
        padding-bottom: 48px;
    }

    .guihon-vehicle-specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .guihon-vehicle-specs li {
        font-size: 20px;
    }
}

@media (max-width: 767.98px) {
    .guihon-vehicle-detail {
        padding: 82px 0 66px;
    }

    .guihon-vehicle-name {
        font-size: 40px;
    }

    .guihon-vehicle-subtitle {
        margin-top: 14px;
        font-size: 15px;
        line-height: 1.75;
    }

    .guihon-vehicle-stage {
        min-height: 320px;
        padding: 18px 16px 54px;
        border-radius: 26px;
    }

    .guihon-vehicle-stage::before {
        inset: 10px;
        border-radius: 20px;
    }

    .guihon-vehicle-stage img {
        max-height: 248px;
    }

    .guihon-vehicle-stage-note {
        right: 14px;
        bottom: 12px;
        min-height: 34px;
        padding: 0 12px;
        font-size: 11px;
    }

    .guihon-vehicle-thumbs-shell {
        padding: 18px 14px 16px;
        border-radius: 24px;
    }

    .guihon-vehicle-thumbs-shell::before {
        inset: 8px;
        border-radius: 18px;
    }

    .guihon-vehicle-sidebar-card {
        padding: 18px;
        border-radius: 24px;
    }

    .guihon-vehicle-specs {
        grid-template-columns: minmax(0, 1fr);
    }

    .guihon-vehicle-specs li {
        padding: 15px 14px;
        font-size: 18px;
        border-radius: 18px;
    }

    .guihon-vehicle-spec-icon {
        width: 42px;
        height: 42px;
        border-radius: 14px;
        flex-basis: 42px;
        font-size: 19px;
    }

    .guihon-vehicle-booking {
        padding: 18px;
        border-radius: 20px;
    }

    .guihon-vehicle-price {
        font-size: 34px;
    }
}

/* Bootstrap vehicle detail */
.bootstrap-vehicle-section {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(720px 360px at 6% 10%, rgba(var(--home9-brand-rgb), 0.1), transparent 62%),
        radial-gradient(620px 320px at 100% 0%, rgba(var(--home9-accent-rgb), 0.12), transparent 58%),
        linear-gradient(180deg, #f9fbfd 0%, #ffffff 34%, #f7f9fc 100%);
}

.bootstrap-vehicle-section::before,
.bootstrap-vehicle-section::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(18px);
}

.bootstrap-vehicle-section::before {
    width: 240px;
    height: 240px;
    top: 110px;
    right: -70px;
    background: rgba(var(--home9-brand-rgb), 0.12);
}

.bootstrap-vehicle-section::after {
    width: 220px;
    height: 220px;
    bottom: 100px;
    left: -70px;
    background: rgba(var(--home9-accent-rgb), 0.12);
}

.bootstrap-vehicle-section .container {
    position: relative;
    z-index: 1;
}

.bootstrap-vehicle-badge {
    min-height: 40px;
    padding: 0 18px;
    background: linear-gradient(90deg, rgba(var(--home9-accent-rgb), 0.14) 0%, rgba(var(--home9-brand-rgb), 0.14) 100%);
    border: 1px solid rgba(var(--home9-brand-rgb), 0.12);
    color: var(--home9-brand-deeper);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
}

.bootstrap-vehicle-title {
    color: #08111b;
    letter-spacing: -0.06em;
    line-height: 1.06;
    padding-top: 0.08em;
    overflow: visible;
}

.bootstrap-vehicle-lead {
    max-width: 650px;
    font-size: 1.1rem;
    line-height: 1.85;
}

.bootstrap-vehicle-meta-row {
    max-width: 720px;
}

.bootstrap-vehicle-meta-pill {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(var(--home9-brand-rgb), 0.1);
    box-shadow: 0 14px 24px rgba(17, 37, 59, 0.06);
    color: #102334;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.02em;
}

.bootstrap-vehicle-stage-card {
    background:
        radial-gradient(380px 220px at 15% 20%, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0) 70%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.92) 0%, rgba(244, 247, 251, 0.96) 52%, rgba(238, 243, 249, 1) 100%);
    box-shadow:
        0 36px 70px rgba(17, 37, 59, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}

.bootstrap-vehicle-stage-button {
    position: relative;
    display: block;
    width: 100%;
    cursor: zoom-in;
}

.bootstrap-vehicle-stage-counter {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(var(--home9-brand-rgb), 0.1);
    color: #0b1a28;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: 0 16px 26px rgba(17, 37, 59, 0.08);
}

.bootstrap-vehicle-stage-inner {
    min-height: 500px;
}

.bootstrap-vehicle-stage-image {
    height: 500px;
    object-fit: contain;
    padding: 34px 28px 58px;
    filter: drop-shadow(0 34px 36px rgba(8, 17, 27, 0.16));
}

.bootstrap-vehicle-zoom {
    position: absolute;
    right: 20px;
    bottom: 20px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(8, 17, 27, 0.82);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: 0 12px 24px rgba(8, 17, 27, 0.16);
}

.bootstrap-vehicle-thumb-card {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.92) 0%, rgba(242, 246, 250, 0.98) 100%);
    box-shadow: 0 28px 48px rgba(17, 37, 59, 0.08) !important;
}

.bootstrap-vehicle-thumb {
    border-radius: 1.5rem;
    overflow: hidden;
    opacity: 0.76;
    box-shadow: 0 16px 30px rgba(17, 37, 59, 0.1);
    transition: transform 0.24s ease, opacity 0.24s ease, box-shadow 0.24s ease;
}

.bootstrap-vehicle-thumb img,
.bootstrap-vehicle-modal-thumb img {
    width: 100%;
    height: 110px;
    object-fit: cover;
    display: block;
}

.bootstrap-vehicle-thumb.is-active,
.bootstrap-vehicle-thumb:hover,
.bootstrap-vehicle-modal-thumb.is-active,
.bootstrap-vehicle-modal-thumb:hover {
    opacity: 1;
    transform: translateY(-2px);
    box-shadow: 0 20px 34px rgba(17, 37, 59, 0.14);
}

.bootstrap-vehicle-dot {
    width: 13px;
    height: 13px;
    border: 0;
    border-radius: 50%;
    background: rgba(14, 118, 191, 0.2);
    box-shadow: inset 0 0 0 4px #0e76bf;
    transition: transform 0.24s ease, box-shadow 0.24s ease, background-color 0.24s ease;
}

.bootstrap-vehicle-dot.is-active {
    background: #f5ae2a;
    box-shadow: 0 0 0 8px rgba(245, 174, 42, 0.18);
}

.bootstrap-vehicle-summary {
    top: 118px;
    background:
        linear-gradient(160deg, rgba(8, 17, 27, 0.97) 0%, rgba(15, 34, 49, 0.95) 46%, rgba(19, 141, 114, 0.9) 100%);
    box-shadow: 0 34px 64px rgba(10, 24, 36, 0.22) !important;
}

.bootstrap-vehicle-summary-badge {
    min-height: 38px;
    padding: 16px 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.bootstrap-vehicle-spec-list {
    position: relative;
}

.bootstrap-vehicle-spec-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 17px 18px;
    border-radius: 1.4rem;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.2;
    transition: transform 0.24s ease, background-color 0.24s ease, border-color 0.24s ease;
    backdrop-filter: blur(8px);
}

.bootstrap-vehicle-spec-item:hover {
    transform: translateX(4px);
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.14);
}

.bootstrap-vehicle-spec-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.12);
    color: #98decb;
    font-size: 1.3rem;
    flex: 0 0 48px;
}

.bootstrap-vehicle-price-card {
    background: #ffffff;
    border: 1px solid rgba(17, 37, 59, 0.08);
    box-shadow: 0 18px 38px rgba(8, 17, 27, 0.12);
    backdrop-filter: none;
}

.bootstrap-vehicle-price-value {
    color: #08111b;
    font-size: 2.5rem;
    line-height: 1.04;
    letter-spacing: -0.04em;
}

.bootstrap-vehicle-price-value small {
    font-size: 1rem;
    font-weight: 700;
    color: #556478;
}

.bootstrap-vehicle-price-card .text-secondary {
    color: #5f6f81 !important;
}

.bootstrap-vehicle-stage-button::before,
.bootstrap-vehicle-stage-button::after,
.bootstrap-vehicle-thumb::before,
.bootstrap-vehicle-thumb::after,
.bootstrap-vehicle-modal-thumb::before,
.bootstrap-vehicle-modal-thumb::after,
.bootstrap-vehicle-summary .btn::before,
.bootstrap-vehicle-summary .btn::after {
    content: none !important;
}

.bootstrap-vehicle-summary .btn {
    overflow: visible;
}

.bootstrap-vehicle-related {
    padding: 30px 0 100px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #ffffff 18%, #f8fbfd 100%);
}

.bootstrap-vehicle-related-head {
    max-width: 760px;
    margin-bottom: 34px;
}

.bootstrap-vehicle-related-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(var(--home9-accent-rgb), 0.12) 0%, rgba(var(--home9-brand-rgb), 0.12) 100%);
    border: 1px solid rgba(var(--home9-brand-rgb), 0.12);
    color: var(--home9-brand-deeper);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.bootstrap-vehicle-related-title {
    margin: 16px 0 12px;
    color: #08111b;
    font-size: clamp(2rem, 1.5rem + 2vw, 3.2rem);
    line-height: 1.08;
    letter-spacing: -0.04em;
}

.bootstrap-vehicle-related-text {
    margin: 0;
    color: #5f6f81;
    font-size: 1rem;
    line-height: 1.8;
}

.bootstrap-vehicle-related .home9-catalog-card {
    border-radius: 30px;
}

.bootstrap-vehicle-related .home9-catalog-link {
    text-decoration: none;
}

.home9-catalog-media-link {
    display: block;
    color: inherit;
    text-decoration: none;
}

.home9-catalog-title-link {
    color: inherit;
    text-decoration: none;
}

.home9-catalog-title-link:hover,
.home9-catalog-title-link:focus-visible {
    color: inherit;
    text-decoration: none;
}

.guihon-actualite-hero-image {
    height: clamp(240px, 34vw, 420px);
    object-fit: cover;
    object-position: center;
}

.guihon-actualite-title {
    font-size: clamp(2rem, 1.35rem + 1.9vw, 3rem);
    line-height: 1.12;
    letter-spacing: -0.03em;
}

.guihon-actualite-sidebar-sticky {
    position: sticky;
    top: 120px;
}

.guihon-actualite-sidebar-list {
    display: grid;
    gap: 16px;
}

.guihon-actualite-sidebar-card {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    padding: 14px;
    border: 1px solid rgba(12, 50, 50, 0.1);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(247, 249, 248, 0.98) 100%);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.guihon-actualite-sidebar-card:hover,
.guihon-actualite-sidebar-card:focus-within {
    transform: translateY(-3px);
    border-color: rgba(var(--home9-brand-rgb), 0.2);
    box-shadow: 0 18px 34px rgba(12, 33, 29, 0.1);
}

.guihon-actualite-sidebar-thumb {
    display: block;
    width: 96px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 18px;
    background: #0c3232;
}

.guihon-actualite-sidebar-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.guihon-actualite-sidebar-card:hover .guihon-actualite-sidebar-thumb img,
.guihon-actualite-sidebar-card:focus-within .guihon-actualite-sidebar-thumb img {
    transform: scale(1.05);
}

.guihon-actualite-sidebar-content {
    min-width: 0;
}

.guihon-actualite-sidebar-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    margin-bottom: 10px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(var(--home9-brand-rgb), 0.12);
    color: var(--home9-brand-deep);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.guihon-actualite-sidebar-title {
    margin: 0 0 8px;
    font-size: 16px;
    line-height: 1.4;
}

.guihon-actualite-sidebar-title a {
    color: #153a34;
    text-decoration: none;
}

.guihon-actualite-sidebar-title a:hover,
.guihon-actualite-sidebar-title a:focus-visible {
    color: var(--home9-brand-deep);
    outline: none;
}

.guihon-actualite-sidebar-meta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #5a6d66;
    font-size: 13px;
    line-height: 1.5;
}

.guihon-actualite-sidebar-meta i {
    color: var(--home9-accent);
    font-size: 12px;
}

@media (max-width: 991.98px) {
    .guihon-actualite-sidebar-sticky {
        position: static;
    }
}

.guihon-quick-support-modal .modal-dialog {
    max-width: 1040px;
    margin: 1.25rem auto;
}

.guihon-quick-support-modal .modal-content {
    position: relative;
    overflow: hidden;
    border-radius: 32px;
    background: #ffffff;
    box-shadow: 0 30px 70px rgba(9, 25, 23, 0.18);
}

.guihon-quick-support-close {
    position: absolute;
    top: 22px;
    right: 22px;
    z-index: 3;
}

.guihon-quick-support-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 330px);
    min-height: 100%;
}

.guihon-quick-support-aside {
    padding: 26px;
    background:
        radial-gradient(420px 240px at 100% 0%, rgba(var(--home9-accent-rgb), 0.24), transparent 68%),
        linear-gradient(180deg, #123c37 0%, #0a2623 100%);
    color: #ffffff;
}

.guihon-quick-support-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    margin-bottom: 16px;
    padding: 0 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, #fff2cf 0%, #ffd779 100%);
    border: 1px solid rgba(242, 140, 16, 0.22);
    color: #8e4d00;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    box-shadow: 0 14px 28px rgba(242, 140, 16, 0.18);
}

.guihon-quick-support-title {
    position: relative;
    display: inline-block;
    color: #0d302b;
    font-size: clamp(2.45rem, 1.8rem + 1.45vw, 3.45rem);
    font-weight: 900;
    line-height: 0.96;
    letter-spacing: -0.05em;
    padding-bottom: 14px;
    text-shadow: 0 14px 28px rgba(18, 60, 55, 0.08);
}

.guihon-quick-support-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(190px, 100%);
    height: 7px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--home9-accent) 0%, #f28c10 100%);
    box-shadow: 0 12px 22px rgba(var(--home9-accent-rgb), 0.22);
}

.guihon-quick-support-text {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 15px;
    line-height: 1.8;
}

.guihon-quick-support-contact-list {
    display: grid;
    gap: 14px;
    margin: 26px 0;
}

.guihon-quick-support-contact-card {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 16px 18px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
    text-decoration: none;
    transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.guihon-quick-support-contact-card:hover,
.guihon-quick-support-contact-card:focus-visible {
    color: #ffffff;
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.2);
    outline: none;
}

.guihon-quick-support-contact-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255, 247, 228, 0.98) 0%, rgba(255, 223, 151, 0.96) 100%);
    border: 1px solid rgba(255, 216, 128, 0.8);
    color: #8f4700;
    font-size: 22px;
    box-shadow:
        0 14px 24px rgba(7, 19, 18, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.guihon-quick-support-contact-icon i {
    filter: drop-shadow(0 2px 4px rgba(143, 71, 0, 0.18));
}

.guihon-quick-support-contact-card strong,
.guihon-quick-support-step strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.45;
}

.guihon-quick-support-contact-card small,
.guihon-quick-support-step span,
.guihon-quick-support-points li {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
    line-height: 1.7;
}

.guihon-quick-support-note {
    margin-bottom: 26px;
}

.guihon-quick-support-note h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.3;
}

.guihon-quick-support-points {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.guihon-quick-support-points li {
    position: relative;
    padding-left: 28px;
}

.guihon-quick-support-points li::before {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 2px;
    color: var(--home9-accent);
    font-size: 13px;
}

.guihon-quick-support-steps {
    display: grid;
    gap: 12px;
}

.guihon-quick-support-step {
    padding: 16px 18px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.guihon-quick-support-body {
    padding: 26px;
}

.guihon-quick-support-header-copy {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 26px;
    padding-right: 0;
    padding-left: 0;
}

.guihon-quick-support-body .alert {
    border-radius: 18px;
}

.guihon-quick-support-section + .guihon-quick-support-section {
    margin-top: 24px;
}

.guihon-quick-support-section-head {
    margin-bottom: 16px;
}

.guihon-quick-support-section-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin-bottom: 10px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(var(--home9-brand-rgb), 0.08);
    color: var(--home9-brand-deep);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.guihon-quick-support-section-title {
    margin: 0;
    color: #153a34;
    font-size: 20px;
    line-height: 1.25;
}

.guihon-quick-support-body .form-label {
    margin-bottom: 8px;
    color: #153a34;
    font-size: 14px;
    font-weight: 700;
}

.guihon-quick-support-body .form-control,
.guihon-quick-support-body .form-select {
    min-height: 54px;
    border: 1px solid rgba(18, 60, 55, 0.14);
    border-radius: 18px;
    background: #f8fbfa;
    color: #153a34;
    box-shadow: none;
}

.guihon-quick-support-body textarea.form-control {
    min-height: 112px;
    padding-top: 14px;
}

.guihon-quick-support-body .form-control:focus,
.guihon-quick-support-body .form-select:focus {
    border-color: rgba(var(--home9-brand-rgb), 0.32);
    background: #ffffff;
    box-shadow: 0 0 0 0.2rem rgba(var(--home9-brand-rgb), 0.08);
}

.guihon-quick-support-location-row {
    display: flex;
    align-items: stretch;
    gap: 12px;
}

.guihon-quick-support-location-row .btn {
    flex: 0 0 auto;
    min-height: 54px;
    padding: 0 22px;
    border-radius: 18px;
    font-weight: 700;
    white-space: nowrap;
}

.guihon-quick-support-map-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--home9-brand);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.guihon-quick-support-map-link:hover,
.guihon-quick-support-map-link:focus-visible {
    color: var(--home9-brand-deep);
    text-decoration: underline;
}

.guihon-quick-support-upload {
    padding: 16px;
    border: 1px dashed rgba(var(--home9-brand-rgb), 0.22);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(var(--home9-brand-rgb), 0.03) 0%, rgba(var(--home9-accent-rgb), 0.04) 100%);
}

.guihon-quick-support-upload-text {
    margin-top: 10px;
    color: #5a6d66;
    font-size: 13px;
    line-height: 1.7;
}

.guihon-quick-support-body .home9-voice-note {
    border-color: rgba(18, 60, 55, 0.14);
    background: linear-gradient(180deg, rgba(var(--home9-brand-rgb), 0.035) 0%, rgba(var(--home9-accent-rgb), 0.05) 100%);
}

.guihon-quick-support-body .home9-voice-note-text,
.guihon-quick-support-body .home9-voice-note-status {
    color: #5a6d66;
}

.guihon-quick-support-body .home9-voice-note-timer {
    background: rgba(var(--home9-brand-rgb), 0.08);
    color: #153a34;
}

.guihon-quick-support-body .home9-voice-note-btn {
    border-color: rgba(18, 60, 55, 0.14);
    background: #ffffff;
    color: #153a34;
}

.guihon-quick-support-body .home9-voice-note-btn:hover,
.guihon-quick-support-body .home9-voice-note-btn:focus-visible {
    color: #153a34;
    border-color: rgba(var(--home9-brand-rgb), 0.28);
    background: rgba(var(--home9-brand-rgb), 0.06);
}

.guihon-quick-support-body .home9-voice-note-btn.is-primary,
.guihon-quick-support-body .home9-voice-note-btn.is-primary:hover,
.guihon-quick-support-body .home9-voice-note-btn.is-primary:focus-visible {
    border-color: #0f6a54;
    background: linear-gradient(135deg, #0f6a54 0%, #0a8b68 100%);
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(15, 106, 84, 0.2);
}

.guihon-quick-support-body .home9-voice-note-status.is-recording {
    color: #1b7d57;
}

.guihon-quick-support-body .home9-voice-note-status.is-error {
    color: #b54747;
}

.guihon-quick-support-preview {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.guihon-quick-support-preview-item {
    margin: 0;
    overflow: hidden;
    border-radius: 18px;
    background: #ffffff;
    border: 1px solid rgba(var(--home9-brand-rgb), 0.08);
}

.guihon-quick-support-preview-item img {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: block;
    object-fit: cover;
}

.guihon-quick-support-preview-item figcaption {
    padding: 10px 12px 12px;
    color: #153a34;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.45;
    word-break: break-word;
}

@media (max-width: 991.98px) {
    .guihon-quick-support-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .guihon-quick-support-aside,
    .guihon-quick-support-body {
        padding: 24px;
    }

    .guihon-quick-support-header-copy {
        padding-right: 0;
    }

    .guihon-quick-support-preview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .guihon-quick-support-modal .modal-dialog {
        margin: 0.75rem;
    }

    .guihon-quick-support-modal .modal-content {
        border-radius: 24px;
    }

    .guihon-quick-support-close {
        top: 16px;
        right: 16px;
    }

    .guihon-quick-support-aside,
    .guihon-quick-support-body {
        padding: 20px;
    }

    .guihon-quick-support-header-copy {
        margin-bottom: 22px;
        padding-right: 0;
    }

    .guihon-quick-support-location-row {
        flex-direction: column;
    }

    .guihon-quick-support-location-row .btn,
    .guihon-quick-support-body .btn {
        width: 100%;
    }

    .guihon-quick-support-preview {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}

.bootstrap-vehicle-modal {
    z-index: 20000 !important;
    background: rgba(5, 9, 14, 0.16);
    backdrop-filter: blur(4px);
}

.bootstrap-vehicle-gallery-open .modal-backdrop {
    z-index: 19990 !important;
    background-color: rgba(3, 6, 10, 0.28);
}

.bootstrap-vehicle-gallery-open header,
.bootstrap-vehicle-gallery-open .scroll__top {
    opacity: 0.72 !important;
    pointer-events: none !important;
}

.bootstrap-vehicle-modal .modal-dialog {
    width: 100vw;
    max-width: none;
    height: 100vh;
    margin: 0;
}

.bootstrap-vehicle-modal .modal-content {
    min-height: 100vh;
    border-radius: 0;
    background:
        radial-gradient(680px 360px at 50% 100%, rgba(var(--home9-brand-rgb), 0.12), transparent 62%),
        linear-gradient(180deg, rgba(5, 9, 14, 0.28) 0%, rgba(7, 13, 20, 0.42) 100%);
}

.bootstrap-vehicle-modal-header {
    padding: 20px 28px 14px;
    justify-content: space-between;
    align-items: center;
}

.bootstrap-vehicle-modal-counter {
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
}

.bootstrap-vehicle-modal-close {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    opacity: 1;
    background-color: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 18px 28px rgba(0, 0, 0, 0.2);
}

.bootstrap-vehicle-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 0 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.bootstrap-vehicle-modal-carousel {
    flex: 1 1 auto;
    min-height: 0;
}

.bootstrap-vehicle-modal-carousel .carousel-inner,
.bootstrap-vehicle-modal-stage,
.bootstrap-vehicle-modal-carousel .carousel-item {
    height: 100%;
}

.bootstrap-vehicle-modal-stage {
    position: relative;
    background:
        radial-gradient(560px 280px at 50% 100%, rgba(var(--home9-brand-rgb), 0.18), transparent 62%),
        rgba(5, 9, 14, 0.72);
    border-radius: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 30px 60px rgba(0, 0, 0, 0.18);
}

.bootstrap-vehicle-modal-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 28px 92px 22px;
}

.bootstrap-vehicle-modal .carousel-control-prev,
.bootstrap-vehicle-modal .carousel-control-next {
    width: 88px;
    opacity: 1;
}

.bootstrap-vehicle-control {
    opacity: 1;
}

.bootstrap-vehicle-control-shell {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.1) 0%, rgba(var(--home9-accent-rgb), 0.14) 100%);
    border: 1px solid rgba(var(--home9-accent-rgb), 0.22);
    box-shadow: 0 18px 28px rgba(0, 0, 0, 0.2);
    color: #f5ae2a;
    font-size: 16px;
    transition: transform 0.24s ease, background-color 0.24s ease, border-color 0.24s ease;
}

.bootstrap-vehicle-control:hover .bootstrap-vehicle-control-shell {
    transform: scale(1.04);
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.22);
}

.bootstrap-vehicle-modal-thumbs-row {
    display: flex;
    align-items: center;
    gap: 14px;
    overflow-x: auto;
    max-width: 100%;
    padding: 4px 2px 6px;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, 0.28) transparent;
}

.bootstrap-vehicle-modal-thumbs-row::-webkit-scrollbar {
    height: 8px;
}

.bootstrap-vehicle-modal-thumbs-row::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.24);
    border-radius: 999px;
}

.bootstrap-vehicle-modal-thumbs-row::-webkit-scrollbar-track {
    background: transparent;
}

.bootstrap-vehicle-modal-thumb {
    flex: 0 0 132px;
    border-radius: 1.2rem;
    overflow: hidden;
    opacity: 0.72;
    box-shadow: 0 16px 28px rgba(0, 0, 0, 0.18);
    transition: transform 0.24s ease, opacity 0.24s ease, box-shadow 0.24s ease;
}

.bootstrap-vehicle-modal-thumb.is-active {
    box-shadow: 0 20px 34px rgba(0, 0, 0, 0.28);
}

@media (max-width: 1199.98px) {
    .bootstrap-vehicle-title {
        font-size: calc(1.85rem + 3vw);
    }

    .bootstrap-vehicle-summary {
        top: auto;
    }

    .bootstrap-vehicle-spec-item {
        font-size: 1.1rem;
    }
}

@media (max-width: 991.98px) {
    .bootstrap-vehicle-stage-inner {
        min-height: 420px;
    }

    .bootstrap-vehicle-stage-image {
        height: 420px;
        padding: 26px 20px 54px;
    }

    .bootstrap-vehicle-thumb img,
    .bootstrap-vehicle-modal-thumb img {
        height: 92px;
    }

    .bootstrap-vehicle-modal-body {
        padding: 0 20px 20px;
    }

    .bootstrap-vehicle-modal-header {
        padding: 16px 20px 12px;
    }

    .bootstrap-vehicle-modal-image {
        padding: 24px 68px 18px;
    }

    .bootstrap-vehicle-modal-thumb {
        flex-basis: 118px;
    }
}

@media (max-width: 767.98px) {
    .bootstrap-vehicle-badge {
        min-height: 34px;
        padding: 0 14px;
        font-size: 10px;
    }

    .bootstrap-vehicle-title {
        font-size: calc(1.8rem + 5vw);
    }

    .bootstrap-vehicle-lead {
        font-size: 1rem;
        line-height: 1.7;
    }

    .bootstrap-vehicle-meta-pill {
        min-height: 38px;
        padding: 0 14px;
        font-size: 12px;
    }

    .bootstrap-vehicle-stage-inner {
        min-height: 320px;
    }

    .bootstrap-vehicle-stage-image {
        height: 320px;
        padding: 18px 14px 50px;
    }

    .bootstrap-vehicle-zoom {
        right: 14px;
        bottom: 12px;
        min-height: 34px;
        padding: 0 12px;
        font-size: 10px;
    }

    .bootstrap-vehicle-stage-counter {
        top: 14px;
        left: 14px;
        min-height: 34px;
        padding: 0 12px;
        font-size: 10px;
    }

    .bootstrap-vehicle-spec-item {
        font-size: 1rem;
        padding: 15px 14px;
    }

    .bootstrap-vehicle-spec-icon {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
        font-size: 1.1rem;
    }

    .bootstrap-vehicle-price-value {
        font-size: 2rem;
    }

    .bootstrap-vehicle-related {
        padding: 10px 0 78px;
    }

    .bootstrap-vehicle-related-head {
        margin-bottom: 24px;
    }

    .bootstrap-vehicle-related-kicker {
        min-height: 34px;
        padding: 0 14px;
        font-size: 10px;
    }

    .bootstrap-vehicle-related-text {
        font-size: 0.95rem;
        line-height: 1.7;
    }

    .bootstrap-vehicle-modal-header {
        padding: 14px 14px 10px;
    }

    .bootstrap-vehicle-modal-body {
        padding: 0 14px 14px;
        gap: 14px;
    }

    .bootstrap-vehicle-modal-image {
        padding: 20px 16px 16px;
    }

    .bootstrap-vehicle-modal .carousel-control-prev,
    .bootstrap-vehicle-modal .carousel-control-next {
        width: 44px;
    }

    .bootstrap-vehicle-control-shell {
        width: 42px;
        height: 42px;
        font-size: 12px;
    }

    .bootstrap-vehicle-modal-thumb {
        flex-basis: 94px;
    }

    .guihon-actualite-sidebar-sticky {
        position: static;
    }
}

@media (max-width: 575.98px) {
    .guihon-actualite-sidebar-card {
        grid-template-columns: 84px minmax(0, 1fr);
        padding: 12px;
        border-radius: 20px;
    }

    .guihon-actualite-sidebar-thumb {
        width: 84px;
        border-radius: 16px;
    }

    .guihon-actualite-sidebar-title {
        font-size: 15px;
    }
}

.guihon-client-dashboard {
    background:
        radial-gradient(620px 320px at 0% 0%, rgba(var(--home9-brand-rgb), 0.08), transparent 62%),
        linear-gradient(180deg, #f7f8f5 0%, #ffffff 100%);
}

.guihon-client-dashboard .card {
    border: 1px solid rgba(var(--home9-brand-rgb), 0.08) !important;
}

.guihon-client-dashboard .card-body {
    position: relative;
}

.guihon-client-dashboard .form-label,
.guihon-client-dashboard .table th {
    color: #1f2b27;
    font-weight: 700;
}

.guihon-client-dashboard .form-control,
.guihon-client-dashboard .form-select {
    min-height: 52px;
    border-color: rgba(var(--home9-brand-rgb), 0.14);
    border-radius: 14px;
}

.guihon-client-dashboard textarea.form-control {
    min-height: 132px;
}

.guihon-client-dashboard .form-control:focus,
.guihon-client-dashboard .form-select:focus {
    border-color: rgba(var(--home9-brand-rgb), 0.36);
    box-shadow: 0 0 0 0.2rem rgba(var(--home9-brand-rgb), 0.08);
}

.guihon-client-icon {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 54px;
    border-radius: 18px;
    background: rgba(var(--home9-brand-rgb), 0.1);
    color: var(--home9-brand);
    font-size: 22px;
}

.guihon-client-steps .list-group-item {
    border-color: rgba(var(--home9-brand-rgb), 0.08);
}

.guihon-client-dashboard .table > :not(caption) > * > * {
    padding: 18px 16px;
}

@media (max-width: 575.98px) {
    .guihon-client-dashboard .display-5 {
        font-size: 34px;
    }

    .guihon-client-dashboard .table th,
    .guihon-client-dashboard .table td {
        white-space: nowrap;
    }
}

.guihon-client-page {
    background:
        radial-gradient(760px 380px at 12% 0%, rgba(7, 76, 60, 0.1), transparent 64%),
        radial-gradient(640px 320px at 100% 6%, rgba(241, 138, 32, 0.13), transparent 62%),
        #f5f7f5;
    color: #17231f;
}

.client-dashboard-header {
    position: sticky;
    top: 0;
    z-index: 99;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 20px 45px rgba(15, 35, 29, 0.08);
    backdrop-filter: blur(16px);
}

.client-dashboard-topbar {
    background: #073f33;
    color: rgba(255, 255, 255, 0.86);
    font-size: 14px;
}

.client-dashboard-topbar-inner {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.client-dashboard-topbar a,
.client-dashboard-topbar span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: inherit;
}

.client-dashboard-nav {
    min-height: 86px;
}

.client-dashboard-brand img {
    max-height: 54px;
}

.client-dashboard-nav .nav-link {
    color: #25322e;
    font-size: 15px;
    font-weight: 700;
}

.client-dashboard-nav .nav-link:hover,
.client-dashboard-nav .nav-link:focus {
    color: #0a6b52;
}

.client-dashboard-nav .navbar-toggler {
    width: 46px;
    height: 46px;
    border: 1px solid rgba(7, 63, 51, 0.18);
    border-radius: 16px;
    box-shadow: none;
}

.client-dashboard-nav .navbar-toggler-icon {
    position: relative;
    width: 22px;
    height: 18px;
    background: linear-gradient(#073f33, #073f33) center/100% 2px no-repeat;
}

.client-dashboard-nav .navbar-toggler-icon::before,
.client-dashboard-nav .navbar-toggler-icon::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 999px;
    background: #073f33;
}

.client-dashboard-nav .navbar-toggler-icon::before {
    top: 0;
}

.client-dashboard-nav .navbar-toggler-icon::after {
    bottom: 0;
}

.client-dashboard-nav-btn,
.client-dashboard-hero .btn,
.client-dashboard-card .btn,
.client-dashboard-profile .btn,
.client-dashboard-toggle-panel .btn,
.client-dashboard-support .btn {
    border: 0;
    border-radius: 999px;
    padding: 13px 22px;
    background: linear-gradient(135deg, #0a6b52 0%, #073f33 100%);
    color: #ffffff;
    font-weight: 800;
    box-shadow: 0 16px 30px rgba(7, 63, 51, 0.18);
}

.client-dashboard-nav-btn:hover,
.client-dashboard-hero .btn:hover,
.client-dashboard-card .btn:hover,
.client-dashboard-profile .btn:hover,
.client-dashboard-toggle-panel .btn:hover,
.client-dashboard-support .btn:hover {
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 20px 38px rgba(7, 63, 51, 0.24);
}

.client-dashboard-hero {
    position: relative;
    overflow: hidden;
    padding: 98px 0 86px;
    background:
        linear-gradient(125deg, rgba(7, 63, 51, 0.95), rgba(10, 107, 82, 0.9)),
        url("../img/image-guihon%20/guihon-pre.jpg") center/cover no-repeat;
}

.client-dashboard-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(520px 280px at 86% 18%, rgba(255, 255, 255, 0.18), transparent 64%),
        linear-gradient(90deg, rgba(0, 0, 0, 0.24), transparent 56%);
}

.client-dashboard-hero .container {
    position: relative;
    z-index: 1;
}

.client-dashboard-kicker,
.client-dashboard-card-kicker,
.client-dashboard-support span {
    width: fit-content;
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(241, 138, 32, 0.18);
    color: #f18a20;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.client-dashboard-hero h1 {
    max-width: 780px;
    margin: 18px 0;
    color: #ffffff;
    font-size: clamp(34px, 4.8vw, 56px);
    line-height: 1.05;
    letter-spacing: -0.035em;
}

.client-dashboard-hero p {
    max-width: 690px;
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 18px;
    line-height: 1.75;
}

.client-dashboard-hero-actions,
.client-dashboard-support-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    margin-top: 30px;
}

.client-dashboard-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #f18a20;
    font-weight: 900;
}

.client-dashboard-link:hover,
.client-dashboard-link:focus {
    color: #ffac4f;
}

.client-dashboard-status-card {
    display: grid;
    gap: 18px;
    padding: 32px;
    border-radius: 34px;
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.22);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px);
    text-decoration: none;
}

.client-dashboard-status-card:hover,
.client-dashboard-status-card:focus {
    color: inherit;
    transform: translateY(-3px);
    box-shadow: 0 34px 86px rgba(0, 0, 0, 0.26);
}

.client-dashboard-status-card span {
    display: block;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 700;
}

.client-dashboard-status-card strong {
    display: block;
    color: #ffffff;
    font-size: 42px;
    line-height: 1;
}

.client-dashboard-status-card p {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
}

.client-dashboard-hero-profile {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.client-dashboard-hero-profile p {
    grid-column: 1 / -1;
}

.client-dashboard-hero-profile-token {
    width: 118px;
    height: 118px;
    display: grid;
    place-items: center;
    border-radius: 34px;
    background: linear-gradient(135deg, #f18a20, #ffc15d);
    box-shadow: 0 22px 42px rgba(0, 0, 0, 0.18);
}

.client-dashboard-hero-profile-token span {
    color: #073f33;
    font-size: 34px;
    font-weight: 900;
}

.client-dashboard-progress-ring {
    width: 132px;
    height: 132px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: conic-gradient(#f18a20 0 65%, rgba(255, 255, 255, 0.22) 65% 100%);
    box-shadow: inset 0 0 0 14px rgba(7, 63, 51, 0.18);
}

.client-dashboard-progress-ring span {
    width: 92px;
    height: 92px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffffff;
    color: #073f33;
    font-size: 28px;
    font-weight: 900;
}

.client-dashboard-section {
    padding: 72px 0 80px;
}

.client-dashboard-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 34px;
}

.client-dashboard-stat,
.client-dashboard-card,
.client-dashboard-profile {
    border: 1px solid rgba(7, 63, 51, 0.09);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 20px 48px rgba(25, 48, 42, 0.08);
}

.client-dashboard-stat {
    min-height: 116px;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 22px;
    border-radius: 26px;
    color: #17231f;
    text-decoration: none;
    transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.client-dashboard-stat:hover,
.client-dashboard-stat:focus {
    border-color: rgba(10, 107, 82, 0.18);
    color: #17231f;
    transform: translateY(-2px);
    box-shadow: 0 24px 52px rgba(25, 48, 42, 0.12);
}

.client-dashboard-stat-icon,
.client-dashboard-card-icon {
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 52px;
    border-radius: 18px;
    background: rgba(10, 107, 82, 0.1);
    color: #0a6b52;
    font-size: 20px;
}

.client-dashboard-stat strong {
    display: block;
    color: #073f33;
    font-size: 20px;
    line-height: 1;
}

.client-dashboard-stat span:last-child {
    display: block;
    margin-top: 5px;
    color: #68756f;
    font-weight: 700;
}

.client-dashboard-profile {
    position: sticky;
    top: 150px;
    padding: 30px;
    border-radius: 34px;
}

.client-dashboard-avatar {
    width: 92px;
    height: 92px;
    display: grid;
    place-items: center;
    margin-bottom: 18px;
    border-radius: 28px;
    background: linear-gradient(135deg, #f18a20, #ffc15d);
    color: #073f33;
    font-size: 28px;
    font-weight: 900;
    box-shadow: 0 18px 36px rgba(241, 138, 32, 0.22);
}

.client-dashboard-profile-badge,
.client-dashboard-pill {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(10, 107, 82, 0.1);
    color: #0a6b52;
    font-size: 12px;
    font-weight: 900;
}

.client-dashboard-profile h2 {
    margin: 14px 0 8px;
    color: #101b18;
    font-size: 30px;
}

.client-dashboard-profile p,
.client-dashboard-card p {
    color: #65726c;
}

.client-dashboard-profile-list {
    display: grid;
    gap: 14px;
    padding: 22px 0;
    margin: 0;
    list-style: none;
}

.client-dashboard-profile-list li {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #34433e;
    font-weight: 700;
}

.client-dashboard-profile-list i {
    color: #f18a20;
}

.client-dashboard-toggle-panel {
    display: grid;
    gap: 18px;
    margin-bottom: 24px;
    padding: 22px;
    border: 1px solid rgba(7, 63, 51, 0.09);
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 42px rgba(25, 48, 42, 0.07);
}

.client-dashboard-toggle-panel h3 {
    margin: 6px 0 0;
    color: #101b18;
    font-size: 24px;
}

.client-dashboard-grid {
    display: grid;
    gap: 24px;
}

.client-dashboard-module-grid {
    --bs-gutter-x: 18px;
    --bs-gutter-y: 18px;
}

.client-dashboard-module-card {
    position: relative;
    overflow: hidden;
    min-height: 188px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 18px;
    padding: 24px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 28px;
    background:
        radial-gradient(220px 120px at 100% 0%, rgba(241, 138, 32, 0.14), transparent 68%),
        linear-gradient(145deg, rgba(10, 107, 82, 0.06), rgba(255, 255, 255, 0) 54%),
        #ffffff;
    color: #17231f;
    box-shadow: 0 18px 42px rgba(25, 48, 42, 0.08);
    transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.client-dashboard-module-card::before {
    content: "";
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 0;
    height: 4px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, #0a6b52, #f18a20);
    opacity: 0.85;
}

.client-dashboard-module-card:hover,
.client-dashboard-module-card:focus {
    border-color: rgba(10, 107, 82, 0.18);
    color: #17231f;
    transform: translateY(-4px);
    box-shadow: 0 24px 50px rgba(25, 48, 42, 0.14);
}

.client-dashboard-module-icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    background: rgba(10, 107, 82, 0.1);
    color: #0a6b52;
    font-size: 22px;
    box-shadow: inset 0 0 0 1px rgba(10, 107, 82, 0.08);
}

.client-dashboard-module-card strong {
    display: block;
    color: #101b18;
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.client-dashboard-module-card small {
    display: block;
    color: #65726c;
    font-weight: 700;
    line-height: 1.45;
}

.client-dashboard-module-hint {
    display: block;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid rgba(7, 63, 51, 0.08);
    color: #0a6b52;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.45;
}

.client-dashboard-module-badge {
    position: absolute;
    top: 14px;
    right: 14px;
    min-width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #f18a20;
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
}

.client-dashboard-section-note {
    margin: -8px 0 22px;
    max-width: 820px;
    color: #65726c;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.7;
}

.client-dashboard-profile-summary {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px;
    border-radius: 24px;
    background:
        radial-gradient(240px 120px at 100% 0%, rgba(241, 138, 32, 0.13), transparent 64%),
        rgba(10, 107, 82, 0.05);
}

.client-dashboard-profile-mini {
    width: 74px;
    height: 74px;
    display: grid;
    place-items: center;
    flex: 0 0 74px;
    border-radius: 24px;
    background: linear-gradient(135deg, #f18a20, #ffc15d);
    color: #073f33;
    font-size: 24px;
    font-weight: 900;
}

.client-dashboard-profile-summary strong {
    display: block;
    color: #17231f;
    font-size: 24px;
    line-height: 1.15;
}

.client-dashboard-profile-summary p {
    margin: 6px 0 0;
}

.client-dashboard-profile-info {
    height: 100%;
    padding: 18px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 22px;
    background: #ffffff;
}

.client-dashboard-profile-info i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 14px;
    border-radius: 14px;
    background: rgba(10, 107, 82, 0.1);
    color: #0a6b52;
}

.client-dashboard-profile-info span,
.client-dashboard-profile-info strong {
    display: block;
}

.client-dashboard-profile-info span {
    color: #65726c;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-profile-info strong {
    margin-top: 6px;
    color: #17231f;
    font-size: 16px;
    line-height: 1.35;
}

.client-dashboard-vehicle-list,
.client-dashboard-message-list,
.client-dashboard-quote-list {
    display: grid;
    gap: 14px;
}

.client-dashboard-vehicle-item,
.client-dashboard-message,
.client-dashboard-quote-item,
.client-dashboard-notice {
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 22px;
    background: rgba(10, 107, 82, 0.04);
}

.client-dashboard-vehicle-item,
.client-dashboard-quote-item,
.client-dashboard-notice {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
}

.client-dashboard-vehicle-item.is-active,
.client-dashboard-message.is-new,
.client-dashboard-notice {
    background: rgba(241, 138, 32, 0.09);
}

.client-dashboard-vehicle-item strong,
.client-dashboard-quote-item strong,
.client-dashboard-notice strong,
.client-dashboard-message strong {
    display: block;
    color: #17231f;
    font-size: 17px;
}

.client-dashboard-vehicle-item span:not(.client-dashboard-pill),
.client-dashboard-quote-item span:not(.client-dashboard-pill),
.client-dashboard-notice p,
.client-dashboard-message p {
    display: block;
    margin: 5px 0 0;
    color: #65726c;
    font-weight: 700;
    line-height: 1.45;
}

.client-dashboard-vehicle-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px;
}

.client-dashboard-detail-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 18px;
    border-radius: 999px;
    border: 1px solid rgba(7, 63, 51, 0.14);
    background: #ffffff;
    color: #0a6b52;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    transition: all 0.3s ease;
}

.client-dashboard-detail-btn:hover,
.client-dashboard-detail-btn:focus {
    color: #ffffff;
    background: #0a6b52;
    border-color: #0a6b52;
}

.client-dashboard-notice {
    justify-content: flex-start;
    margin-bottom: 18px;
}

.client-dashboard-notice .client-dashboard-module-badge {
    position: static;
    flex: 0 0 auto;
}

.client-dashboard-quote-list {
    margin-bottom: 22px;
}

.client-dashboard-message {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 14px;
    padding: 16px;
}

.client-dashboard-message-avatar {
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    background: #073f33;
    color: #ffffff;
    font-size: 13px;
    font-weight: 900;
}

.client-dashboard-form-title {
    margin: 22px 0 14px;
    color: #101b18;
    font-size: 20px;
}

.client-inner-header {
    position: sticky;
    top: 0;
    z-index: 99;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 16px 38px rgba(15, 35, 29, 0.08);
    backdrop-filter: blur(16px);
}

.client-inner-header-inner {
    min-height: 86px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.client-inner-logo img {
    max-height: 56px;
}

.client-inner-header-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
}

.client-inner-header-actions .btn {
    border: 0;
    border-radius: 999px;
    padding: 13px 22px;
    background: linear-gradient(135deg, #0a6b52 0%, #073f33 100%);
    color: #ffffff;
    font-weight: 800;
    box-shadow: 0 16px 30px rgba(7, 63, 51, 0.18);
}

.client-inner-header-actions .btn:hover,
.client-inner-header-actions .btn:focus {
    color: #ffffff;
    transform: translateY(-1px);
}

.client-inner-hero {
    padding: 82px 0 74px;
}

.client-inner-summary {
    min-height: 248px;
    display: grid;
    align-content: center;
    gap: 14px;
    padding: 30px;
    border-radius: 34px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.13);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px);
}

.client-inner-summary > span {
    width: 64px;
    height: 64px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.18);
    color: #ffffff;
    font-size: 24px;
}

.client-inner-summary strong {
    color: #ffffff;
    font-size: 32px;
    line-height: 1.15;
}

.client-inner-summary p {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-weight: 700;
    line-height: 1.7;
}

.client-inner-section {
    padding-top: 54px;
}

.client-space-shell {
    display: grid;
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.client-space-shell.is-vehicle-focus {
    grid-template-columns: 1fr;
}

.client-space-shell.is-vehicle-focus .client-space-mobile-bar,
.client-space-shell.is-vehicle-focus .client-space-sidebar {
    display: none;
}

.client-space-mobile-bar {
    display: none;
}

.client-space-mobile-toggle {
    width: 100%;
    min-height: 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 18px;
    border: 1px solid rgba(7, 63, 51, 0.1);
    border-radius: 22px;
    background:
        radial-gradient(200px 110px at 100% 0%, rgba(241, 138, 32, 0.12), transparent 68%),
        #ffffff;
    color: #17231f;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: -0.01em;
    box-shadow: 0 18px 34px rgba(25, 48, 42, 0.07);
}

.client-space-mobile-toggle-icon,
.client-space-mobile-toggle-arrow {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: rgba(10, 107, 82, 0.08);
    color: #0a6b52;
}

.client-space-mobile-toggle-text {
    flex: 1 1 auto;
    text-align: left;
}

.client-space-mobile-toggle.is-open .client-space-mobile-toggle-arrow i {
    transform: rotate(180deg);
}

.client-space-mobile-toggle-arrow i {
    transition: transform 0.25s ease;
}

.client-space-sidebar {
    position: sticky;
    top: 118px;
    display: grid;
    gap: 18px;
}

.client-space-sidebar-card {
    padding: 22px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 18px 34px rgba(25, 48, 42, 0.07);
}

.client-space-sidebar-card h3 {
    margin: 10px 0 0;
    color: #101b18;
    font-size: 28px;
    letter-spacing: -0.02em;
}

.client-space-sidebar-card p {
    margin: 10px 0 0;
    color: #65726c;
    font-weight: 700;
    line-height: 1.65;
}

.client-space-sidebar-group-title {
    margin: 0 0 14px;
    color: #6a7670;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.client-space-sidebar-links {
    display: grid;
    gap: 10px;
}

.client-space-sidebar-link {
    min-height: 58px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 18px;
    background: rgba(10, 107, 82, 0.04);
    color: #17231f;
    font-weight: 800;
    line-height: 1.3;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.client-space-sidebar-link--button {
    width: 100%;
    text-align: left;
    font: inherit;
    cursor: pointer;
    appearance: none;
}

.client-space-sidebar-link i {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #ffffff;
    color: #0a6b52;
    box-shadow: 0 10px 20px rgba(25, 48, 42, 0.08);
}

.client-space-sidebar-link:hover,
.client-space-sidebar-link:focus,
.client-space-sidebar-link.is-active {
    color: #17231f;
    transform: translateY(-2px);
    box-shadow: 0 16px 28px rgba(25, 48, 42, 0.1);
}

.client-space-sidebar-link.is-active {
    border-color: rgba(10, 107, 82, 0.22);
    background:
        radial-gradient(160px 90px at 100% 0%, rgba(241, 138, 32, 0.12), transparent 68%),
        rgba(10, 107, 82, 0.08);
}

.client-inner-nav {
    margin-bottom: 24px;
}

.client-inner-nav-card {
    min-height: 108px;
    display: grid;
    align-content: center;
    gap: 10px;
    height: 100%;
    padding: 18px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 22px;
    background: #ffffff;
    color: #17231f;
    box-shadow: 0 14px 30px rgba(25, 48, 42, 0.07);
}

.client-inner-nav-card:hover,
.client-inner-nav-card:focus,
.client-inner-nav-card.is-active {
    color: #17231f;
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(25, 48, 42, 0.12);
}

.client-inner-nav-card.is-active {
    border-color: rgba(10, 107, 82, 0.22);
    background:
        radial-gradient(160px 90px at 100% 0%, rgba(241, 138, 32, 0.12), transparent 68%),
        rgba(10, 107, 82, 0.07);
}

.client-inner-nav-card i {
    color: #0a6b52;
    font-size: 22px;
}

.client-inner-nav-card span {
    color: #17231f;
    font-weight: 900;
    line-height: 1.2;
}

.client-inner-card {
    min-height: 420px;
}

.client-dashboard-card {
    padding: 28px;
    border-radius: 34px;
}

.client-dashboard-quote {
    background:
        radial-gradient(420px 220px at 100% 0%, rgba(241, 138, 32, 0.12), transparent 62%),
        #ffffff;
}

.client-dashboard-card-head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.client-dashboard-card-head h3 {
    margin: 6px 0 0;
    color: #101b18;
    font-size: 26px;
    letter-spacing: -0.02em;
}

.client-dashboard-form .form-label {
    color: #25322e;
    font-weight: 800;
}

.client-dashboard-form .form-control,
.client-dashboard-form .form-select {
    min-height: 52px;
    border-radius: 16px;
    border: 1px solid rgba(7, 63, 51, 0.12);
    background-color: #f8faf8;
    color: #17231f;
    box-shadow: none;
}

.client-dashboard-form textarea.form-control {
    min-height: 132px;
}

.client-dashboard-form .form-control:focus,
.client-dashboard-form .form-select:focus {
    border-color: rgba(10, 107, 82, 0.4);
    box-shadow: 0 0 0 0.22rem rgba(10, 107, 82, 0.1);
}

.client-dashboard-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.78fr);
    gap: 20px;
    margin-top: 20px;
}

.client-dashboard-detail-top-cards,
.client-dashboard-detail-featured,
.client-dashboard-detail-main,
.client-dashboard-detail-side {
    display: grid;
    gap: 18px;
    align-content: start;
}

.client-dashboard-detail-top-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 20px;
}

.client-dashboard-vehicle-dossier-grid {
    margin-top: 20px;
}

.client-dashboard-detail-featured {
    margin-top: 20px;
}

.client-dashboard-panel,
.client-dashboard-detail-side-card {
    padding: 22px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 26px;
    background: #ffffff;
    box-shadow: 0 18px 34px rgba(25, 48, 42, 0.07);
}

.client-dashboard-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.client-dashboard-panel-head h4 {
    margin: 6px 0 0;
    color: #101b18;
    font-size: 24px;
    letter-spacing: -0.02em;
}

.client-dashboard-vehicle-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 18px;
    padding: 26px;
    border-radius: 30px;
    background:
        radial-gradient(360px 220px at 100% 0%, rgba(241, 138, 32, 0.22), transparent 64%),
        linear-gradient(135deg, #0a6b52 0%, #073f33 100%);
    color: #ffffff;
}

.client-dashboard-vehicle-hero-main h4 {
    margin: 8px 0 0;
    color: #ffffff;
    font-size: 36px;
    letter-spacing: -0.03em;
}

.client-dashboard-vehicle-hero-main p {
    margin: 10px 0 0;
    color: rgba(255, 255, 255, 0.8);
    font-weight: 700;
    line-height: 1.65;
}

.client-dashboard-vehicle-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.client-dashboard-vehicle-chip {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.client-dashboard-vehicle-hero-side {
    display: grid;
    align-content: center;
    gap: 8px;
    padding: 20px;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

.client-dashboard-vehicle-hero-side span {
    display: block;
    color: rgba(255, 255, 255, 0.74);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-vehicle-hero-side strong {
    color: #ffffff;
    font-size: 48px;
    line-height: 1;
}

.client-dashboard-vehicle-hero-side p {
    margin: 0;
    color: rgba(255, 255, 255, 0.82);
    font-weight: 700;
}

.client-dashboard-highlight-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px;
}

.client-dashboard-highlight-card {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 22px;
    background: rgba(10, 107, 82, 0.04);
}

.client-dashboard-highlight-icon {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: rgba(10, 107, 82, 0.1);
    color: #0a6b52;
    font-size: 18px;
}

.client-dashboard-highlight-card strong {
    display: block;
    color: #17231f;
    font-size: 16px;
    line-height: 1.35;
}

.client-dashboard-highlight-card p {
    margin: 6px 0 0;
    color: #65726c;
    font-weight: 700;
    line-height: 1.55;
}

.client-dashboard-vehicle {
    overflow: hidden;
    border-radius: 26px;
    background: #073f33;
    color: #ffffff;
}

.client-dashboard-vehicle-main {
    padding: 26px;
    background:
        radial-gradient(300px 170px at 100% 0%, rgba(241, 138, 32, 0.28), transparent 64%),
        rgba(255, 255, 255, 0.06);
}

.client-dashboard-vehicle-main span,
.client-dashboard-repair-summary span {
    display: block;
    color: rgba(255, 255, 255, 0.68);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-vehicle-main strong {
    display: block;
    margin-top: 6px;
    color: #ffffff;
    font-size: 36px;
    line-height: 1;
}

.client-dashboard-vehicle-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    padding: 0;
    margin: 0;
    list-style: none;
    background: rgba(255, 255, 255, 0.12);
}

.client-dashboard-vehicle-specs li {
    display: grid;
    gap: 5px;
    padding: 18px;
    background: rgba(7, 63, 51, 0.92);
}

.client-dashboard-vehicle-specs span {
    color: rgba(255, 255, 255, 0.58);
    font-size: 13px;
    font-weight: 700;
}

.client-dashboard-vehicle-specs strong {
    color: #ffffff;
}

.client-dashboard-vehicle-specs--light {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    background: transparent;
}

.client-dashboard-vehicle-specs--light li {
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 20px;
    background: #f7faf8;
}

.client-dashboard-vehicle-specs--light span {
    color: #6a7670;
}

.client-dashboard-vehicle-specs--light strong {
    color: #17231f;
}

.client-dashboard-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 18px;
}

.client-dashboard-info-card,
.client-dashboard-stage-note {
    padding: 20px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 22px;
    background: rgba(10, 107, 82, 0.04);
}

a.client-dashboard-info-card {
    display: block;
    color: inherit;
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

a.client-dashboard-info-card:hover,
a.client-dashboard-info-card:focus,
button.client-dashboard-info-card--button:hover,
button.client-dashboard-info-card--button:focus {
    color: inherit;
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(25, 48, 42, 0.08);
}

button.client-dashboard-info-card--button {
    width: 100%;
    display: block;
    text-align: left;
    font: inherit;
    cursor: pointer;
    appearance: none;
}

.client-dashboard-info-card span {
    display: block;
    color: #6a7670;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-info-card strong,
.client-dashboard-stage-note strong {
    display: block;
    margin-top: 8px;
    color: #17231f;
    font-size: 20px;
}

.client-dashboard-info-card p,
.client-dashboard-stage-note p {
    margin: 8px 0 0;
    color: #65726c;
    font-weight: 700;
    line-height: 1.55;
}

.client-dashboard-info-grid--vehicle {
    gap: 18px;
}

.client-dashboard-info-card--vehicle {
    position: relative;
    overflow: hidden;
    min-height: 210px;
    padding: 22px;
    border: 1px solid rgba(7, 63, 51, 0.1);
    background:
        radial-gradient(180px 110px at 100% 0%, rgba(241, 138, 32, 0.14), transparent 70%),
        linear-gradient(180deg, #ffffff 0%, #f4faf7 100%);
    box-shadow: 0 18px 34px rgba(25, 48, 42, 0.07);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.client-dashboard-info-card--vehicle::before {
    content: "";
    position: absolute;
    inset: auto 22px 0;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, #0a6b52 0%, #f18a20 100%);
    opacity: 0.95;
}

.client-dashboard-info-card--vehicle:hover,
.client-dashboard-info-card--vehicle:focus {
    transform: translateY(-4px);
    border-color: rgba(10, 107, 82, 0.16);
    box-shadow: 0 22px 42px rgba(25, 48, 42, 0.1);
}

.client-dashboard-info-card--vehicle:nth-child(2) {
    background:
        radial-gradient(180px 110px at 100% 0%, rgba(10, 107, 82, 0.12), transparent 70%),
        linear-gradient(180deg, #ffffff 0%, #f7fbfa 100%);
}

.client-dashboard-info-card--vehicle:nth-child(3) {
    background:
        radial-gradient(180px 110px at 100% 0%, rgba(241, 138, 32, 0.16), transparent 70%),
        linear-gradient(180deg, #fffefb 0%, #fbf8f1 100%);
}

.client-dashboard-info-card--vehicle:nth-child(4) {
    background:
        radial-gradient(180px 110px at 100% 0%, rgba(10, 107, 82, 0.1), transparent 70%),
        linear-gradient(180deg, #ffffff 0%, #f1f8f6 100%);
}

.client-dashboard-info-card--vehicle:nth-child(5) {
    background:
        radial-gradient(180px 110px at 100% 0%, rgba(241, 138, 32, 0.12), transparent 70%),
        linear-gradient(180deg, #ffffff 0%, #f8faf5 100%);
}

.client-dashboard-info-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 22px;
}

.client-dashboard-info-card-badge {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.client-dashboard-info-card .client-dashboard-info-card-icon,
.client-dashboard-info-card .client-dashboard-info-card-arrow {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.client-dashboard-info-card .client-dashboard-info-card-icon {
    flex: 0 0 78px;
    width: 78px;
    height: 78px;
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(10, 107, 82, 0.16) 0%, rgba(10, 107, 82, 0.06) 100%);
    color: #0a6b52;
    font-size: 32px;
    box-shadow:
        0 18px 32px rgba(25, 48, 42, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.client-dashboard-info-card .client-dashboard-info-card-icon::before {
    content: "";
    position: absolute;
    inset: 7px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.68);
    opacity: 0.92;
}

.client-dashboard-info-card .client-dashboard-info-card-icon i {
    position: relative;
    z-index: 1;
    line-height: 1;
}

.client-dashboard-info-card .client-dashboard-info-card-label {
    width: fit-content;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(7, 63, 51, 0.08);
    color: #67736d;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    box-shadow: 0 12px 24px rgba(25, 48, 42, 0.06);
}

.client-dashboard-info-card--vehicle:nth-child(1) .client-dashboard-info-card-icon {
    background: linear-gradient(180deg, rgba(10, 107, 82, 0.18) 0%, rgba(10, 107, 82, 0.08) 100%);
    color: #0a6b52;
}

.client-dashboard-info-card--vehicle:nth-child(2) .client-dashboard-info-card-icon {
    background: linear-gradient(180deg, rgba(13, 63, 56, 0.16) 0%, rgba(13, 63, 56, 0.06) 100%);
    color: #114e45;
}

.client-dashboard-info-card--vehicle:nth-child(3) .client-dashboard-info-card-icon {
    background: linear-gradient(180deg, rgba(241, 138, 32, 0.2) 0%, rgba(241, 138, 32, 0.08) 100%);
    color: #d97612;
}

.client-dashboard-info-card--vehicle:nth-child(4) .client-dashboard-info-card-icon {
    background: linear-gradient(180deg, rgba(7, 98, 88, 0.16) 0%, rgba(7, 98, 88, 0.06) 100%);
    color: #0a6258;
}

.client-dashboard-info-card--vehicle:nth-child(5) .client-dashboard-info-card-icon {
    background: linear-gradient(180deg, rgba(16, 93, 119, 0.16) 0%, rgba(16, 93, 119, 0.06) 100%);
    color: #105d77;
}

.client-dashboard-info-card-arrow {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.9);
    color: #0a6b52;
    font-size: 15px;
    box-shadow: 0 10px 18px rgba(25, 48, 42, 0.06);
    transition: transform 0.25s ease, background-color 0.25s ease, box-shadow 0.25s ease;
}

.client-dashboard-info-card--vehicle:hover .client-dashboard-info-card-arrow,
.client-dashboard-info-card--vehicle:focus .client-dashboard-info-card-arrow {
    transform: translateX(4px);
    background: #ffffff;
    box-shadow: 0 14px 22px rgba(25, 48, 42, 0.1);
}

.client-dashboard-info-card--vehicle strong {
    margin-top: 0;
    max-width: 420px;
    font-size: 24px;
    line-height: 1.18;
    letter-spacing: -0.025em;
}

.client-dashboard-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(74px, 84px));
    justify-content: flex-start;
    gap: 10px;
    margin-bottom: 8px;
}

.client-dashboard-gallery-item {
    overflow: hidden;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(25, 48, 42, 0.06);
}

.client-dashboard-gallery-trigger {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: zoom-in;
}

.client-dashboard-gallery-media {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    background: rgba(10, 107, 82, 0.06);
}

.client-dashboard-gallery-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.28s ease;
}

.client-dashboard-gallery-trigger:hover .client-dashboard-gallery-media img,
.client-dashboard-gallery-trigger:focus .client-dashboard-gallery-media img {
    transform: scale(1.04);
}

.client-dashboard-gallery-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(7, 63, 51, 0.88);
    color: #ffffff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-gallery-zoom {
    position: absolute;
    right: 10px;
    bottom: 10px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.9);
    color: #073f33;
    font-size: 11px;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(17, 37, 59, 0.14);
}

.client-dashboard-inline-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 26px;
}

.client-vehicle-section-modal .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 30px 80px rgba(15, 35, 29, 0.22);
}

.client-vehicle-section-modal .modal-header {
    align-items: flex-start;
    justify-content: space-between;
    padding: 24px 24px 0;
    border: 0;
}

.client-vehicle-section-modal-kicker {
    display: block;
    color: #6a7670;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-vehicle-section-modal .modal-title {
    margin-top: 8px;
    color: #101b18;
    font-size: 28px;
    line-height: 1.15;
}

.client-vehicle-section-modal .modal-body {
    padding: 18px 24px 24px;
}

.client-vehicle-modal-stack {
    display: grid;
    gap: 18px;
}

.client-vehicle-section-modal .client-dashboard-panel {
    box-shadow: none;
}

.client-dashboard-media-preview {
    overflow: hidden;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 26px;
    background: rgba(10, 107, 82, 0.04);
    box-shadow: 0 18px 34px rgba(25, 48, 42, 0.07);
}

.client-dashboard-media-preview img {
    width: 100%;
    min-height: 280px;
    object-fit: cover;
    display: block;
}

.client-dashboard-gallery-modal .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 30px 80px rgba(15, 35, 29, 0.22);
}

.client-dashboard-gallery-modal .modal-header {
    align-items: flex-start;
    justify-content: space-between;
    padding: 24px 24px 0;
    border: 0;
}

.client-dashboard-gallery-modal-kicker {
    display: block;
    color: #6a7670;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-gallery-modal .modal-title {
    margin-top: 8px;
    color: #101b18;
    font-size: 28px;
    line-height: 1.15;
}

.client-dashboard-gallery-modal .modal-body {
    padding: 18px 24px 24px;
}

.client-dashboard-gallery-modal-stage {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) 58px;
    align-items: center;
    gap: 16px;
}

.client-dashboard-gallery-modal-media {
    overflow: hidden;
    border-radius: 24px;
    background: rgba(10, 107, 82, 0.05);
}

.client-dashboard-gallery-modal-media img {
    width: 100%;
    max-height: 72vh;
    object-fit: contain;
    display: block;
}

.client-dashboard-gallery-modal-nav {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: #073f33;
    color: #ffffff;
    font-size: 18px;
    box-shadow: 0 14px 28px rgba(7, 63, 51, 0.18);
}

.client-dashboard-gallery-modal-nav:disabled {
    opacity: 0.42;
    cursor: default;
    box-shadow: none;
}

.client-dashboard-gallery-modal-meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-top: 18px;
}

.client-dashboard-gallery-modal-counter {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(10, 107, 82, 0.1);
    color: #0a6b52;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.client-dashboard-gallery-modal-text {
    margin: 0;
    color: #65726c;
    font-weight: 700;
    line-height: 1.7;
}

.client-dashboard-gallery-modal-thumbs {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 110px;
    gap: 12px;
    overflow-x: auto;
    margin-top: 18px;
    padding-bottom: 6px;
}

.client-dashboard-gallery-modal-thumb {
    overflow: hidden;
    padding: 0;
    border: 2px solid transparent;
    border-radius: 16px;
    background: transparent;
    opacity: 0.72;
    transition: opacity 0.24s ease, border-color 0.24s ease, transform 0.24s ease;
}

.client-dashboard-gallery-modal-thumb img {
    width: 100%;
    height: 78px;
    object-fit: cover;
    display: block;
}

.client-dashboard-gallery-modal-thumb.is-active {
    border-color: #0a6b52;
    opacity: 1;
    transform: translateY(-1px);
}

.client-dashboard-quote-modal .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 30px 80px rgba(15, 35, 29, 0.22);
}

.client-dashboard-quote-modal .modal-header {
    align-items: flex-start;
    justify-content: space-between;
    padding: 24px 24px 0;
    border: 0;
}

.client-dashboard-quote-modal-kicker {
    display: block;
    color: #6a7670;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-quote-modal .modal-title {
    margin-top: 8px;
    color: #101b18;
    font-size: 28px;
    line-height: 1.15;
}

.client-dashboard-quote-modal-subtitle {
    margin: 10px 0 0;
    color: #65726c;
    font-weight: 700;
    line-height: 1.65;
}

.client-dashboard-quote-modal .modal-body {
    padding: 18px 24px 24px;
}

.client-dashboard-quote-modal-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.client-dashboard-quote-modal-actions .client-dashboard-link {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border: 1px solid rgba(7, 63, 51, 0.1);
    border-radius: 18px;
    background: #ffffff;
    cursor: pointer;
}

.client-dashboard-quote-modal-viewer {
    overflow: hidden;
}

.client-dashboard-quote-preview {
    overflow: auto;
    padding: 6px;
    border: 1px solid rgba(7, 63, 51, 0.08);
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(10, 107, 82, 0.04) 0%, rgba(255, 255, 255, 0.98) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.client-dashboard-quote-preview-empty {
    margin: 0;
    padding: 64px 24px;
    color: #65726c;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
}

.client-dashboard-quote-sheet {
    padding: 28px;
    border: 1px solid rgba(11, 65, 52, 0.12);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 22px 60px rgba(20, 33, 29, 0.1);
}

.client-dashboard-quote-sheet-head,
.client-dashboard-quote-sheet-title-row,
.client-dashboard-quote-sheet-total,
.client-dashboard-quote-sheet-signature {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.client-dashboard-quote-sheet-brand {
    display: flex;
    align-items: center;
    gap: 16px;
}

.client-dashboard-quote-sheet-brand img {
    width: 84px;
    height: auto;
    display: block;
}

.client-dashboard-quote-sheet-brand span {
    display: block;
    color: #101b18;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: 0.04em;
}

.client-dashboard-quote-sheet-brand p {
    margin: 4px 0 0;
    color: #65726c;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.6;
}

.client-dashboard-quote-sheet-status {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    padding: 0 18px;
    border-radius: 999px;
    background: rgba(10, 107, 82, 0.12);
    color: #0a6b52;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-quote-sheet-status.is-warning {
    background: rgba(241, 138, 32, 0.14);
    color: #bd6912;
}

.client-dashboard-quote-sheet-title-row {
    margin-top: 28px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(11, 65, 52, 0.1);
    align-items: flex-end;
}

.client-dashboard-quote-sheet-eyebrow {
    margin: 0 0 8px;
    color: #f18a20;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.client-dashboard-quote-sheet-title-row h3 {
    margin: 0;
    color: #101b18;
    font-size: 36px;
    line-height: 1.05;
}

.client-dashboard-quote-sheet-meta {
    min-width: 220px;
    display: grid;
    gap: 6px;
    text-align: right;
}

.client-dashboard-quote-sheet-meta span,
.client-dashboard-quote-sheet-highlight span,
.client-dashboard-quote-sheet-signature span {
    color: #65726c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.client-dashboard-quote-sheet-meta strong,
.client-dashboard-quote-sheet-highlight strong,
.client-dashboard-quote-sheet-signature strong,
.client-dashboard-quote-sheet-total-box strong {
    display: block;
    color: #101b18;
    font-weight: 900;
}

.client-dashboard-quote-sheet-boxes,
.client-dashboard-quote-sheet-highlights {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 22px;
}

.client-dashboard-quote-sheet-box,
.client-dashboard-quote-sheet-highlight {
    padding: 18px 20px;
    border: 1px solid rgba(11, 65, 52, 0.12);
    border-radius: 20px;
    background: #fbfcfc;
}

.client-dashboard-quote-sheet-box span {
    display: inline-flex;
    margin-bottom: 12px;
    color: #0a6b52;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-quote-sheet-box ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 6px;
}

.client-dashboard-quote-sheet-box li {
    color: #30413c;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.55;
}

.client-dashboard-quote-sheet-box li strong,
.client-dashboard-quote-sheet-highlight strong {
    margin-top: 8px;
    font-size: 20px;
    line-height: 1.25;
}

.client-dashboard-quote-sheet-table {
    width: 100%;
    margin-top: 22px;
    border-collapse: collapse;
}

.client-dashboard-quote-sheet-table thead th {
    padding: 14px 12px;
    background: #edf1f0;
    color: #53605b;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-align: left;
    text-transform: uppercase;
}

.client-dashboard-quote-sheet-table td {
    padding: 16px 12px;
    border-bottom: 1px solid rgba(11, 65, 52, 0.08);
    color: #30413c;
    font-size: 14px;
    font-weight: 700;
    vertical-align: top;
}

.client-dashboard-quote-sheet-total {
    margin-top: 24px;
    align-items: flex-end;
}

.client-dashboard-quote-sheet-note {
    max-width: 560px;
    color: #65726c;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.7;
}

.client-dashboard-quote-sheet-total-box {
    min-width: 240px;
    padding: 18px 20px;
    border-radius: 22px;
    background: linear-gradient(135deg, #0a6b52 0%, #124b3f 100%);
    color: #ffffff;
    text-align: right;
    box-shadow: 0 18px 36px rgba(10, 107, 82, 0.18);
}

.client-dashboard-quote-sheet-total-box span {
    display: block;
    color: rgba(255, 255, 255, 0.82);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-quote-sheet-total-box strong {
    margin-top: 10px;
    color: #ffffff;
    font-size: 30px;
    line-height: 1.1;
}

.client-dashboard-quote-sheet-signature {
    margin-top: 24px;
    padding-top: 22px;
    border-top: 1px solid rgba(11, 65, 52, 0.1);
    justify-content: flex-start;
}

.client-dashboard-quote-sheet-signature-mark {
    width: 74px;
    height: 74px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(241, 138, 32, 0.16) 0%, rgba(10, 107, 82, 0.12) 100%);
    color: #0a6b52;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.client-dashboard-stage-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.client-dashboard-detail-side-card span {
    display: block;
    color: #6a7670;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.client-dashboard-detail-side-card strong {
    display: block;
    margin-top: 8px;
    color: #17231f;
    font-size: 24px;
    line-height: 1.2;
}

.client-dashboard-detail-side-card p {
    margin: 8px 0 0;
    color: #65726c;
    font-weight: 700;
    line-height: 1.6;
}

.client-dashboard-detail-side-card.is-accent {
    background:
        radial-gradient(200px 140px at 100% 0%, rgba(241, 138, 32, 0.16), transparent 64%),
        rgba(10, 107, 82, 0.05);
}

.client-dashboard-detail-side-actions {
    display: grid;
    gap: 10px;
    margin-top: 18px;
}

.client-dashboard-detail-side-actions .btn,
.client-dashboard-detail-side-actions .client-dashboard-link {
    justify-content: center;
    width: 100%;
}

.client-dashboard-repair-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 20px;
    border-radius: 24px;
    background: #073f33;
    color: #ffffff;
}

.client-dashboard-repair-summary strong {
    display: block;
    margin-top: 6px;
    color: #ffffff;
    font-size: 24px;
}

.client-dashboard-repair-summary .client-dashboard-pill {
    background: #f18a20;
    color: #ffffff;
}

.client-dashboard-progress {
    height: 22px;
    margin: 22px 0 26px;
    border-radius: 999px;
    background: rgba(10, 107, 82, 0.08);
}

.client-dashboard-progress .progress-bar {
    border-radius: 999px;
    background: linear-gradient(90deg, #0a6b52, #f18a20);
    font-weight: 900;
}

.client-dashboard-timeline {
    display: grid;
    gap: 18px;
}

.client-dashboard-timeline-item {
    position: relative;
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 16px;
}

.client-dashboard-timeline-item:not(:last-child)::before {
    content: "";
    position: absolute;
    left: 14px;
    top: 34px;
    bottom: -14px;
    width: 2px;
    background: rgba(10, 107, 82, 0.14);
}

.client-dashboard-timeline-item > span {
    width: 30px;
    height: 30px;
    display: block;
    border-radius: 50%;
    background: #dfe8e4;
    border: 6px solid #ffffff;
    box-shadow: 0 0 0 1px rgba(10, 107, 82, 0.15);
    z-index: 1;
}

.client-dashboard-timeline-item.is-done > span,
.client-dashboard-timeline-item.is-current > span {
    background: #0a6b52;
}

.client-dashboard-timeline-item.is-current > span {
    box-shadow: 0 0 0 7px rgba(241, 138, 32, 0.16);
}

.client-dashboard-timeline-item strong {
    display: block;
    color: #17231f;
    font-size: 18px;
}

.client-dashboard-timeline-item p {
    margin: 5px 0 0;
    color: #6a7670;
}

.client-dashboard-table-card {
    overflow: hidden;
}

.client-dashboard-table {
    --bs-table-bg: transparent;
    --bs-table-color: #283631;
    --bs-table-border-color: rgba(7, 63, 51, 0.08);
    vertical-align: middle;
}

.client-dashboard-table thead th {
    color: #6a7670;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.client-dashboard-table tbody td {
    padding-top: 18px;
    padding-bottom: 18px;
    font-weight: 700;
}

.client-dashboard-table a {
    color: #0a6b52;
    font-weight: 900;
}

.client-dashboard-table-actions {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 14px;
}

.client-dashboard-table-actions button,
.client-dashboard-table-actions a {
    padding: 0;
    border: 0;
    background: transparent;
    color: #0a6b52;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
    white-space: nowrap;
}

.client-dashboard-table-actions button:hover,
.client-dashboard-table-actions button:focus,
.client-dashboard-table-actions a:hover,
.client-dashboard-table-actions a:focus {
    color: #f18a20;
}

.client-dashboard-table-muted {
    color: #7e8b86;
    font-size: 13px;
    font-weight: 700;
}

.client-dashboard-pill.is-warning {
    background: rgba(241, 138, 32, 0.14);
    color: #bd6912;
}

.client-dashboard-pill.is-success {
    background: rgba(25, 135, 84, 0.12);
    color: #198754;
}

.client-dashboard-support {
    padding: 0 0 82px;
}

.client-dashboard-support-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 36px;
    border-radius: 34px;
    background:
        radial-gradient(520px 260px at 100% 0%, rgba(241, 138, 32, 0.2), transparent 64%),
        #073f33;
    color: #ffffff;
}

.client-dashboard-support h2 {
    margin: 14px 0 0;
    color: #ffffff;
    font-size: clamp(28px, 4vw, 46px);
    letter-spacing: -0.04em;
}

.client-dashboard-footer {
    padding: 54px 0 24px;
    background: #071b16;
    color: rgba(255, 255, 255, 0.78);
}

.client-dashboard-footer img {
    max-width: 178px;
    margin-bottom: 18px;
    filter: brightness(0) invert(1);
}

.client-dashboard-footer h3 {
    color: #ffffff;
    font-size: 20px;
}

.client-dashboard-footer p {
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
}

.client-dashboard-footer ul {
    display: grid;
    gap: 10px;
    padding: 0;
    margin: 12px 0 0;
    list-style: none;
}

.client-dashboard-footer a {
    color: rgba(255, 255, 255, 0.76);
    font-weight: 700;
}

.client-dashboard-footer a:hover,
.client-dashboard-footer a:focus {
    color: #f18a20;
}

.client-dashboard-footer-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.client-dashboard-footer-bottom {
    margin-top: 34px;
    padding-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

@media (max-width: 1199.98px) {
    .client-dashboard-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .client-dashboard-profile {
        position: static;
    }

    .client-space-shell {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .client-space-mobile-bar {
        display: block;
    }

    .client-space-sidebar {
        position: static;
        display: none;
    }

    .client-space-sidebar.is-open {
        display: grid;
    }

    .client-dashboard-detail-layout {
        grid-template-columns: 1fr;
    }

    .client-dashboard-detail-top-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .client-dashboard-detail-side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .client-dashboard-topbar-inner,
    .client-dashboard-support-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .client-dashboard-nav {
        min-height: auto;
        padding: 14px 0;
    }

    .client-dashboard-hero {
        padding: 72px 0 64px;
    }

    .client-dashboard-highlight-grid,
    .client-dashboard-detail-top-cards,
    .client-dashboard-vehicle-specs--light,
    .client-dashboard-stage-grid,
    .client-dashboard-detail-side,
    .client-space-sidebar-links {
        grid-template-columns: 1fr;
    }

    .client-dashboard-vehicle-hero {
        grid-template-columns: 1fr;
        padding: 22px;
    }

    .client-dashboard-vehicle-hero-main h4 {
        font-size: 32px;
    }
}

@media (max-width: 767.98px) {
    .client-dashboard-stats,
    .client-dashboard-vehicle-specs,
    .client-dashboard-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .client-dashboard-card,
    .client-dashboard-profile,
    .client-dashboard-toggle-panel,
    .client-dashboard-support-inner,
    .client-dashboard-status-card {
        border-radius: 24px;
        padding: 22px;
    }

    .client-dashboard-card-head {
        align-items: flex-start;
    }

    .client-dashboard-panel,
    .client-dashboard-detail-side-card {
        padding: 18px;
        border-radius: 22px;
    }

    .client-dashboard-panel-head h4 {
        font-size: 21px;
    }

    .client-dashboard-vehicle-hero-side strong {
        font-size: 40px;
    }

    .client-dashboard-repair-summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .client-dashboard-vehicle-item,
    .client-dashboard-quote-item {
        align-items: flex-start;
        flex-direction: column;
    }

    .client-dashboard-vehicle-actions,
    .client-dashboard-inline-actions {
        align-items: stretch;
        justify-content: flex-start;
        width: 100%;
    }

    .client-dashboard-detail-btn {
        width: 100%;
    }

    .client-dashboard-hero-profile,
    .client-dashboard-profile-summary {
        align-items: flex-start;
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    .client-dashboard-hero-profile-token {
        width: 92px;
        height: 92px;
        border-radius: 26px;
    }

    .client-dashboard-info-card--vehicle {
        min-height: 190px;
    }

    .client-dashboard-info-card--vehicle strong {
        font-size: 22px;
    }

    .client-dashboard-info-card .client-dashboard-info-card-icon {
        flex-basis: 70px;
        width: 70px;
        height: 70px;
        font-size: 28px;
        border-radius: 22px;
    }

    .client-dashboard-info-card-badge {
        gap: 12px;
    }

    .client-dashboard-info-card .client-dashboard-info-card-label {
        min-height: 36px;
        padding: 0 14px;
    }

    .client-inner-header-inner,
    .client-inner-header-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .client-inner-header-inner {
        padding: 16px 0;
    }

    .client-inner-header-actions {
        width: 100%;
    }

    .client-inner-header-actions .btn,
    .client-inner-header-actions .client-dashboard-link {
        justify-content: center;
        width: 100%;
    }

    .client-inner-summary {
        min-height: auto;
    }

    .client-dashboard-gallery-modal-stage {
        grid-template-columns: 42px minmax(0, 1fr) 42px;
        gap: 10px;
    }

    .client-dashboard-gallery-modal-nav {
        width: 42px;
        height: 42px;
        font-size: 14px;
    }

    .client-dashboard-gallery-modal-meta {
        align-items: stretch;
        flex-direction: column;
    }

    .client-dashboard-gallery-modal-thumbs {
        grid-auto-columns: 84px;
    }

    .client-dashboard-gallery-modal-thumb img {
        height: 60px;
    }

    .client-dashboard-quote-modal-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .client-dashboard-quote-modal-actions .btn,
    .client-dashboard-quote-modal-actions .client-dashboard-link {
        justify-content: center;
        width: 100%;
    }

    .client-dashboard-quote-sheet,
    .client-dashboard-quote-preview {
        border-radius: 22px;
    }

    .client-dashboard-quote-sheet {
        padding: 22px;
    }

    .client-dashboard-quote-sheet-head,
    .client-dashboard-quote-sheet-title-row,
    .client-dashboard-quote-sheet-total,
    .client-dashboard-quote-sheet-signature {
        align-items: flex-start;
        flex-direction: column;
    }

    .client-dashboard-quote-sheet-meta,
    .client-dashboard-quote-sheet-total-box {
        text-align: left;
    }

    .client-dashboard-quote-sheet-boxes,
    .client-dashboard-quote-sheet-highlights {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .client-dashboard-hero h1 {
        font-size: 40px;
    }

    .client-dashboard-hero-actions,
    .client-dashboard-support-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .client-dashboard-hero-actions .btn,
    .client-dashboard-support-actions .btn,
    .client-dashboard-support-actions .client-dashboard-link {
        justify-content: center;
        width: 100%;
    }

    .client-dashboard-gallery-modal .modal-header,
    .client-dashboard-gallery-modal .modal-body,
    .client-dashboard-quote-modal .modal-header,
    .client-dashboard-quote-modal .modal-body,
    .client-vehicle-section-modal .modal-header,
    .client-vehicle-section-modal .modal-body {
        padding-left: 18px;
        padding-right: 18px;
    }

    .client-dashboard-gallery-modal .modal-title,
    .client-dashboard-quote-modal .modal-title,
    .client-vehicle-section-modal .modal-title {
        font-size: 22px;
    }

    .client-dashboard-quote-preview {
        padding: 4px;
    }

    .client-dashboard-quote-sheet-brand {
        align-items: flex-start;
        flex-direction: column;
    }

    .client-dashboard-quote-sheet-title-row h3 {
        font-size: 28px;
    }

    .client-dashboard-stats,
    .client-dashboard-vehicle-specs,
    .client-dashboard-info-grid {
        grid-template-columns: 1fr;
    }

    .client-dashboard-info-card--vehicle {
        min-height: auto;
    }

    .client-dashboard-info-card--vehicle strong {
        font-size: 20px;
    }

    .client-dashboard-info-card .client-dashboard-info-card-icon {
        flex-basis: 64px;
        width: 64px;
        height: 64px;
        font-size: 26px;
        border-radius: 20px;
    }

    .client-dashboard-info-card .client-dashboard-info-card-label {
        min-height: 34px;
        font-size: 10px;
        letter-spacing: 0.12em;
    }

    .client-dashboard-table tbody td,
    .client-dashboard-table thead th {
        white-space: nowrap;
    }
}
