/* Hiddengem frontend integration for Template/Frontend Rhythm. */
:root {
    --hgt-rhythm-black: #111;
    --hgt-rhythm-ink: #333;
    --hgt-rhythm-muted: #777;
    --hgt-rhythm-line: #e9e9e9;
    --hgt-rhythm-soft: #f8f8f8;
    --hgt-rhythm-gray: #f4f4f4;
    --hgt-rhythm-accent: #e41919;
    --hgt-rhythm-success: #1b8f68;
    --hgt-rhythm-warning: #b7791f;
    --hgt-rhythm-danger: #c53030;
}

/* Home: minimal luxury FIT presentation. */
.hgt-home-luxury-hero {
    position: relative;
    min-height: min(94vh, 860px);
    padding: clamp(112px, 12vw, 148px) 0 42px;
    background-image: linear-gradient(90deg, rgba(8, 10, 12, 0.74), rgba(8, 10, 12, 0.36) 54%, rgba(8, 10, 12, 0.12)), var(--hgt-home-hero);
    background-position: center;
    background-size: cover;
}

.hgt-home-luxury-hero::before {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.32));
}

.hgt-home-luxury-hero .hgt-hero-grid {
    min-height: min(72vh, 670px);
    align-items: end;
}

.hgt-home-luxury-hero .hgt-hero-copy {
    grid-template-columns: minmax(0, 0.9fr) minmax(420px, 0.85fr);
    gap: clamp(24px, 4vw, 52px);
    align-items: end;
}

.hgt-home-luxury-hero .hgt-hero-copy > h1,
.hgt-home-luxury-hero .hgt-hero-copy > p,
.hgt-home-luxury-hero .hgt-hero-actions,
.hgt-home-luxury-hero .hgt-luxury-proof-row,
.hgt-home-luxury-hero .hgt-scroll-cue {
    grid-column: 1;
}

.hgt-home-luxury-hero .hgt-hero-copy > h1 {
    max-width: 660px;
    margin-bottom: 18px;
    font-size: clamp(48px, 7vw, 88px);
    line-height: 0.96;
    letter-spacing: 0;
}

.hgt-home-luxury-hero .hgt-hero-copy > p {
    max-width: 560px;
    margin-bottom: 24px;
    font-size: 17px;
    line-height: 1.7;
}

.hgt-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 22px;
}

.hgt-home-luxury-hero .button {
    min-width: 178px;
    border-color: #fff;
    background: #fff !important;
    color: #111 !important;
}

.hgt-home-luxury-hero .button.ghost {
    border-color: rgba(255, 255, 255, 0.72);
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
}

.hgt-luxury-proof-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    max-width: 640px;
}

.hgt-hero-member-shortcuts {
    grid-column: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: -8px 0 20px;
}

.hgt-hero-member-shortcuts a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0;
    text-decoration: none !important;
}

.hgt-hero-member-shortcuts a:hover {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
}

.hgt-luxury-proof-row span {
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.78);
    font-size: 12px;
    line-height: 1.45;
}

.hgt-luxury-proof-row strong {
    display: block;
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-home-luxury-hero .hgt-ai-assistant {
    grid-column: 2;
    grid-row: 1 / span 5;
    border: 0;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.22);
}

.hgt-home-luxury-hero .hgt-hero-prompt-shell textarea {
    border-radius: 8px;
    background: #fbfbf8;
}

.hgt-hero-image-rail {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(24px, 4vw, 38px);
}

.hgt-hero-gem-card {
    position: relative;
    min-height: 155px;
    display: grid;
    align-content: end;
    gap: 6px;
    overflow: hidden;
    padding: 18px;
    border-radius: 8px;
    color: #fff;
    text-decoration: none !important;
    isolation: isolate;
}

.hgt-hero-gem-card img {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.hgt-hero-gem-card::after {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.74));
    content: "";
}

.hgt-hero-gem-card:hover img {
    transform: scale(1.04);
}

.hgt-hero-gem-card span {
    color: rgba(255, 255, 255, 0.72);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-hero-gem-card strong {
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: 25px;
    font-weight: 300;
    line-height: 1.05;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-home-luxury-hero .hgt-scroll-cue {
    margin-top: 16px;
    letter-spacing: 0;
}

.hgt-where-next {
    background: #fff;
}

.hgt-where-next .hgt-home-section-title,
.hgt-home-package-band .hgt-home-section-title {
    max-width: 680px;
    margin-bottom: 34px;
}

.hgt-where-next .hgt-home-section-title h2,
.hgt-fit-planner-copy h2,
.hgt-home-package-band .hgt-home-section-title h2,
.hgt-home-faq > .hgt-home-shell > h2,
.hgt-home-image-cta h2 {
    letter-spacing: 0;
}

.hgt-luxury-category-card {
    position: relative;
    min-height: 360px;
    align-content: end;
    overflow: hidden;
    padding: 24px;
    border: 0;
    border-radius: 8px;
    background-image: linear-gradient(180deg, rgba(6, 8, 9, 0.08), rgba(6, 8, 9, 0.86)), var(--hgt-category-image);
    background-position: center;
    background-size: cover;
    color: #fff !important;
    isolation: isolate;
}

.hgt-luxury-category-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 58px rgba(17, 17, 17, 0.14);
}

.hgt-luxury-category-card .hgt-luxury-icon {
    width: 44px;
    height: 44px;
    border-color: rgba(255, 255, 255, 0.58);
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
}

.hgt-luxury-category-card .hgt-activity-card-copy strong {
    color: #fff;
    font-size: 24px;
    letter-spacing: 0;
}

.hgt-luxury-category-card .hgt-activity-card-copy small,
.hgt-luxury-category-card .hgt-activity-card-meta {
    color: rgba(255, 255, 255, 0.78);
}

.hgt-luxury-category-card .hgt-activity-card-subcats {
    max-height: 66px;
    overflow: hidden;
}

.hgt-luxury-category-card .hgt-activity-card-subcats em {
    border-color: rgba(255, 255, 255, 0.28);
    color: #fff;
    letter-spacing: 0;
}

.hgt-luxury-card-cta {
    display: inline-flex;
    width: fit-content;
    margin-top: 6px;
    padding-bottom: 3px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
    color: #fff;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-fit-planner {
    background: #f7f7f4;
}

.hgt-fit-planner-grid {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
    gap: clamp(24px, 4vw, 46px);
    align-items: center;
    text-align: left;
}

.hgt-fit-planner-media {
    margin: 0;
}

.hgt-fit-planner-media img {
    width: 100%;
    aspect-ratio: 4 / 3;
    display: block;
    object-fit: cover;
    border-radius: 8px;
}

.hgt-fit-planner-copy h2 {
    max-width: 560px;
    margin: 0;
    font-size: clamp(36px, 4.8vw, 58px);
    line-height: 1.02;
}

.hgt-fit-planner-copy p {
    max-width: 560px;
    margin: 16px 0 22px;
    font-size: 17px;
    line-height: 1.7;
}

.hgt-fit-planner-grid .hgt-home-feature-row {
    grid-column: 1 / -1;
    margin-top: 0;
}

.hgt-fit-planner-grid .hgt-home-feature-row div {
    border-radius: 8px;
}

.hgt-home-package-band {
    background: #fff;
}

.hgt-package-preview-card {
    position: relative;
    display: grid;
    gap: 12px;
    border-radius: 8px;
}

.hgt-package-preview-card.is-recommended {
    border-color: rgba(15, 143, 114, 0.32);
    background: #edf8f4;
    box-shadow: 0 18px 46px rgba(15, 143, 114, 0.1);
}

.hgt-package-recommend-label {
    width: fit-content;
    padding: 7px 10px;
    background: #0f8f72;
    color: #fff;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-package-preview-card > strong {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 34px;
    font-weight: 300;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-package-preview-card > span:not(.hgt-package-recommend-label) {
    color: #0f7c63;
    font-weight: 700;
}

.hgt-package-preview-card .button {
    align-self: end;
}

.hgt-home-faq .hgt-faq-list {
    border-radius: 8px;
    overflow: hidden;
}

.hgt-home-image-cta {
    position: relative;
    background-image: linear-gradient(90deg, rgba(8, 10, 12, 0.84), rgba(8, 10, 12, 0.54)), var(--hgt-cta-image);
    background-position: center;
    background-size: cover;
}

.hgt-home-image-cta .hgt-cta-panel {
    max-width: 640px;
    margin-left: 0;
    text-align: left;
}

.hgt-home-image-cta .hgt-cta-button {
    border-radius: 0;
}

@media (max-width: 1200px) {
    .hgt-home-luxury-hero .hgt-hero-copy {
        grid-template-columns: 1fr;
    }

    .hgt-home-luxury-hero .hgt-hero-copy > h1,
    .hgt-home-luxury-hero .hgt-hero-copy > p,
    .hgt-home-luxury-hero .hgt-hero-actions,
    .hgt-home-luxury-hero .hgt-luxury-proof-row,
    .hgt-home-luxury-hero .hgt-ai-assistant,
    .hgt-home-luxury-hero .hgt-scroll-cue {
        grid-column: 1;
        grid-row: auto;
    }

    .hgt-home-luxury-hero .hgt-ai-assistant {
        max-width: 760px;
    }

    .hgt-activity-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hgt-fit-planner-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .hgt-home-luxury-hero {
        min-height: auto;
        padding: 104px 0 46px;
        background-image: linear-gradient(180deg, rgba(8, 10, 12, 0.18), rgba(8, 10, 12, 0.86)), var(--hgt-home-hero);
    }

    .hgt-home-luxury-hero .hgt-hero-copy {
        gap: 18px;
    }

    .hgt-home-luxury-hero .hgt-hero-copy > h1 {
        font-size: 42px;
    }

    .hgt-home-luxury-hero .hgt-hero-copy > p,
    .hgt-fit-planner-copy p {
        font-size: 15px;
    }

    .hgt-hero-actions,
    .hgt-hero-actions .button,
    .hgt-home-luxury-hero .button,
    .hgt-fit-planner-copy .button {
        width: 100%;
    }

    .hgt-luxury-proof-row,
    .hgt-hero-image-rail,
    .hgt-activity-category-grid,
    .hgt-fit-planner-grid .hgt-home-feature-row {
        grid-template-columns: 1fr;
    }

    .hgt-hero-gem-card {
        min-height: 170px;
    }

    .hgt-luxury-category-card {
        min-height: 315px;
    }

    .hgt-fit-planner-copy h2 {
        font-size: 34px;
    }

    .hgt-home-image-cta .hgt-cta-panel {
        max-width: none;
    }
}

body.hgt-rhythm-ux {
    min-height: 100%;
    background: #fff;
    color: var(--hgt-rhythm-ink);
    letter-spacing: 0;
}

body.hgt-rhythm-ux button,
body.hgt-rhythm-ux input,
body.hgt-rhythm-ux select,
body.hgt-rhythm-ux textarea {
    font-family: "Open Sans", arial, sans-serif;
    letter-spacing: 0;
}

body.hgt-rhythm-ux svg {
    width: 1em;
    height: 1em;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.hgt-frontend {
    min-height: 100vh;
    overflow: hidden;
}

.wrap,
.hgt-home-shell {
    width: min(1170px, calc(100% - 40px));
    margin-right: auto;
    margin-left: auto;
}

.wrap_float {
    width: 100%;
}

.wrap_float::after,
.hgt-section-head::after {
    display: table;
    clear: both;
    content: "";
}

.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.d-none {
    display: none !important;
}

.d-flex {
    display: flex !important;
}

.align-items-center {
    align-items: center !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.gap-2 {
    gap: 10px !important;
}

.mt-3 {
    margin-top: 20px !important;
}

.mb-1 {
    margin-bottom: 5px !important;
}

.mb-2 {
    margin-bottom: 10px !important;
}

.full {
    width: 100%;
}

.hgt-text-muted,
.text-muted {
    color: var(--hgt-rhythm-muted) !important;
}

.hgt-main-nav {
    text-transform: uppercase;
}

.hgt-main-nav .full-wrapper {
    margin-right: 3%;
    margin-left: 3%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 75px;
}

.hgt-logo-text {
    display: inline-flex !important;
    align-items: center;
    gap: 0;
    height: 75px;
    line-height: 75px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0.22em;
}

.hgt-logo-text:hover {
    color: #111;
    text-decoration: none;
}

.hgt-logo-text em {
    color: var(--hgt-rhythm-accent);
    font-style: normal;
}

.main-nav.dark .hgt-logo-text,
.main-nav.dark .hgt-logo-text:hover {
    color: #fff;
}

.main-nav.small-height .hgt-logo-text {
    height: 55px;
    line-height: 55px;
}

.hgt-main-nav .nav-logo-wrap {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
}

.hgt-main-nav .inner-nav.desktop-nav.hgt-nav-shell {
    display: flex;
    float: none;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding-right: 165px;
    padding-left: 205px;
}

.hgt-main-nav .hgt-primary-nav,
.hgt-main-nav .hgt-utility-nav {
    display: flex;
    float: none;
    align-items: center;
    width: auto;
    margin: 0;
}

.hgt-main-nav .hgt-primary-nav {
    justify-content: center;
}

.hgt-main-nav .hgt-utility-nav {
    position: absolute;
    top: 0;
    right: 0;
    justify-content: flex-end;
}

.hgt-main-nav .inner-nav ul li {
    margin-left: 18px;
}

.hgt-main-nav .hgt-primary-nav > li:first-child,
.hgt-main-nav .hgt-utility-nav > li:first-child {
    margin-left: 0;
}

.hgt-main-nav .inner-nav ul li a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    letter-spacing: 1.6px;
}

.hgt-main-nav .inner-nav ul li .mn-sub li a,
.hgt-main-nav .mn-sub li a,
.hgt-menu-button {
    display: flex;
    align-items: center;
    gap: 11px;
}

.hgt-nav-icon {
    flex: 0 0 16px;
    width: 16px;
    color: var(--hgt-rhythm-accent);
    font-size: 13px;
    line-height: 1;
    text-align: center;
}

.hgt-nav-label {
    display: inline-block;
    min-width: 0;
    line-height: 1.3;
}

.hgt-primary-nav > li > a > .hgt-nav-label,
.hgt-utility-nav > li > a > .hgt-nav-label {
    padding-left: 1px;
}

.main-nav.dark .hgt-primary-nav > li > a > .hgt-nav-icon {
    color: #fff;
}

.hgt-main-nav .mn-sub .hgt-nav-icon,
.hgt-menu-button .hgt-nav-icon {
    color: #f5f5f5;
    opacity: 0.78;
}

.hgt-mobile-submenu-state {
    display: none;
}

.hgt-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 22px;
    width: 22px;
    height: 13px;
    overflow: hidden;
    border: 0;
    border-radius: 2px;
    background: transparent;
    line-height: 0;
    box-shadow: 0 0 0 1px rgba(17, 17, 17, 0.14);
}

body.hgt-rhythm-ux .hgt-flag svg {
    display: block;
    flex: 0 0 100%;
    width: 100%;
    height: 13px;
    fill: initial;
    stroke: initial;
    stroke-width: initial;
}

.hgt-flag-fallback {
    background: transparent;
    box-shadow: none;
}

.hgt-menu-caret {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-left: 2px;
    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
}

.hgt-mobile-bars {
    display: inline-grid;
    gap: 4px;
    width: 18px;
    vertical-align: middle;
}

.hgt-mobile-bars span {
    display: block;
    width: 18px;
    height: 1px;
    background: currentColor;
}

.hgt-main-nav .mn-sub form {
    margin: 0;
}

.hgt-menu-button {
    display: flex;
    align-items: center;
    gap: 11px;
    width: 100%;
    padding: 10px 15px;
    border: 0;
    background: transparent;
    color: #b0b0b0;
    font-size: 11px;
    line-height: 1.3;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.hgt-menu-button:hover {
    color: #fff;
}

.hgt-nav-search {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 75px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #777;
    line-height: 75px;
}

.main-nav.dark .hgt-nav-search {
    color: rgba(255, 255, 255, 0.72);
}

.main-nav.small-height .hgt-nav-search {
    height: 55px;
    line-height: 55px;
}

.hgt-nav-search-label {
    display: none;
}

.hgt-nav-search:hover {
    color: #111;
}

.hgt-search-icon {
    position: relative;
    display: inline-block;
    width: 15px;
    height: 15px;
    border: 1px solid currentColor;
    border-radius: 50%;
    vertical-align: middle;
}

.hgt-search-icon::after {
    position: absolute;
    right: -5px;
    bottom: -4px;
    width: 7px;
    height: 1px;
    background: currentColor;
    transform: rotate(45deg);
    content: "";
}

.hgt-search-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.96);
}

.hgt-search-overlay[hidden] {
    display: none;
}

.hgt-search-close {
    position: absolute;
    top: 35px;
    right: 35px;
    width: 42px;
    height: 42px;
    border: 0;
    background: transparent;
}

.hgt-search-close::before,
.hgt-search-close::after {
    position: absolute;
    top: 20px;
    left: 8px;
    width: 27px;
    height: 2px;
    background: #111;
    content: "";
}

.hgt-search-close::before {
    transform: rotate(45deg);
}

.hgt-search-close::after {
    transform: rotate(-45deg);
}

.hgt-search-panel {
    max-width: 860px;
    margin: 0 auto;
}

.hgt-search-panel label {
    display: block;
    margin-bottom: 25px;
    color: #111;
    font-size: 28px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.18em;
}

.hgt-search-panel-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 15px;
}

.hgt-search-panel input {
    height: 48px;
    padding: 0 18px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    font-size: 14px;
}

.hgt-page > .page_head,
.page_head {
    position: relative;
    padding: 110px 0 95px;
    background-color: #111;
    background-image: linear-gradient(135deg, #111 0%, #2d2d2d 100%);
    background-position: center;
    background-size: cover;
    color: #fff;
    text-align: center;
}

.page_head .country,
.page_head .subtitle,
.page_head p {
    color: rgba(255, 255, 255, 0.78);
}

.page_head .country,
.hgt-eyebrow {
    margin: 0 0 13px;
    color: var(--hgt-rhythm-accent);
    font-family: Dosis, arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    text-transform: uppercase;
    letter-spacing: 0.22em;
}

.page_head .title {
    margin-bottom: 16px;
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: 44px;
    font-weight: 300;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.18em;
}

.page_head .subtitle {
    max-width: 780px;
    margin-right: auto;
    margin-left: auto;
    font-size: 16px;
    line-height: 1.8;
}

.breadcrumbs {
    border-bottom: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    color: #999;
    font-size: 12px;
    line-height: 1.4;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.breadcrumbs .wrap {
    padding-top: 18px;
    padding-bottom: 18px;
}

.breadcrumbs a {
    color: #777;
}

.breadcrumbs .separator {
    display: inline-block;
    margin: 0 9px;
    color: #bbb;
}

.hgt-section {
    padding: 95px 0;
    background: #fff;
}

.hgt-section + .hgt-section {
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 40px;
}

.hgt-section-head h1,
.hgt-section-head h2,
.hgt-home-section-title h2,
.hgt-home-info-card h2,
.hgt-cta-panel h2 {
    margin: 0 0 12px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 300;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.18em;
}

.hgt-section-head h1,
.hgt-section-head h2 {
    font-size: 34px;
}

.hgt-section-head p,
.hgt-home-section-title p,
.hgt-home-info-card p {
    max-width: 760px;
    color: var(--hgt-rhythm-muted);
    line-height: 1.8;
}

.button,
a.button,
button.button,
.hgt-cta-button,
.write_comment .submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 39px;
    padding: 9px 28px;
    border: 2px solid transparent;
    border-radius: 2px;
    background: rgba(34, 34, 34, 0.92);
    color: #fff !important;
    font-family: "Open Sans", arial, sans-serif;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.3;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: all 0.2s cubic-bezier(0, 0, 0.58, 1);
}

.button:hover,
a.button:hover,
button.button:hover,
.hgt-cta-button:hover,
.write_comment .submit:hover {
    background: rgba(0, 0, 0, 0.72);
    color: rgba(255, 255, 255, 0.9) !important;
}

.button.ghost,
a.button.ghost,
button.button.ghost {
    border-color: #111;
    background: transparent;
    color: #111 !important;
}

.button.ghost:hover,
a.button.ghost:hover,
button.button.ghost:hover {
    border-color: #111;
    background: #111;
    color: #fff !important;
}

.button.active,
.button.full {
    width: 100%;
}

.hgt-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.hgt-form {
    display: grid;
    gap: 18px;
}

.hgt-form label {
    display: grid;
    gap: 8px;
    color: #555;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-form input,
.hgt-form select,
.hgt-form textarea,
.input,
.textarea,
.hgt-search-inline input,
.hgt-comment-select {
    width: 100%;
    min-height: 42px;
    padding: 10px 13px;
    border: 1px solid #dfdfdf;
    border-radius: 0;
    background: #fff;
    color: #333;
    font-size: 13px;
    line-height: 1.5;
    outline: none;
    transition: border-color 0.2s ease;
}

.hgt-form textarea,
.textarea {
    min-height: 110px;
    resize: vertical;
}

.hgt-form input:focus,
.hgt-form select:focus,
.hgt-form textarea:focus,
.input:focus,
.textarea:focus,
.hgt-search-inline input:focus {
    border-color: #111;
}

.hgt-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.hgt-panel,
.hgt-card,
.hgt-status-card,
.hgt-package-card,
.hgt-package-preview-card,
.hgt-accommodation-card,
.hgt-room-card,
.hgt-review-card,
.hgt-insurance-card,
.hgt-package-status-card,
.hgt-package-shared-card,
.hgt-package-source-card,
.hgt-related-card,
.hgt-ai-booking-card,
.comment_item,
.write_comment,
._block {
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.035);
}

.hgt-panel-body,
.hgt-card-body,
.hgt-accommodation-card-body,
.hgt-ai-booking-body {
    padding: 28px;
}

.hgt-panel {
    min-width: 0;
    overflow: hidden;
}

.hgt-panel h2,
.hgt-panel h3,
.hgt-card h3,
.hgt-activity-list-card h3,
.hgt-accommodation-card h3,
.hgt-package-card h3,
.hgt-room-card h3,
.hgt-review-card strong {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 400;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-panel p,
.hgt-card p,
.hgt-activity-list-card p,
.hgt-accommodation-card p,
.hgt-room-card p,
.hgt-review-card p,
.hgt-insurance-card p {
    color: var(--hgt-rhythm-muted);
    line-height: 1.8;
}

.hgt-grid,
.hgt-activity-list-grid,
.hgt-accommodation-grid,
.hgt-package-card-grid,
.hgt-package-preview-grid,
.hgt-package-shared-grid,
.hgt-package-source-grid,
.hgt-review-grid,
.hgt-room-grid,
.hgt-related-grid {
    display: grid;
    gap: 30px;
}

.hgt-grid,
.hgt-accommodation-grid,
.hgt-package-preview-grid,
.hgt-package-shared-grid,
.hgt-package-source-grid,
.hgt-review-grid,
.hgt-room-grid,
.hgt-related-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hgt-dashboard-grid,
.hgt-package-proof-grid,
.hgt-package-inline-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 35px;
}

.hgt-dashboard-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.hgt-accommodation-filter {
    margin-bottom: 32px;
}

.hgt-accommodation-filter-grid {
    display: grid;
    grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(150px, 1fr));
    gap: 16px;
    align-items: end;
}

.hgt-accommodation-filter label {
    display: grid;
    gap: 8px;
    color: var(--hgt-rhythm-ink);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.hgt-accommodation-filter input,
.hgt-accommodation-filter select {
    width: 100%;
    min-height: 46px;
    padding: 10px 13px;
    border: 1px solid rgba(17, 17, 17, 0.16);
    border-radius: 4px;
    background: #fff;
    color: var(--hgt-rhythm-ink);
    font-size: 13px;
    outline: none;
}

.hgt-accommodation-filter input:focus,
.hgt-accommodation-filter select:focus {
    border-color: var(--hgt-rhythm-ink);
}

.hgt-accommodation-filter-actions,
.hgt-accommodation-card-meta,
.hgt-accommodation-rate-row,
.hgt-room-rate-line,
.hgt-accommodation-detail-facts {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.hgt-accommodation-filter-actions {
    margin-top: 20px;
}

.hgt-accommodation-filter-actions span,
.hgt-accommodation-card-meta span,
.hgt-accommodation-detail-facts span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 10px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    border-radius: 4px;
    background: #f8f5ec;
    color: var(--hgt-rhythm-muted);
    font-size: 12px;
    font-weight: 700;
}

.hgt-accommodation-card-meta {
    margin: 18px 0;
}

.hgt-accommodation-rate-row,
.hgt-room-rate-line {
    justify-content: space-between;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-accommodation-rate-row strong,
.hgt-room-rate-line strong {
    color: var(--hgt-rhythm-ink);
}

.hgt-accommodation-rate-row span,
.hgt-room-rate-line span {
    color: var(--hgt-rhythm-muted);
    font-size: 13px;
    font-weight: 700;
}

.hgt-accommodation-rate-row span.is-available,
.hgt-room-rate-line span.is-available {
    color: #237a55;
}

.hgt-accommodation-detail-facts {
    margin: 18px 0;
}

.hgt-my-plan-intro {
    padding: 116px 0 34px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
    background: #f7f7f4;
}

.hgt-my-plan-intro h1 {
    max-width: 840px;
    margin: 8px 0 14px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: clamp(34px, 5vw, 64px);
    font-weight: 300;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-my-plan-intro p:last-child {
    max-width: 760px;
    margin: 0;
    color: var(--hgt-rhythm-muted);
    font-size: 15px;
    line-height: 1.8;
}

.hgt-my-plan-content {
    padding: 44px 0 84px;
}

.hgt-dashboard-page .hgt-my-plan-content {
    padding-top: 110px;
}

.hgt-my-plan-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
    margin-bottom: 35px;
}

.hgt-status-card {
    padding: 25px;
    text-align: center;
}

.hgt-status-card strong,
.hgt-status-card h3 {
    display: block;
    margin-bottom: 8px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 28px;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-ai-package-dashboard .hgt-section-head {
    align-items: center;
}

.hgt-ai-package-overview {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
    gap: 24px;
    align-items: stretch;
}

.hgt-ai-package-hero,
.hgt-ai-package-detail-card {
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-ai-package-hero {
    padding: 28px;
}

.hgt-ai-package-hero h3 {
    margin: 7px 0 12px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 34px;
    font-weight: 300;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-ai-package-hero p {
    max-width: 680px;
    color: var(--hgt-rhythm-muted);
    line-height: 1.8;
}

.hgt-ai-package-actions {
    margin-top: 20px;
}

.hgt-ai-package-metrics,
.hgt-ai-package-detail-grid {
    display: grid;
    gap: 14px;
}

.hgt-ai-package-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hgt-ai-package-metrics > div,
.hgt-ai-package-detail-card {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--hgt-rhythm-line);
    background: var(--hgt-rhythm-soft);
}

.hgt-ai-package-metrics span,
.hgt-ai-package-detail-card span {
    display: block;
    margin-bottom: 8px;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-ai-package-metrics strong,
.hgt-ai-package-detail-card strong {
    display: block;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    overflow-wrap: anywhere;
}

.hgt-ai-package-detail-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 22px;
}

.hgt-ai-package-detail-card p {
    margin: 8px 0 0;
    color: var(--hgt-rhythm-muted);
    line-height: 1.6;
}

.hgt-ai-package-meter {
    height: 8px;
    margin-top: 14px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    background: #fff;
}

.hgt-ai-package-meter span {
    display: block;
    height: 100%;
    background: var(--hgt-rhythm-accent);
}

.hgt-ai-package-feature-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
}

.hgt-ai-package-feature-list li {
    padding: 7px 10px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    color: #555;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hgt-booking-item-line + .hgt-booking-item-line {
    margin-top: 12px;
}

.hgt-my-plan-calendar {
    margin-bottom: 35px;
}

.hgt-my-plan-block {
    margin-top: 35px;
    padding: 30px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.035);
}

.hgt-minia-calendar-layout {
    display: grid;
    grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.hgt-minia-side-card,
.hgt-minia-calendar-card {
    min-width: 0;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.035);
}

.hgt-minia-side-card {
    display: grid;
    gap: 22px;
    padding: 24px;
}

.hgt-minia-calendar-card {
    padding: 24px;
}

.hgt-minia-external-events {
    display: grid;
    gap: 10px;
}

.hgt-minia-event-chip {
    display: flex;
    align-items: center;
    gap: 9px;
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid transparent;
    background: var(--hgt-rhythm-soft);
    color: #333;
    font-size: 12px;
    text-align: left;
    cursor: grab;
    user-select: none;
}

.hgt-minia-event-chip span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: currentColor;
}

.hgt-minia-event-chip.text-success {
    color: var(--hgt-rhythm-success);
}

.hgt-minia-event-chip.text-info {
    color: #2b6cb0;
}

.hgt-minia-event-chip.text-warning {
    color: var(--hgt-rhythm-warning);
}

.hgt-minia-event-chip.text-danger {
    color: var(--hgt-rhythm-danger);
}

.hgt-minia-event-chip.text-dark {
    color: #111;
}

.hgt-minia-event-chip:hover {
    border-color: currentColor;
    background: #fff;
}

.hgt-minia-event-chip:active {
    cursor: grabbing;
}

.hgt-my-plan-form input,
.hgt-my-plan-form select,
.hgt-my-plan-form textarea {
    width: 100%;
}

.hgt-google-calendar-card {
    display: grid;
    gap: 12px;
    padding: 18px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fafafa;
}

.hgt-google-calendar-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    font-weight: 700;
}

.hgt-google-calendar-card strong {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 19px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-google-calendar-card p,
.hgt-google-calendar-card small {
    margin: 0;
    color: var(--hgt-rhythm-muted);
    line-height: 1.7;
}

.hgt-empty-state {
    grid-column: 1 / -1;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.035);
}

.hgt-empty-state-body {
    padding: 28px;
}

.hgt-empty-state h2 {
    margin-top: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-empty-state p {
    color: var(--hgt-rhythm-muted);
    line-height: 1.8;
}

#touristBookingCalendar {
    min-height: 620px;
}

#touristBookingCalendar .fc-toolbar-title {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

#touristBookingCalendar .fc-button {
    border: 1px solid #111;
    border-radius: 0;
    background: #111;
    box-shadow: none;
    color: #fff;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

#touristBookingCalendar .fc-button-primary:not(:disabled).fc-button-active,
#touristBookingCalendar .fc-button-primary:not(:disabled):active {
    border-color: #333;
    background: #333;
}

#touristBookingCalendar .fc-daygrid-event,
#touristBookingCalendar .fc-timegrid-event,
#touristBookingCalendar .fc-list-event-title {
    cursor: pointer;
}

.hgt-my-plan-preview {
    margin-top: 16px;
    padding: 14px 16px;
    border: 1px solid var(--hgt-rhythm-line);
    background: var(--hgt-rhythm-soft);
    color: var(--hgt-rhythm-muted);
    line-height: 1.7;
}

.hgt-my-plan-preview strong,
.hgt-my-plan-preview span {
    display: block;
}

.hgt-my-plan-preview strong {
    color: #111;
}

.hgt-my-plan-modal {
    position: fixed;
    inset: 0;
    z-index: 200100;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(0, 0, 0, 0.58);
}

.hgt-my-plan-modal.is-open {
    display: flex;
}

.hgt-my-plan-modal-panel {
    position: relative;
    width: min(720px, 100%);
    max-height: calc(100vh - 48px);
    overflow: auto;
    padding: 30px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.25);
}

.hgt-my-plan-modal-panel h3 {
    margin-top: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-my-plan-modal-close {
    position: absolute;
    top: 16px;
    right: 16px;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    font-size: 24px;
    line-height: 1;
}

.hgt-my-plan-form {
    display: grid;
    gap: 18px;
}

.hgt-my-plan-time-fields.is-hidden {
    display: none;
}

.hgt-my-plan-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.hgt-profile-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 30px;
    align-items: start;
}

.hgt-profile-form fieldset {
    display: grid;
    gap: 24px;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.hgt-profile-sidebar {
    position: sticky;
    top: 95px;
    display: grid;
    gap: 24px;
}

.hgt-section-head.compact {
    margin-bottom: 24px;
}

.hgt-section-head.compact h2 {
    font-size: 24px;
}

.hgt-field-help {
    color: var(--hgt-rhythm-muted);
    font-size: 11px;
    line-height: 1.6;
    text-transform: none;
    letter-spacing: 0;
}

.hgt-checkbox-row {
    display: flex !important;
    align-items: flex-start;
    gap: 12px !important;
    margin-top: 18px;
    color: #555;
    font-size: 13px !important;
    line-height: 1.7;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.hgt-checkbox-row input {
    width: auto;
    min-height: 0;
    margin-top: 4px;
}

.hgt-profile-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.hgt-profile-progress {
    height: 8px;
    margin: 18px 0;
    overflow: hidden;
    background: var(--hgt-rhythm-gray);
}

.hgt-profile-progress span {
    display: block;
    height: 100%;
    background: var(--hgt-rhythm-accent);
}

.hgt-profile-checklist {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hgt-profile-checklist li {
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--hgt-rhythm-muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hgt-profile-checklist li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: 1px solid var(--hgt-rhythm-line);
    color: #999;
    font-size: 11px;
}

.hgt-profile-checklist li.is-complete {
    color: #111;
}

.hgt-profile-checklist li.is-complete span {
    border-color: var(--hgt-rhythm-success);
    color: var(--hgt-rhythm-success);
}

.profile-page {
    background: #fbfbf9;
}

.hgt-profile-minimal-page {
    color: #1d1d1b;
}

.hgt-profile-hero-minimal {
    padding: 112px 0 34px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-profile-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
    gap: 32px;
    align-items: end;
}

.hgt-profile-hero-minimal h1 {
    max-width: 720px;
    margin: 0 0 12px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: clamp(36px, 5vw, 62px);
    font-weight: 300;
    line-height: 1.05;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-profile-hero-minimal p {
    max-width: 680px;
    margin: 0;
    color: #5f6361;
    font-size: 15px;
    line-height: 1.7;
}

.hgt-profile-readiness-card,
.hgt-profile-panel,
.hgt-profile-side-card,
.hgt-profile-ai-card {
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: none;
}

.hgt-profile-readiness-card {
    display: grid;
    gap: 8px;
    padding: 22px;
}

.hgt-profile-readiness-card span,
.hgt-profile-panel-head span {
    color: #626965;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-profile-readiness-card strong {
    color: var(--hgt-rhythm-warning);
    font-family: Dosis, arial, sans-serif;
    font-size: 48px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.04em;
}

.hgt-profile-readiness-card.is-progress strong {
    color: #2d69ad;
}

.hgt-profile-readiness-card.is-progress .hgt-profile-progress span,
.hgt-profile-side-card.is-progress .hgt-profile-progress span {
    background: #2d69ad;
}

.hgt-profile-readiness-card.is-complete strong {
    color: var(--hgt-rhythm-success);
}

.hgt-profile-readiness-card.is-complete .hgt-profile-progress span,
.hgt-profile-side-card.is-complete .hgt-profile-progress span {
    background: var(--hgt-rhythm-success);
}

.hgt-profile-side-card.needs-action .hgt-profile-progress span {
    background: var(--hgt-rhythm-warning);
}

.hgt-profile-content {
    padding: 42px 0 76px;
}

.hgt-profile-panel {
    overflow: hidden;
}

.hgt-profile-panel .hgt-panel-body,
.hgt-profile-side-card .hgt-panel-body,
.hgt-profile-ai-card .hgt-panel-body {
    padding: 28px;
}

.hgt-profile-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.hgt-profile-panel-head h2,
.hgt-profile-side-card h3,
.hgt-profile-ai-card h3 {
    margin: 4px 0 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.hgt-profile-panel-head p {
    max-width: 320px;
    margin: 0;
    color: #646866;
    font-size: 13px;
    line-height: 1.65;
}

.profile-page .hgt-form label.hgt-profile-field {
    gap: 7px;
    color: #202220;
    font-size: 13px;
    text-transform: none;
    letter-spacing: 0;
}

.profile-page .hgt-field-label {
    display: flex;
    min-height: 24px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #232725;
    font-weight: 700;
    line-height: 1.35;
}

.profile-page .hgt-field-label em {
    flex: 0 0 auto;
    padding: 3px 8px;
    border: 1px solid rgba(183, 121, 31, 0.35);
    border-radius: 999px;
    background: #fff8eb;
    color: var(--hgt-rhythm-warning);
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.profile-page .hgt-profile-field.is-needed .hgt-field-label em,
.profile-page .hgt-profile-field.has-error .hgt-field-label em,
.profile-page .hgt-profile-field.has-client-error .hgt-field-label em {
    border-color: rgba(197, 48, 48, 0.24);
    background: #fff5f5;
    color: var(--hgt-rhythm-danger);
}

.profile-page .hgt-form input,
.profile-page .hgt-form select,
.profile-page .hgt-form textarea {
    border-radius: 8px;
    border-color: #d9ddd9;
    background: #fff;
    color: #1f2421;
    font-size: 14px;
}

.profile-page .hgt-form input[readonly] {
    background: #f7f7f5;
    color: #686c69;
}

.profile-page .hgt-form input:focus,
.profile-page .hgt-form select:focus,
.profile-page .hgt-form textarea:focus {
    border-color: #1d1d1b;
    box-shadow: 0 0 0 3px rgba(29, 29, 27, 0.07);
}

.profile-page .hgt-profile-field.is-needed input,
.profile-page .hgt-profile-field.is-needed textarea,
.profile-page .hgt-profile-field.is-needed select {
    border-color: rgba(183, 121, 31, 0.34);
    background: #fffdf8;
}

.hgt-profile-security-panel.needs-action {
    border-color: rgba(228, 25, 25, 0.28);
    background: #fffafa;
}

.hgt-security-notice {
    margin-bottom: 20px;
    padding: 14px 16px;
    border-left: 3px solid var(--hgt-rhythm-accent);
    background: rgba(228, 25, 25, 0.06);
}

.hgt-security-notice strong {
    display: block;
    color: #2b2b2b;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hgt-security-notice p {
    margin: 6px 0 0;
    color: #5d5d5d;
    font-size: 13px;
    line-height: 1.6;
}

.profile-page .hgt-profile-field.is-numeric input {
    font-variant-numeric: tabular-nums;
}

.profile-page .hgt-profile-field.has-error input,
.profile-page .hgt-profile-field.has-error select,
.profile-page .hgt-profile-field.has-error textarea,
.profile-page .hgt-profile-field.has-client-error input,
.profile-page .hgt-profile-field.has-client-error select,
.profile-page .hgt-profile-field.has-client-error textarea {
    border-color: var(--hgt-rhythm-danger);
    background: #fffafa;
}

.profile-page .hgt-field-help {
    color: #6f7470;
    font-size: 12px;
}

.hgt-field-error {
    color: var(--hgt-rhythm-danger);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
    text-transform: none;
    letter-spacing: 0;
}

.hgt-profile-error-summary {
    margin-bottom: 18px;
    border-radius: 8px;
}

.hgt-profile-error-summary ul {
    display: grid;
    gap: 5px;
    margin: 8px 0 0;
    padding-left: 20px;
}

.hgt-profile-error-summary.is-hidden {
    display: none;
}

.hgt-profile-sidebar {
    gap: 18px;
}

.hgt-profile-side-card h2 {
    margin: 4px 0 8px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 46px;
    font-weight: 300;
    line-height: 1;
}

.hgt-profile-checklist li {
    align-items: flex-start;
    color: #5e6560;
    font-size: 13px;
    line-height: 1.45;
    text-transform: none;
    letter-spacing: 0;
}

.hgt-profile-checklist li a {
    color: inherit;
    text-decoration: none;
}

.hgt-profile-checklist li a:hover {
    color: #111;
}

.hgt-profile-checklist li:not(.is-complete) span {
    border-color: rgba(183, 121, 31, 0.35);
    background: #fff8eb;
    color: var(--hgt-rhythm-warning);
}

.hgt-profile-guidance-list {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.hgt-profile-guidance-list article {
    padding: 14px;
    border: 1px solid #e4e4e0;
    border-radius: 8px;
    background: #fafaf7;
}

.hgt-profile-guidance-list article.is-warning {
    border-color: rgba(183, 121, 31, 0.32);
    background: #fff8eb;
}

.hgt-profile-guidance-list article.is-success {
    border-color: rgba(27, 143, 104, 0.28);
    background: #f4fbf8;
}

.hgt-profile-guidance-list strong {
    display: block;
    color: #141614;
    font-size: 13px;
    line-height: 1.45;
}

.hgt-profile-guidance-list p {
    margin: 5px 0 0;
    color: #5d625e;
    font-size: 13px;
    line-height: 1.6;
}

.profile-page .hgt-checkbox-row {
    border-radius: 8px;
    padding: 14px;
    background: #f7f7f4;
}

.hgt-account-dashboard .hgt-section {
    padding-top: 86px;
    padding-bottom: 76px;
}

.hgt-minimal-dashboard {
    display: grid;
    gap: 22px;
}

.hgt-minimal-hero {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 8px;
}

.hgt-minimal-hero h1 {
    margin: 5px 0 10px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 42px;
    font-weight: 300;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: 0.16em;
}

.hgt-minimal-hero p:not(.hgt-eyebrow) {
    max-width: 620px;
    margin: 0;
    color: var(--hgt-rhythm-muted);
    font-size: 14px;
    line-height: 1.75;
}

.hgt-minimal-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.hgt-minimal-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
    gap: 22px;
}

.hgt-next-card,
.hgt-profile-meter-card {
    min-width: 0;
    padding: 28px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-next-card {
    display: block;
    color: inherit;
    text-decoration: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.hgt-next-card:hover,
.hgt-next-card:focus-visible {
    border-color: #111;
    color: inherit;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.07);
}

.hgt-next-card:focus-visible {
    outline: 2px solid #111;
    outline-offset: 4px;
}

.hgt-next-card.needs-action,
.hgt-profile-meter-card.needs-action {
    border-color: rgba(183, 121, 31, 0.48);
    background: #fffaf2;
}

.hgt-next-card.is-complete,
.hgt-profile-meter-card.is-complete {
    border-color: rgba(27, 143, 104, 0.35);
    background: #f7fcfa;
}

.hgt-profile-meter-card.is-progress {
    border-color: rgba(45, 105, 173, 0.28);
    background: #f8fbff;
}

.hgt-status-pill {
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    margin-bottom: 18px;
    padding: 5px 10px;
    border: 1px solid currentColor;
    color: var(--hgt-rhythm-warning);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

.hgt-next-card.is-complete .hgt-status-pill {
    color: var(--hgt-rhythm-success);
}

.hgt-next-card h2 {
    max-width: 620px;
    margin: 0 0 12px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 31px;
    font-weight: 300;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

.hgt-next-card p,
.hgt-profile-meter-card p {
    margin: 0;
    color: var(--hgt-rhythm-muted);
    line-height: 1.75;
}

.hgt-next-card dl {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 16px;
    margin: 24px 0 0;
}

.hgt-next-card dl div {
    min-width: 0;
    padding-top: 14px;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-next-card dt,
.hgt-missing-details span,
.hgt-minimal-status-row span {
    display: block;
    margin-bottom: 5px;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

.hgt-next-card dd {
    margin: 0;
    color: #111;
    font-size: 14px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.hgt-meter-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.hgt-meter-head span {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-meter-head strong {
    color: var(--hgt-rhythm-warning);
    font-family: Dosis, arial, sans-serif;
    font-size: 54px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.05em;
}

.hgt-profile-meter-card.is-progress .hgt-meter-head strong {
    color: #2d69ad;
}

.hgt-profile-meter-card.is-complete .hgt-meter-head strong {
    color: var(--hgt-rhythm-success);
}

.hgt-profile-progress-large {
    height: 10px;
    margin: 0 0 16px;
}

.hgt-profile-meter-card.needs-action .hgt-profile-progress-large span {
    background: var(--hgt-rhythm-warning);
}

.hgt-profile-meter-card.is-progress .hgt-profile-progress-large span {
    background: #2d69ad;
}

.hgt-profile-meter-card.is-complete .hgt-profile-progress-large span {
    background: var(--hgt-rhythm-success);
}

.hgt-missing-details {
    margin: 18px 0;
    padding: 14px 0;
    border-top: 1px solid var(--hgt-rhythm-line);
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.hgt-missing-details strong {
    color: #111;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.6;
}

.hgt-missing-details:not(.is-complete) strong {
    color: var(--hgt-rhythm-warning);
}

.hgt-minimal-status-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-minimal-status-row a {
    display: block;
    min-width: 0;
    padding: 18px 20px;
    border-right: 1px solid var(--hgt-rhythm-line);
    color: #111;
    text-decoration: none;
}

.hgt-minimal-status-row a:last-child {
    border-right: 0;
}

.hgt-minimal-status-row strong {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 21px;
    font-weight: 400;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.hgt-minimal-status-row a.needs-action strong {
    color: var(--hgt-rhythm-warning);
}

.hgt-minimal-status-row a.is-complete strong {
    color: var(--hgt-rhythm-success);
}

.hgt-minimal-status-row a.is-progress strong {
    color: #2d69ad;
}

.hgt-minimal-shortcuts {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.hgt-minimal-shortcuts a {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    padding: 8px 14px;
    border: 1px solid var(--hgt-rhythm-line);
    color: #111;
    font-size: 11px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-minimal-shortcuts a:hover {
    border-color: #111;
}

.hgt-account-collection {
    display: grid;
    gap: 26px;
}

.hgt-account-collection-head,
.hgt-payment-detail-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 8px;
}

.hgt-account-collection-head h1,
.hgt-payment-detail-head h1 {
    max-width: 760px;
    margin: 5px 0 10px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: 0.15em;
}

.hgt-account-collection-head p:not(.hgt-eyebrow),
.hgt-payment-detail-head p:not(.hgt-eyebrow) {
    max-width: 620px;
    margin: 0;
    color: var(--hgt-rhythm-muted);
    font-size: 14px;
    line-height: 1.75;
}

.hgt-account-empty-state .button {
    margin-top: 12px;
}

.hgt-account-booking-list {
    display: grid;
    gap: 16px;
}

.hgt-account-booking-card {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
    min-width: 0;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-account-booking-card.needs-action {
    border-color: rgba(183, 121, 31, 0.34);
}

.hgt-account-booking-card.is-complete {
    border-color: rgba(27, 143, 104, 0.26);
}

.hgt-account-booking-image {
    display: block;
    min-height: 220px;
    background: var(--hgt-rhythm-soft);
    overflow: hidden;
}

.hgt-account-booking-image img,
.hgt-saved-account-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.24s ease;
}

.hgt-account-booking-card:hover .hgt-account-booking-image img,
.hgt-saved-account-card:hover .hgt-saved-account-image img {
    transform: scale(1.035);
}

.hgt-account-booking-body {
    display: grid;
    gap: 12px;
    align-content: center;
    padding: 26px 28px;
}

.hgt-account-reference,
.hgt-saved-account-body > span,
.hgt-payment-summary-card > span {
    display: block;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

.hgt-account-booking-body h2,
.hgt-saved-account-body h2,
.hgt-payment-detail-block h2,
.hgt-payment-summary-card h2 {
    margin: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 300;
    line-height: 1.22;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-account-booking-body h2 {
    font-size: 27px;
}

.hgt-account-booking-body p,
.hgt-muted-copy,
.hgt-payment-summary-card p,
.hgt-saved-account-body p {
    margin: 0;
    color: var(--hgt-rhythm-muted);
    line-height: 1.75;
}

.hgt-account-booking-facts,
.hgt-payment-detail-facts,
.hgt-saved-account-body dl {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0 16px;
    margin: 8px 0 0;
}

.hgt-account-booking-facts div,
.hgt-payment-detail-facts div,
.hgt-saved-account-body dl div {
    min-width: 0;
    padding-top: 12px;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-account-booking-facts dt,
.hgt-payment-detail-facts dt,
.hgt-saved-account-body dt,
.hgt-payment-summary-card dt {
    margin-bottom: 5px;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

.hgt-account-booking-facts dd,
.hgt-payment-detail-facts dd,
.hgt-saved-account-body dd,
.hgt-payment-summary-card dd {
    margin: 0;
    color: #111;
    font-size: 14px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.hgt-account-booking-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 6px;
}

.hgt-account-booking-actions form {
    margin: 0;
}

.hgt-payment-detail {
    display: grid;
    gap: 26px;
}

.hgt-payment-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
    gap: 22px;
    align-items: start;
}

.hgt-payment-detail-main,
.hgt-payment-summary-card,
.hgt-payment-detail-block {
    min-width: 0;
}

.hgt-payment-detail-main {
    display: grid;
    gap: 16px;
}

.hgt-payment-detail-status,
.hgt-payment-detail-block,
.hgt-payment-summary-card {
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-payment-detail-status {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
}

.hgt-payment-detail-status strong {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 22px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-payment-detail-status span {
    color: var(--hgt-rhythm-muted);
    line-height: 1.65;
    text-align: right;
}

.hgt-payment-detail-status.needs-action {
    border-color: rgba(183, 121, 31, 0.42);
    background: #fffaf2;
}

.hgt-payment-detail-status.needs-action strong {
    color: var(--hgt-rhythm-warning);
}

.hgt-payment-detail-status.is-complete {
    border-color: rgba(27, 143, 104, 0.34);
    background: #f7fcfa;
}

.hgt-payment-detail-status.is-complete strong {
    color: var(--hgt-rhythm-success);
}

.hgt-payment-detail-block,
.hgt-payment-summary-card {
    padding: 24px;
}

.hgt-payment-detail-block h2,
.hgt-payment-summary-card h2 {
    margin-bottom: 18px;
    font-size: 24px;
}

.hgt-payment-detail-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hgt-payment-item-list {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hgt-payment-item-list li {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 0;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-payment-item-list li:first-child {
    border-top: 0;
}

.hgt-payment-item-list strong,
.hgt-payment-item-list span,
.hgt-payment-item-list small {
    display: block;
}

.hgt-payment-item-list strong {
    color: #111;
    font-size: 15px;
    line-height: 1.45;
}

.hgt-payment-item-list span,
.hgt-payment-item-list small {
    margin-top: 4px;
    color: var(--hgt-rhythm-muted);
    line-height: 1.55;
}

.hgt-payment-item-list em {
    color: #111;
    font-style: normal;
    font-weight: 600;
    white-space: nowrap;
}

.hgt-payment-summary-card {
    position: sticky;
    top: 96px;
}

.hgt-payment-summary-card dl {
    display: grid;
    gap: 0;
    margin: 4px 0 22px;
}

.hgt-payment-summary-card dl div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 18px;
    padding: 13px 0;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-payment-summary-card dl .is-total {
    border-top-color: #111;
}

.hgt-payment-summary-card dl .is-total dt,
.hgt-payment-summary-card dl .is-total dd {
    color: #111;
    font-size: 16px;
    font-weight: 700;
}

.hgt-payment-summary-card p {
    margin-top: 16px;
    font-size: 13px;
}

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

.hgt-saved-account-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-saved-account-image {
    display: block;
    aspect-ratio: 4 / 3;
    background: var(--hgt-rhythm-soft);
    overflow: hidden;
}

.hgt-saved-account-body {
    display: grid;
    gap: 12px;
    padding: 20px;
}

.hgt-saved-account-body h2 {
    font-size: 22px;
}

.hgt-saved-account-body h2 a {
    color: inherit;
    text-decoration: none;
}

.hgt-saved-account-body dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hgt-saved-account-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 4px;
}

.hgt-saved-account-actions form {
    margin: 0;
}

.hgt-button-link {
    border-color: transparent !important;
    background: transparent !important;
    color: var(--hgt-rhythm-danger) !important;
}

.hgt-button-link:hover {
    border-color: var(--hgt-rhythm-danger) !important;
    background: var(--hgt-rhythm-danger) !important;
    color: #fff !important;
}

.hgt-account-head-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 12px;
}

.hgt-traveler-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 30px;
    align-items: stretch;
    margin-bottom: 30px;
}

.hgt-traveler-hero-copy {
    display: flex;
    min-width: 0;
    min-height: 320px;
    flex-direction: column;
    justify-content: center;
    padding: 44px 48px;
    border: 1px solid var(--hgt-rhythm-line);
    background: var(--hgt-rhythm-soft);
}

.hgt-traveler-hero-copy h1 {
    max-width: 620px;
    margin: 7px 0 16px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 48px;
    font-weight: 300;
    line-height: 1.12;
    text-transform: uppercase;
    letter-spacing: 0.18em;
}

.hgt-traveler-hero-copy p:not(.hgt-eyebrow) {
    max-width: 650px;
    margin-bottom: 28px;
    color: var(--hgt-rhythm-muted);
    font-size: 15px;
    line-height: 1.85;
}

.hgt-traveler-hero-copy .hgt-account-head-actions {
    justify-content: flex-start;
}

.hgt-trip-focus-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 34px;
    border: 1px solid #111;
    background: #fff;
}

.hgt-trip-focus-card h2 {
    margin: 6px 0 14px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 29px;
    font-weight: 300;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-trip-focus-card p:not(.hgt-eyebrow) {
    margin-bottom: 22px;
    color: var(--hgt-rhythm-muted);
    line-height: 1.8;
}

.hgt-trip-focus-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 18px;
    margin: auto 0 24px;
}

.hgt-trip-focus-facts div {
    min-width: 0;
    padding: 13px 0;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-trip-focus-facts dt {
    margin-bottom: 4px;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-trip-focus-facts dd {
    margin: 0;
    color: #111;
    font-size: 14px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.hgt-account-summary-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) repeat(2, minmax(220px, 0.85fr));
    gap: 24px;
    margin-bottom: 30px;
}

.hgt-account-identity-card h2 {
    font-size: 32px;
}

.hgt-account-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 30px;
}

.hgt-account-kpi {
    min-width: 0;
    padding: 22px 24px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-account-kpi span,
.hgt-account-shortcuts span {
    display: block;
    margin-bottom: 8px;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    line-height: 1.4;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-account-kpi strong {
    display: block;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 34px;
    font-weight: 300;
    line-height: 1.05;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-account-kpi small {
    display: block;
    margin-top: 10px;
    color: var(--hgt-rhythm-muted);
    font-size: 12px;
    line-height: 1.6;
}

.hgt-account-dashboard-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 30px;
    align-items: start;
}

.hgt-account-main-stack {
    display: grid;
    gap: 24px;
    min-width: 0;
}

.hgt-traveler-step-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.hgt-traveler-step {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 4px 14px;
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--hgt-rhythm-line);
    color: #111;
    text-decoration: none;
    transition: border-color 0.2s ease, background 0.2s ease;
}

.hgt-traveler-step:hover {
    border-color: #111;
    background: var(--hgt-rhythm-soft);
}

.hgt-traveler-step > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    grid-row: span 3;
    border: 1px solid #111;
    color: #111;
    font-size: 13px;
}

.hgt-traveler-step.is-complete > span {
    border-color: var(--hgt-rhythm-success);
    color: var(--hgt-rhythm-success);
}

.hgt-traveler-step.needs-action > span {
    border-color: var(--hgt-rhythm-warning);
    color: var(--hgt-rhythm-warning);
}

.hgt-traveler-step strong {
    display: block;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-traveler-step em {
    display: block;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-traveler-step small {
    display: block;
    color: var(--hgt-rhythm-muted);
    font-size: 12px;
    line-height: 1.65;
}

.hgt-account-side {
    position: sticky;
    top: 95px;
    display: grid;
    gap: 24px;
}

.hgt-account-facts,
.hgt-account-detail-list,
.hgt-account-mini-list {
    display: grid;
    gap: 14px;
    margin: 0;
}

.hgt-account-detail-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hgt-account-facts div,
.hgt-account-detail-list div,
.hgt-account-mini-list div {
    min-width: 0;
    padding: 14px 0;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-account-facts dt,
.hgt-account-detail-list dt,
.hgt-account-mini-list dt {
    margin-bottom: 5px;
    color: var(--hgt-rhythm-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-account-facts dd,
.hgt-account-detail-list dd,
.hgt-account-mini-list dd {
    margin: 0;
    color: #111;
    font-size: 14px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.hgt-account-action-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.hgt-account-action-row .button {
    padding-right: 12px;
    padding-left: 12px;
}

.hgt-account-shortcuts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 30px;
}

.hgt-account-shortcuts a {
    display: block;
    min-width: 0;
    padding: 22px 24px;
    border: 1px solid var(--hgt-rhythm-line);
    background: var(--hgt-rhythm-soft);
    color: #111;
    text-decoration: none;
    transition: border-color 0.2s ease, background 0.2s ease;
}

.hgt-account-shortcuts a:hover {
    border-color: #111;
    background: #fff;
}

.hgt-account-shortcuts strong {
    display: block;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-meta,
.blog_item_bottom .date,
.item_bottom {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-bottom: 14px;
    color: #999;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-tag-row,
.hgt-insurance-tags,
.hgt-guide-tags,
.hgt-package-function-strip,
.hgt-activity-card-subcats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0;
}

.hgt-tag-row span,
.hgt-insurance-tags span,
.hgt-guide-tags span,
.hgt-package-function-strip span,
.hgt-activity-card-subcats em {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 5px 10px;
    border: 1px solid #ddd;
    color: #555;
    font-size: 10px;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-template-hero {
    min-height: calc(100vh - 75px);
    padding: 92px 0 76px;
    color: #fff;
}

.hgt-template-hero::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.52), rgba(0, 0, 0, 0.2));
    content: "";
}

.hgt-template-hero .hgt-home-shell {
    position: relative;
    z-index: 1;
}

.hgt-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-height: 520px;
    align-items: center;
}

.hgt-hero-copy {
    display: grid;
    grid-template-columns: minmax(320px, 0.85fr) minmax(430px, 1.15fr);
    gap: 42px;
    width: 100%;
    max-width: none;
    align-items: center;
}

.hgt-hero-copy > h1,
.hgt-hero-copy > p,
.hgt-scroll-cue {
    grid-column: 1;
}

.hgt-hero-copy > p {
    align-self: start;
}

.hgt-hero-copy > h1 {
    max-width: 660px;
    margin: 0 0 24px;
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: clamp(44px, 5vw, 68px);
    font-weight: 300;
    line-height: 1.12;
    text-transform: uppercase;
    letter-spacing: 0.11em;
}

.hgt-hero-copy > p {
    max-width: 650px;
    margin-bottom: 35px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 17px;
    line-height: 1.8;
}

.hgt-ai-assistant {
    grid-column: 2;
    grid-row: 1 / span 3;
    width: 100%;
    max-width: none;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    background: rgba(255, 255, 255, 0.95);
    color: #333;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.22);
}

body.hgt-ai-chat-open {
    overflow: hidden;
}

body.hgt-ai-chat-open #ai-assistant {
    z-index: 200000;
}

body.hgt-ai-chat-open #sticky-wrapper,
body.hgt-ai-chat-open .hgt-floating-chat,
body.hgt-ai-chat-open .hgt-concierge-widget {
    display: none !important;
}

.hgt-ai-expanded-head {
    display: none;
}

.hgt-ai-thread-form {
    display: none;
}

.hgt-ai-assistant.is-chat-open {
    --hgt-ai-left-width: clamp(320px, 34vw, 420px);
    position: fixed;
    inset: 0;
    z-index: 200001;
    display: block;
    padding: 30px;
    border: 0;
    background: #f7f7f7;
    color: #333;
    box-shadow: none;
    overflow: hidden;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-expanded-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 54px;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.hgt-ai-expanded-head span,
.hgt-ai-expanded-head strong {
    display: block;
}

.hgt-ai-expanded-head span {
    color: #777;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
}

.hgt-ai-expanded-head strong {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 26px;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-ai-expanded-head button {
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    font-size: 28px;
    line-height: 1;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-form,
.hgt-ai-assistant.is-chat-open .hgt-ai-suggestions,
.hgt-ai-assistant.is-chat-open .hgt-home-access,
.hgt-ai-assistant.is-chat-open .hgt-ai-actions,
.hgt-ai-assistant.is-chat-open .hgt-ai-plans,
.hgt-ai-assistant.is-chat-open .hgt-home-plan-link {
    width: var(--hgt-ai-left-width);
    max-width: 100%;
    min-width: 0;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-form {
    align-self: start;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-suggestions {
    align-self: start;
}

.hgt-ai-assistant.is-chat-open .hgt-home-access,
.hgt-ai-assistant.is-chat-open .hgt-ai-actions,
.hgt-ai-assistant.is-chat-open .hgt-ai-plans,
.hgt-ai-assistant.is-chat-open .hgt-home-plan-link {
    align-self: start;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-thread {
    position: absolute;
    top: 102px;
    right: 30px;
    bottom: 126px;
    left: calc(30px + var(--hgt-ai-left-width) + 28px);
    min-height: 0;
    max-height: none;
    height: auto;
    margin-top: 0;
    padding: 24px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08);
}

.hgt-ai-assistant.is-chat-open .hgt-ai-thread-form {
    position: absolute;
    right: 30px;
    bottom: 30px;
    left: calc(30px + var(--hgt-ai-left-width) + 28px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) 54px;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.08);
}

.hgt-ai-thread-form textarea {
    min-height: 58px;
    max-height: 130px;
    padding: 13px 14px;
    border: 1px solid #ddd;
    resize: vertical;
}

.hgt-ai-thread-form .hgt-send-button {
    width: 54px;
    min-height: 54px;
}

.hgt-ai-assistant.is-right-input-busy .hgt-ai-form {
    opacity: 0.5;
    pointer-events: none;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-message {
    max-width: 780px;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-message.user {
    margin-left: auto;
}

.hgt-ai-assistant.is-chat-open .hgt-ai-booking-card {
    overflow: hidden;
}

.hgt-ai-service-card-grid {
    display: grid;
    gap: 16px;
    margin-top: 14px;
}

.hgt-ai-booking-card {
    position: relative;
}

.hgt-ai-booking-stack-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.hgt-ai-booking-stack-close {
    flex: 0 0 auto;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    color: #111;
    padding: 6px 10px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hgt-ai-booking-card.selected {
    border-color: #d4af37;
    box-shadow: 0 16px 42px rgba(212, 175, 55, 0.18);
}

.hgt-ai-booking-card.is-collapsed img,
.hgt-ai-booking-card.is-collapsed .hgt-meta,
.hgt-ai-booking-card.is-collapsed .hgt-ai-booking-body > p,
.hgt-ai-booking-card.is-collapsed .hgt-ai-service-more {
    display: none;
}

.hgt-ai-booking-card.is-collapsed .hgt-ai-booking-body {
    padding: 18px;
}

.hgt-ai-service-more {
    margin: 14px 0;
    padding: 14px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fafafa;
}

.hgt-ai-service-more p {
    margin: 8px 0 0;
}

.hgt-ai-inline-link {
    display: inline-block;
    margin-top: 10px;
    color: #111;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.hgt-ai-service-dismiss,
.hgt-ai-affiliate-dismiss {
    position: absolute;
    z-index: 2;
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 50%;
    background: #fff;
    color: #111;
    font-size: 20px;
    line-height: 1;
}

.hgt-ai-checkout-form,
.hgt-ai-contact-panel {
    display: grid;
    gap: 14px;
}

.hgt-ai-checkout-form {
    margin-top: 18px;
    padding: 18px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-ai-checkout-form label,
.hgt-ai-contact-panel label {
    color: #111;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.hgt-ai-checkout-form .hgt-ai-booking-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hgt-ai-service-details {
    display: grid;
    grid-template-columns: minmax(120px, auto) minmax(0, 1fr);
    gap: 6px 12px;
    margin: 12px 0;
    padding: 12px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fafafa;
}

.hgt-ai-service-details dt {
    color: #777;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hgt-ai-service-details dd {
    margin: 0;
    color: #111;
}

.hgt-ai-single-checkout .button {
    width: 100%;
}

.hgt-ai-cart-popover {
    position: fixed;
    z-index: 200010;
    top: 112px;
    right: 48px;
    width: min(360px, calc(100vw - 36px));
    display: none;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 22px 55px rgba(0, 0, 0, 0.16);
}

.hgt-ai-cart-popover.show {
    display: block;
}

.hgt-ai-cart-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.hgt-ai-cart-head strong,
.hgt-ai-cart-item strong,
.hgt-ai-package-detail strong {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-ai-cart-close {
    width: 32px;
    height: 32px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    font-size: 20px;
    line-height: 1;
}

.hgt-ai-cart-body {
    display: grid;
    gap: 12px;
    max-height: 420px;
    overflow: auto;
    padding: 14px;
}

.hgt-ai-cart-checkout {
    width: calc(100% - 28px);
    margin: 0 14px 14px;
}

.hgt-ai-cart-item {
    border: 1px solid var(--hgt-rhythm-line);
    background: #fafafa;
}

.hgt-ai-cart-item header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    padding: 12px;
}

.hgt-ai-cart-item span {
    display: block;
    margin-bottom: 4px;
    color: #777;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-ai-cart-toggle {
    flex: 0 0 auto;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    color: #111;
    padding: 6px 8px;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hgt-ai-cart-item dl,
.hgt-ai-package-detail dl {
    display: grid;
    grid-template-columns: minmax(100px, auto) minmax(0, 1fr);
    gap: 7px 12px;
    margin: 0;
    padding: 0 12px 12px;
}

.hgt-ai-cart-item.is-collapsed dl {
    display: none;
}

.hgt-ai-cart-item dt,
.hgt-ai-package-detail dt {
    color: #777;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hgt-ai-cart-item dd,
.hgt-ai-package-detail dd {
    margin: 0;
    color: #111;
}

.hgt-ai-package-detail {
    display: grid;
    gap: 12px;
}

.hgt-ai-inline-register-form,
.hgt-ai-package-comparison {
    display: grid;
    gap: 14px;
}

.hgt-ai-inline-register-form {
    padding: 16px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-ai-inline-register-form .hgt-ai-booking-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hgt-ai-inline-register-form .hgt-ai-booking-grid label {
    color: #111;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.hgt-ai-package-compare-grid {
    display: grid;
    gap: 12px;
}

.hgt-ai-package-compare-grid article {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-ai-package-compare-grid span,
.hgt-ai-package-compare-grid em {
    color: #777;
    font-style: normal;
}

.hgt-ai-package-detail p,
.hgt-ai-package-detail ul {
    margin: 0;
}

.hgt-ai-package-detail ul {
    padding-left: 18px;
}

.hgt-hero-prompt-shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px;
    gap: 10px;
}

.hgt-hero-prompt-shell textarea {
    min-height: 96px;
    padding: 16px 52px 16px 16px;
    border: 1px solid #ddd;
    resize: vertical;
}

.hgt-prompt-tools {
    position: absolute;
    right: 68px;
    bottom: 15px;
    display: flex;
    gap: 8px;
    color: #999;
}

.hgt-send-button {
    width: 48px;
    min-height: 48px;
    border: 0;
    background: #111;
    color: #fff;
}

.hgt-ai-form small,
.hgt-home-access,
.hgt-home-plan-link {
    display: block;
    margin-top: 12px;
    color: #777;
    font-size: 12px;
}

#assistant-quota[data-state="low"] {
    color: #b7791f;
}

#assistant-quota[data-state="full"] {
    color: #c53030;
}

.hgt-ai-suggestions,
.hgt-ai-choice-row,
.hgt-ai-actions,
.hgt-ai-plans,
.hgt-concierge-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.hgt-ai-suggestion,
.hgt-ai-choice,
.hgt-plan-card,
.hgt-role-option {
    border: 1px solid #ddd;
    background: #fff;
    color: #333;
    text-align: left;
    transition: all 0.2s ease;
}

.hgt-ai-suggestion,
.hgt-ai-choice {
    padding: 8px 12px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.hgt-ai-suggestion:hover,
.hgt-ai-choice:hover,
.hgt-plan-card:hover,
.hgt-role-option:hover,
.hgt-role-option.active {
    border-color: #111;
    color: #111;
}

.hgt-ai-thread,
.hgt-concierge-thread {
    max-height: 290px;
    margin-top: 18px;
    overflow: auto;
}

.hgt-ai-message,
.hgt-concierge-message {
    margin-bottom: 10px;
    padding: 13px 15px;
    background: var(--hgt-rhythm-soft);
    color: #555;
    line-height: 1.7;
}

.hgt-ai-message.user,
.hgt-concierge-message.user {
    background: #111;
    color: #fff;
}

.hgt-plan-card {
    flex: 1 1 170px;
    padding: 15px;
}

.hgt-plan-card strong,
.hgt-plan-card span,
.hgt-plan-card small {
    display: block;
}

.hgt-scroll-cue {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 26px;
    color: #fff;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
}

.hgt-scroll-cue:hover {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
}

.hgt-home-section-title {
    max-width: 760px;
    margin: 0 auto 55px;
    text-align: center;
}

.hgt-home-section-title h2,
.hgt-home-info-card h2,
.hgt-cta-panel h2 {
    font-size: 36px;
}

.hgt-activity-category-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
}

.hgt-activity-category-card {
    display: grid;
    gap: 14px;
    min-height: 270px;
    padding: 25px;
    border: 1px solid var(--hgt-rhythm-line);
    color: #333;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.hgt-activity-category-card:hover {
    border-color: #111;
    color: #111;
    transform: translateY(-3px);
}

.hgt-activity-icon {
    display: inline-grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid #111;
    color: #111;
    font-size: 22px;
}

.hgt-activity-card-copy strong {
    display: block;
    margin-bottom: 9px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 17px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-activity-card-copy small,
.hgt-activity-card-meta {
    display: block;
    color: #777;
    line-height: 1.65;
}

.hgt-activity-card-meta {
    align-self: end;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-home-info-card,
.hgt-cta-panel {
    max-width: 970px;
    margin: 0 auto;
    text-align: center;
}

.hgt-home-feature-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
    margin-top: 40px;
}

.hgt-home-feature-row div {
    padding: 28px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-home-feature-row strong {
    display: block;
    margin-bottom: 10px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-home-feature-row span {
    color: #777;
    line-height: 1.75;
}

.hgt-home-cta,
.hgt-home-cta h2,
.hgt-home-cta p {
    color: #fff;
}

.hgt-home-cta .hgt-cta-button {
    margin-top: 20px;
    background: #fff;
    color: #111 !important;
}

.hgt-home-cta .hgt-cta-button:hover {
    background: rgba(255, 255, 255, 0.86);
    color: #111 !important;
}

.hgt-home-faq {
    background: #f7f7f7 !important;
}

.hgt-home-faq > .hgt-home-shell > h2 {
    max-width: 760px;
    margin: 0 auto 45px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 36px;
    font-weight: 300;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-faq-list {
    max-width: 960px;
    margin: 0 auto;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.045);
}

.hgt-faq-list details {
    border-top: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-faq-list details:last-child {
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.hgt-faq-list details:first-child {
    border-top: 0;
}

.hgt-faq-list summary {
    position: relative;
    cursor: pointer;
    display: block;
    padding: 23px 70px 23px 32px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 17px;
    line-height: 1.45;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.hgt-faq-list summary::-webkit-details-marker {
    display: none;
}

.hgt-faq-list summary::after {
    position: absolute;
    top: 50%;
    right: 30px;
    width: 12px;
    height: 12px;
    border-right: 1px solid #111;
    border-bottom: 1px solid #111;
    transform: translateY(-65%) rotate(45deg);
    content: "";
}

.hgt-faq-list details[open] summary::after {
    transform: translateY(-25%) rotate(225deg);
}

.hgt-faq-list p {
    max-width: 780px;
    padding: 0 32px 26px;
    color: #777;
    line-height: 1.8;
}

.faq-page .hgt-blog-list,
.community-page .hgt-blog-list {
    display: grid;
    gap: 24px;
    min-width: 0;
}

.faq-page .hgt-section-head {
    margin: 28px 0 8px;
}

.faq-page .hgt-section-head:first-of-type {
    margin-top: 0;
}

.faq-page .hgt-panel-body,
.community-page .hgt-panel-body {
    display: grid;
    gap: 12px;
}

.hgt-search-inline {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 12px;
    margin-bottom: 28px;
}

.hgt-category-rail {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
}

.hgt-category-rail a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 13px;
    border: 1px solid #ddd;
    color: #555;
    font-size: 11px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-category-rail a:hover,
.hgt-category-rail a.active {
    border-color: #111;
    background: #111;
    color: #fff;
}

.hgt-activity-list-grid {
    margin-top: 32px;
}

.hgt-activity-list-card {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) minmax(170px, 230px);
    gap: 24px;
    padding: 28px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-service-card {
    position: relative;
}

.hgt-favorite-form {
    margin: 0;
}

.hgt-favorite-control {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(17, 17, 17, 0.18);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.96);
    color: #111;
    cursor: pointer;
    text-decoration: none;
    box-shadow: 0 12px 24px rgba(17, 17, 17, 0.08);
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.hgt-favorite-control svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.hgt-favorite-control:hover,
.hgt-favorite-control:focus-visible,
.hgt-favorite-control.is-active {
    border-color: #111;
    background: #111;
    color: #fff;
    transform: translateY(-1px);
}

.hgt-favorite-control.is-active svg {
    fill: currentColor;
}

.hgt-favorite-control.is-disabled {
    opacity: 0.45;
    cursor: not-allowed;
    transform: none;
}

.hgt-activity-list-card > .hgt-favorite-form,
.hgt-activity-list-card > .hgt-favorite-control,
.hgt-accommodation-card > .hgt-favorite-form,
.hgt-accommodation-card > .hgt-favorite-control {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 3;
}

.hgt-activity-list-card.has-favorite .hgt-activity-price {
    padding-top: 42px;
}

.hgt-booking-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.hgt-booking-head > div {
    min-width: 0;
}

.hgt-activity-price {
    align-self: stretch;
    display: grid;
    align-content: center;
    gap: 12px;
    border-left: 1px solid var(--hgt-rhythm-line);
    padding-left: 24px;
}

.hgt-activity-price span {
    color: #999;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-activity-price strong,
.hgt-package-price strong,
.hgt-insurance-score strong,
.hgt-package-preview-price {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 24px;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-activity-detail-page .hgt-activity-list-grid {
    grid-template-columns: 1fr;
    gap: 22px;
}

.hgt-activity-detail-page .hgt-activity-list-card {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 270px);
    align-items: stretch;
    padding: 30px;
}

.hgt-activity-detail-page .hgt-activity-list-card > div:first-child {
    min-width: 0;
}

.hgt-activity-detail-page .hgt-activity-list-card h3 {
    max-width: 720px;
    font-size: 24px;
}

.hgt-activity-detail-page .hgt-activity-list-card p {
    max-width: 760px;
    margin-bottom: 0;
}

.hgt-activity-detail-page .hgt-activity-price {
    min-width: 0;
}

.hgt-activity-detail-page .hgt-activity-price .button {
    width: 100%;
}

.hgt-activity-visual-hero,
.hgt-activity-detail-hero {
    min-height: min(72vh, 650px);
    display: flex;
    align-items: flex-end;
    padding: clamp(128px, 16vw, 190px) 0 clamp(56px, 8vw, 92px);
    background-image: linear-gradient(90deg, rgba(9, 14, 17, 0.76), rgba(9, 14, 17, 0.34) 48%, rgba(9, 14, 17, 0.08)), var(--hgt-activity-hero);
    background-position: center;
    background-size: cover;
    color: #fff;
}

.hgt-activity-detail-hero {
    min-height: min(68vh, 610px);
}

.hgt-activity-hero-copy,
.hgt-activity-detail-copy {
    max-width: 760px;
}

.hgt-activity-hero-copy h1,
.hgt-activity-detail-copy h1 {
    margin: 0;
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: clamp(42px, 6vw, 78px);
    font-weight: 300;
    line-height: 0.98;
    letter-spacing: 0;
    text-transform: uppercase;
}

.hgt-activity-detail-copy h1 {
    max-width: 900px;
}

.hgt-activity-hero-copy p,
.hgt-activity-detail-copy p {
    max-width: 600px;
    margin: 22px 0 0;
    color: rgba(255, 255, 255, 0.86);
    font-size: 17px;
    line-height: 1.65;
}

.hgt-activity-hero-actions,
.hgt-activity-hero-stats,
.hgt-activity-hero-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 26px;
}

.hgt-activity-visual-hero .button,
.hgt-activity-detail-hero .button {
    min-width: 158px;
    border-color: #fff;
    background: #fff !important;
    color: #111 !important;
}

.hgt-activity-visual-hero .button.ghost,
.hgt-activity-detail-hero .button.ghost {
    border-color: rgba(255, 255, 255, 0.78);
    background: rgba(255, 255, 255, 0.12) !important;
    color: #fff !important;
}

.hgt-activity-hero-stats span,
.hgt-activity-hero-chips span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.9);
    font-size: 12px;
}

.hgt-activity-hero-stats strong {
    margin-right: 5px;
    color: #fff;
}

.hgt-activity-hero-meta {
    margin-bottom: 16px;
}

.hgt-activity-hero-meta span {
    color: rgba(255, 255, 255, 0.78);
}

.hgt-activity-discovery {
    padding-top: clamp(48px, 7vw, 86px);
}

.hgt-activity-section-head {
    margin-bottom: 22px;
}

.hgt-activity-section-head p:not(.hgt-eyebrow) {
    max-width: 620px;
    margin: 8px 0 0;
    color: var(--hgt-rhythm-muted);
    line-height: 1.65;
}

.hgt-activity-feature-strip {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 34px;
}

.hgt-activity-feature-card {
    position: relative;
    min-height: 230px;
    display: grid;
    align-content: end;
    gap: 8px;
    overflow: hidden;
    padding: 24px;
    border-radius: 8px;
    background-image: linear-gradient(180deg, rgba(12, 13, 14, 0.08), rgba(12, 13, 14, 0.82)), var(--hgt-feature-image);
    background-position: center;
    background-size: cover;
    color: #fff;
    text-decoration: none;
}

.hgt-activity-feature-card:first-child {
    min-height: 310px;
}

.hgt-activity-feature-card span,
.hgt-activity-feature-card em {
    color: rgba(255, 255, 255, 0.78);
    font-size: 11px;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-activity-feature-card strong {
    max-width: 380px;
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: 28px;
    font-weight: 300;
    line-height: 1.08;
    letter-spacing: 0;
    text-transform: uppercase;
}

.hgt-activity-image-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.hgt-activity-image-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 18px 46px rgba(17, 17, 17, 0.08);
}

.hgt-activity-image-card > .hgt-favorite-form,
.hgt-activity-image-card > .hgt-favorite-control {
    top: 14px;
    right: 14px;
}

.hgt-activity-card-media {
    position: relative;
    display: block;
    overflow: hidden;
    background: #e8e8e8;
    color: #fff;
    text-decoration: none;
}

.hgt-activity-card-media img {
    width: 100%;
    aspect-ratio: 16 / 10;
    display: block;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.hgt-activity-card-media span {
    position: absolute;
    left: 14px;
    bottom: 14px;
    max-width: calc(100% - 28px);
    padding: 7px 10px;
    background: rgba(15, 143, 114, 0.92);
    color: #fff;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-activity-image-card:hover .hgt-activity-card-media img {
    transform: scale(1.04);
}

.hgt-activity-card-body {
    display: grid;
    gap: 9px;
    padding: 18px 18px 0;
}

.hgt-activity-card-body h3 {
    margin: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 1.08;
    letter-spacing: 0;
    text-transform: uppercase;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.hgt-activity-card-body p {
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.hgt-activity-card-highlights {
    display: grid;
    gap: 7px;
}

.hgt-activity-card-highlights span {
    color: #0f8f72;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hgt-activity-card-highlights span + span {
    color: #8a6a00;
    font-weight: 600;
}

.hgt-activity-mini-tags {
    gap: 7px;
    max-height: 34px;
    overflow: hidden;
}

.hgt-activity-mini-tags span {
    padding: 6px 9px;
    background: #f7f7f4;
    font-size: 10px;
    letter-spacing: 0;
}

.hgt-activity-image-card .hgt-activity-price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding: 16px 18px 18px;
    border-top: 1px solid var(--hgt-rhythm-line);
    border-left: 0;
}

.hgt-activity-image-card.has-favorite .hgt-activity-price {
    padding-top: 16px;
}

.hgt-activity-image-card .hgt-activity-price strong {
    font-size: 18px;
    letter-spacing: 0;
}

.hgt-activity-image-card .hgt-activity-price .button {
    min-width: 120px;
    padding-right: 14px;
    padding-left: 14px;
}

.hgt-activity-detail-content {
    padding-top: clamp(42px, 6vw, 74px);
}

.hgt-activity-photo-rail {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) repeat(2, minmax(0, 0.8fr));
    gap: 12px;
}

.hgt-activity-photo-rail img {
    width: 100%;
    min-width: 0;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 8px;
}

.hgt-activity-photo-rail img:first-child {
    aspect-ratio: 16 / 8.8;
}

.hgt-activity-gallery {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) repeat(2, minmax(0, 0.8fr));
    grid-template-rows: repeat(2, minmax(170px, 1fr));
    gap: 8px;
    min-width: 0;
    overflow: hidden;
    border-radius: 8px;
}

.hgt-activity-gallery-tile {
    position: relative;
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: #111;
    cursor: pointer;
}

.hgt-activity-gallery-tile.is-main {
    grid-row: span 2;
}

.hgt-activity-gallery-tile img {
    width: 100%;
    height: 100%;
    min-height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.35s ease, opacity 0.35s ease;
}

.hgt-activity-gallery-tile:hover img,
.hgt-activity-gallery-tile:focus-visible img {
    opacity: 0.88;
    transform: scale(1.03);
}

.hgt-gallery-tile-action {
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 16px;
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 999px;
    background: rgba(18, 18, 18, 0.72);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.hgt-gallery-modal[hidden] {
    display: none;
}

.hgt-gallery-modal {
    position: fixed;
    z-index: 10020;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
}

.hgt-gallery-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(12, 13, 13, 0.82);
}

.hgt-gallery-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(1120px, 100%);
    max-height: min(860px, calc(100vh - 48px));
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    overflow: hidden;
    border-radius: 8px;
    background: #fffdf8;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.38);
}

.hgt-gallery-modal-head,
.hgt-gallery-footer {
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    border-bottom: 1px solid var(--hgt-home-line);
}

.hgt-gallery-footer {
    align-items: flex-start;
    border-top: 1px solid var(--hgt-home-line);
    border-bottom: 0;
}

.hgt-gallery-modal-head strong {
    min-width: 0;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;
}

.hgt-gallery-close,
.hgt-gallery-nav,
.hgt-gallery-thumbs button {
    cursor: pointer;
}

.hgt-gallery-close {
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 999px;
    background: #fff;
    color: var(--hgt-home-forest);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hgt-gallery-stage {
    position: relative;
    min-height: 0;
    display: grid;
    place-items: center;
    padding: 18px;
    background: #0f1110;
}

.hgt-gallery-stage img {
    max-width: 100%;
    max-height: min(62vh, 640px);
    display: block;
    object-fit: contain;
    border-radius: 6px;
}

.hgt-gallery-nav {
    position: absolute;
    top: 50%;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.62);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    font-size: 32px;
    line-height: 1;
    transform: translateY(-50%);
    backdrop-filter: blur(10px);
}

.hgt-gallery-nav.prev {
    left: 18px;
}

.hgt-gallery-nav.next {
    right: 18px;
}

.hgt-gallery-footer > span {
    flex: 0 0 auto;
    color: var(--hgt-home-clay);
    font-weight: 800;
}

.hgt-gallery-thumbs {
    min-width: 0;
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
}

.hgt-gallery-thumbs button {
    flex: 0 0 74px;
    height: 56px;
    padding: 0;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 6px;
    background: transparent;
}

.hgt-gallery-thumbs button.active {
    border-color: var(--hgt-home-gold);
}

.hgt-gallery-thumbs img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

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

.hgt-experience-panel {
    display: grid;
    gap: 24px;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fff;
    scroll-margin-top: 96px;
}

.hgt-experience-intro h2 {
    margin: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: clamp(31px, 4vw, 46px);
    font-weight: 300;
    line-height: 1.02;
    letter-spacing: 0;
    text-transform: uppercase;
}

.hgt-experience-intro p:not(.hgt-eyebrow) {
    max-width: 680px;
    margin: 12px 0 0;
    color: var(--hgt-rhythm-muted);
    font-size: 16px;
    line-height: 1.7;
}

.hgt-activity-proof-grid,
.hgt-activity-detail-facts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.hgt-activity-proof-grid article,
.hgt-activity-detail-facts div,
.hgt-activity-note-list article {
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fbfbf8;
}

.hgt-activity-proof-grid span,
.hgt-activity-detail-facts span,
.hgt-activity-note-list span {
    display: block;
    margin-bottom: 8px;
    color: #999;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-activity-proof-grid strong,
.hgt-activity-detail-facts strong {
    color: #111;
    font-size: 14px;
    line-height: 1.45;
}

.hgt-activity-proof-grid article:first-child {
    background: #edf8f4;
    border-color: rgba(15, 143, 114, 0.24);
}

.hgt-activity-proof-grid article:first-child strong {
    color: #0f7c63;
}

.hgt-activity-note-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.hgt-activity-note-list p,
.hgt-activity-short-copy {
    margin: 0;
    color: var(--hgt-rhythm-muted);
    line-height: 1.7;
}

.hgt-service-detail-grid,
.hgt-activity-logistics-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.hgt-service-detail-card,
.hgt-activity-logistics-grid article {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fbfbf8;
}

.hgt-service-detail-card.is-highlight {
    border-color: rgba(15, 143, 114, 0.24);
    background: #edf8f4;
}

.hgt-service-detail-card span,
.hgt-activity-logistics-grid span,
.hgt-activity-insight-band span {
    display: block;
    margin-bottom: 8px;
    color: #999;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-service-detail-card h3,
.hgt-activity-flow h3 {
    margin: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 22px;
    font-weight: 300;
    line-height: 1.12;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-clean-list {
    display: grid;
    gap: 8px;
    margin: 14px 0 0;
    padding: 0;
    list-style: none;
}

.hgt-clean-list li {
    position: relative;
    min-width: 0;
    padding-left: 16px;
    color: var(--hgt-rhythm-muted);
    font-size: 14px;
    line-height: 1.55;
}

.hgt-clean-list li::before {
    position: absolute;
    top: 0.7em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #0f8f72;
    content: "";
}

.hgt-activity-logistics-grid strong {
    display: block;
    color: #111;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.55;
}

.hgt-activity-insight-band {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.hgt-activity-insight-band article {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fff;
}

.hgt-activity-insight-band p {
    margin: 0;
    color: var(--hgt-rhythm-muted);
    line-height: 1.7;
}

.hgt-activity-ai-signals {
    background: #111 !important;
}

.hgt-activity-ai-signals span {
    color: rgba(255, 255, 255, 0.62);
}

.hgt-activity-signal-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hgt-activity-signal-row em {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 12px;
    font-style: normal;
    line-height: 1.2;
}

.hgt-activity-flow {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    counter-reset: booking-flow;
}

.hgt-activity-flow article {
    position: relative;
    min-width: 0;
    padding: 46px 18px 18px;
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fff;
}

.hgt-activity-flow article::before {
    position: absolute;
    top: 16px;
    left: 18px;
    color: #0f8f72;
    font-size: 12px;
    font-weight: 700;
    counter-increment: booking-flow;
    content: counter(booking-flow, decimal-leading-zero);
}

.hgt-activity-flow p {
    margin: 10px 0 0;
    color: var(--hgt-rhythm-muted);
    font-size: 14px;
    line-height: 1.6;
}

.hgt-booking-mini-proof {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hgt-booking-mini-proof span {
    padding: 8px 10px;
    border: 1px solid rgba(15, 143, 114, 0.22);
    background: #edf8f4;
    color: #0f7c63;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
}

.hgt-related-search-form {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr)) auto;
    gap: 16px;
    align-items: end;
    padding: 24px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-related-search-form label {
    display: grid;
    gap: 8px;
    color: #555;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

.hgt-related-search-form input {
    min-height: 42px;
    padding: 9px 12px;
    border: 1px solid #ddd;
    color: #333;
}

.hgt-availability-panel,
.hgt-stripe-summary,
.hgt-payment-method-note,
.hgt-booking-resume,
.hgt-related-cart {
    display: grid;
    align-content: start;
    gap: 6px;
    padding: 14px 16px;
    border: 1px solid var(--hgt-rhythm-line);
    background: var(--hgt-rhythm-soft);
    color: #555;
    line-height: 1.7;
}

.hgt-availability-panel.success {
    border-color: rgba(27, 143, 104, 0.25);
    background: rgba(27, 143, 104, 0.08);
    color: #126b4d;
}

.hgt-availability-panel.is-available {
    border-color: rgba(27, 143, 104, 0.25);
    background: rgba(27, 143, 104, 0.08);
    color: #126b4d;
}

.hgt-availability-panel.error,
.hgt-availability-panel.is-warning,
.hgt-stripe-summary.is-warning {
    border-color: rgba(197, 48, 48, 0.25);
    background: rgba(197, 48, 48, 0.08);
    color: #8d2424;
}

.hgt-stripe-summary.is-ready {
    border-color: rgba(34, 111, 164, 0.2);
    background: rgba(34, 111, 164, 0.06);
    color: #253746;
}

body.activities-page .hgt-payment-method-note strong,
body.activities-page .hgt-availability-panel strong,
body.activities-page .hgt-stripe-summary strong {
    color: var(--hgt-home-ink);
}

body.activities-page .hgt-payment-method-note span,
body.activities-page .hgt-availability-panel span,
body.activities-page .hgt-stripe-summary span {
    color: var(--hgt-home-muted);
}

.hgt-stripe-summary ul {
    display: grid;
    gap: 10px;
    margin: 8px 0;
    padding: 0;
    list-style: none;
}

.hgt-stripe-summary li,
.hgt-stripe-total {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: start;
}

.hgt-stripe-summary b,
.hgt-stripe-total strong {
    color: #111;
    font-weight: 500;
}

.hgt-stripe-summary small {
    display: block;
    margin-top: 2px;
    color: #777;
    font-size: 12px;
    line-height: 1.45;
    text-transform: none;
    letter-spacing: 0;
}

.hgt-stripe-summary em {
    color: #111;
    font-style: normal;
    white-space: nowrap;
}

.hgt-stripe-total {
    padding-top: 10px;
    border-top: 1px solid var(--hgt-rhythm-line);
}

.hgt-stripe-discount {
    color: #126b4d;
}

.hgt-payment-method-note {
    background: #fff;
}

.hgt-booking-validation[hidden] {
    display: none;
}

#activityAvailabilityResult[hidden],
#activityStripeSummary[hidden],
.hgt-reserve-system-field[hidden] {
    display: none !important;
}

.hgt-guide-picker,
.hgt-guide-option,
.hgt-related-results {
    display: grid;
    gap: 14px;
}

.hgt-guide-picker-title,
.hgt-related-results section > h3 {
    margin: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-guide-option {
    grid-template-columns: auto minmax(0, 1fr);
    padding: 14px;
    border: 1px solid var(--hgt-rhythm-line);
    cursor: pointer;
}

.hgt-guide-option.selected {
    border-color: #111;
}

.hgt-guide-option input {
    margin-top: 4px;
}

.hgt-guide-option strong,
.hgt-guide-option small {
    display: block;
}

.hgt-guide-option small {
    color: #777;
    line-height: 1.7;
}

.hgt-related-results {
    margin-top: 26px;
}

.hgt-related-results section + section {
    margin-top: 32px;
}

.hgt-related-results section > h3 {
    margin-bottom: 16px;
}

.hgt-related-card {
    display: flex;
    min-width: 0;
    min-height: 100%;
    padding: 22px;
    flex-direction: column;
}

.hgt-related-card img {
    width: calc(100% + 44px);
    max-width: none;
    aspect-ratio: 4 / 3;
    margin: -22px -22px 20px;
    object-fit: cover;
}

.hgt-related-card h3 {
    margin: 0 0 12px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-related-card p {
    flex: 1;
    color: #777;
    line-height: 1.8;
}

.hgt-related-card > strong {
    display: block;
    margin: 6px 0 16px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 22px;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-related-card-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.hgt-related-card-actions .button {
    width: 100%;
    padding-right: 12px;
    padding-left: 12px;
}

.hgt-detail-layout,
.hgt-community-layout,
.page_body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 45px;
    align-items: start;
}

.hgt-detail-main,
.left_content {
    display: grid;
    gap: 30px;
}

.hgt-detail-sidebar,
.hgt-sidebar,
.right_content {
    display: grid;
    gap: 24px;
    min-width: 0;
}

.community-page .hgt-community-layout {
    gap: clamp(28px, 4vw, 52px);
}

.hgt-activity-detail-page .hgt-detail-layout {
    grid-template-columns: 1fr;
    gap: 30px;
}

.hgt-activity-detail-page .hgt-detail-sidebar {
    order: -1;
    width: 100%;
}

.hgt-activity-detail-page .hgt-detail-main {
    order: 1;
}

.hgt-activity-detail-page #activity-options .hgt-panel-body {
    display: grid;
    gap: 18px;
}

.hgt-activity-detail-page #activityBookingForm {
    align-items: end;
}

@media (min-width: 1025px) {
    .hgt-activity-detail-page #activityBookingForm {
        grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .hgt-activity-detail-page #activityBookingForm > label {
        min-width: 0;
    }

    .hgt-activity-detail-page #activityBookingForm > label:nth-of-type(1) {
        grid-column: 1 / span 4;
        grid-row: 1;
    }

    .hgt-activity-detail-page #activityDateHelp {
        grid-column: 1 / span 4;
        grid-row: 2;
        align-self: start;
        margin-top: -10px;
    }

    .hgt-activity-detail-page #activityBookingForm > label:nth-of-type(2) {
        grid-column: 5 / span 4;
        grid-row: 1;
    }

    .hgt-activity-detail-page #activityBookingForm > .hgt-text-muted:not(#activityDateHelp) {
        grid-column: 5 / span 4;
        grid-row: 2;
        align-self: start;
        margin-top: -10px;
    }

    .hgt-activity-detail-page #activityBookingForm > .row {
        grid-column: 9 / span 4;
        grid-row: 1 / span 2;
        width: 100%;
        align-self: start;
    }

    .hgt-activity-detail-page #activityBookingForm > label:nth-of-type(3) {
        grid-column: 1 / span 4;
        grid-row: 3;
    }

    .hgt-activity-detail-page #activityAvailabilityResult {
        grid-column: 5 / span 4;
        grid-row: 3;
    }

    .hgt-activity-detail-page #activityStripeSummary {
        grid-column: 9 / span 4;
        grid-row: 3;
    }

    .hgt-activity-detail-page #activityBookingForm > .hgt-payment-method-note {
        grid-column: 1 / span 4;
        grid-row: 4;
    }

    .hgt-activity-detail-page #activityBookingForm > .hgt-guide-picker {
        grid-column: 5 / -1;
        grid-row: 4;
    }

    .hgt-activity-detail-page #activityAvailabilityResult,
    .hgt-activity-detail-page #activityStripeSummary,
    .hgt-activity-detail-page #activityBookingForm > .hgt-guide-picker {
        align-self: stretch;
    }

    .hgt-activity-detail-page #activityBookingForm > .hgt-payment-method-note {
        align-self: start;
    }

    .hgt-activity-detail-page #activityBookingValidation,
    .hgt-activity-detail-page #activityBookingForm > .button {
        grid-column: 1 / -1;
    }

    .hgt-activity-detail-page #activityBookingForm > .button {
        width: min(360px, 100%);
        justify-self: start;
    }
}

.hgt-accommodation-card img,
.hgt-card img,
.blog_item_top,
.hgt-accommodation-gallery img,
.hgt-room-media img {
    width: 100%;
    object-fit: cover;
}

.hgt-accommodation-card img,
.hgt-card img,
.blog_item_top {
    aspect-ratio: 4 / 3;
}

.hgt-card-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-top: 20px;
}

.hgt-accommodation-gallery,
.hgt-room-media {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.hgt-accommodation-gallery img,
.hgt-room-media img {
    aspect-ratio: 4 / 3;
}

.hgt-table-wrap,
.hgt-package-comparison-wrap {
    overflow-x: auto;
}

.hgt-table,
.hgt-package-comparison {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}

.hgt-table th,
.hgt-table td,
.hgt-package-comparison th,
.hgt-package-comparison td {
    padding: 14px 16px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
    color: #555;
    text-align: left;
    vertical-align: top;
}

.hgt-table th,
.hgt-package-comparison th {
    color: #111;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-status {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 5px 9px;
    border: 1px solid #ddd;
    background: #f8f8f8;
    color: #555;
    font-size: 10px;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

.hgt-table .hgt-status {
    min-width: 82px;
    justify-content: center;
    text-align: center;
}

.hgt-table .status-payment-pending,
.hgt-table .status-paid-pending-vendor-confirmation,
.hgt-table .status-vendor-confirmation-needed {
    min-width: 118px;
}

.hgt-status-success,
.status-confirmed,
.status-paid,
.status-completed,
.status-approved,
.status-active {
    border-color: rgba(27, 143, 104, 0.25);
    background: rgba(27, 143, 104, 0.1);
    color: #126b4d;
}

.hgt-status-danger,
.status-cancelled,
.status-canceled,
.status-failed,
.status-expired,
.status-rejected {
    border-color: rgba(197, 48, 48, 0.25);
    background: rgba(197, 48, 48, 0.1);
    color: #8a1f1f;
}

.hgt-status-warning,
.status-pending,
.status-payment-pending,
.status-pending-checkout,
.status-awaiting-payment,
.status-unpaid,
.status-held,
.status-queued,
.status-draft {
    border-color: rgba(183, 121, 31, 0.25);
    background: rgba(183, 121, 31, 0.11);
    color: #80520f;
}

.hgt-status-info,
.status-paid-pending-vendor-confirmation,
.status-vendor-confirmation-needed,
.status-external-checkout,
.status-processing {
    border-color: rgba(43, 108, 176, 0.25);
    background: rgba(43, 108, 176, 0.1);
    color: #215a96;
}

.hgt-status-neutral,
.status-refunded,
.status-partially-refunded,
.status-trial-available,
.status-unknown {
    border-color: rgba(85, 85, 85, 0.18);
    background: rgba(85, 85, 85, 0.07);
    color: #555;
}

.hgt-message-success,
.hgt-message-error,
.hgt-comment-alert,
.alert {
    padding: 14px 16px;
    border: 1px solid #ddd;
    margin-bottom: 18px;
}

.hgt-message-success,
.hgt-comment-alert-success {
    border-color: rgba(27, 143, 104, 0.25);
    background: rgba(27, 143, 104, 0.08);
    color: #126b4d;
}

.hgt-message-error,
.hgt-comment-alert-error,
.alert-danger {
    border-color: rgba(197, 48, 48, 0.25);
    background: rgba(197, 48, 48, 0.08);
    color: #8d2424;
}

.hgt-auth-wrap {
    min-height: calc(100vh - 75px);
    padding: 105px 20px 70px;
    background:
        linear-gradient(90deg, rgba(17, 17, 17, 0.82) 0%, rgba(17, 17, 17, 0.62) 45%, rgba(17, 17, 17, 0.24) 100%),
        url("../../template/frontend/images/full-width-images/section-bg-4.jpg") center / cover;
}

.login-page .hgt-auth-wrap {
    min-height: auto;
    padding: 46px 20px 42px;
    background: #fff;
}

body.login-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
}

body.login-page .hgt-main-nav {
    border-bottom-color: rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.login-page .hgt-logo-text {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0.045em;
}

body.login-page .hgt-logo-text em,
body.login-page .hgt-main-nav .hgt-nav-icon {
    color: var(--hgt-home-gold);
}

body.login-page .hgt-main-nav .inner-nav ul li a,
body.login-page .hgt-main-nav .hgt-menu-button {
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.login-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.login-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.login-page .hgt-main-nav .hgt-menu-button:hover {
    color: var(--hgt-home-forest) !important;
}

body.login-page .hgt-main-nav .mn-sub {
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.login-page .hgt-main-nav .mn-sub li a,
body.login-page .hgt-main-nav .mn-sub .hgt-menu-button {
    color: #2f281f !important;
}

body.register-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
}

body.register-page .hgt-main-nav {
    border-bottom-color: rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.register-page .hgt-logo-text {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0.045em;
}

body.register-page .hgt-logo-text em,
body.register-page .hgt-main-nav .hgt-nav-icon,
body.register-page .hgt-eyebrow,
body.register-page .hgt-role-option span,
body.register-page .hgt-tag-row span {
    color: var(--hgt-home-gold);
}

body.register-page .hgt-main-nav .inner-nav ul li a,
body.register-page .hgt-main-nav .hgt-menu-button {
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.register-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.register-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.register-page .hgt-main-nav .hgt-menu-button:hover {
    color: var(--hgt-home-forest) !important;
}

body.register-page .hgt-main-nav .mn-sub {
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.register-page .hgt-main-nav .mn-sub li a,
body.register-page .hgt-main-nav .mn-sub .hgt-menu-button {
    color: #2f281f !important;
}

body.register-page .hgt-auth-wrap {
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%);
    color: var(--hgt-home-ink);
}

body.register-page .hgt-register-tabs {
    display: flex;
    gap: 6px;
    margin: 24px 0;
    padding: 6px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.72);
}

body.register-page .hgt-register-tab {
    display: grid;
    flex: 1 1 0;
    gap: 4px;
    min-height: 62px;
    align-content: center;
    padding: 12px 14px;
    border: 1px solid transparent;
    border-radius: 7px;
    color: var(--hgt-home-muted);
    text-align: center;
    text-decoration: none;
    transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}

body.register-page .hgt-register-tab span {
    color: inherit;
    font-family: "Open Sans", arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.register-page .hgt-register-tab small {
    color: inherit;
    font-size: 12px;
    line-height: 1.35;
}

body.register-page .hgt-register-tab:hover,
body.register-page .hgt-register-tab.active {
    border-color: rgba(38, 72, 63, 0.28);
    background: rgba(38, 72, 63, 0.07);
    color: var(--hgt-home-forest);
}

body.register-page .hgt-register-context {
    margin-top: 6px;
}

body.register-page .hgt-register-note {
    margin: -4px 0 4px;
    padding: 15px 18px;
    border-left: 3px solid var(--hgt-home-gold);
    background: rgba(255, 253, 248, 0.82);
    color: var(--hgt-home-muted);
    font-size: 13px;
    line-height: 1.75;
}

body.register-page .hgt-auth-panel > h1,
body.register-page .hgt-panel h3,
body.register-page .hgt-role-option strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.register-page .hgt-auth-panel > p,
body.register-page .hgt-panel p,
body.register-page .hgt-role-option em,
body.register-page .hgt-role-option small {
    color: var(--hgt-home-muted);
}

body.register-page .hgt-role-option,
body.register-page .hgt-panel {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.register-page .hgt-role-option:hover,
body.register-page .hgt-role-option.active {
    border-color: var(--hgt-home-forest);
    color: var(--hgt-home-forest);
    box-shadow: 0 20px 48px rgba(52, 40, 24, 0.11);
}

body.register-page .hgt-role-option.active {
    background: rgba(38, 72, 63, 0.06);
}

body.register-page .hgt-tag-row span {
    border: 1px solid rgba(38, 72, 63, 0.16);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.05);
    color: var(--hgt-home-forest);
    font-weight: 700;
}

body.register-page .hgt-form label {
    color: #2f281f;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.register-page .hgt-form input,
body.register-page .hgt-form select,
body.register-page .hgt-form textarea {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.register-page .hgt-form input:focus,
body.register-page .hgt-form select:focus,
body.register-page .hgt-form textarea:focus {
    border-color: rgba(184, 138, 69, 0.65);
    box-shadow: 0 0 0 3px rgba(184, 138, 69, 0.14);
}

body.register-page .hgt-social-auth a {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.94);
    color: #211b15;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.register-page .hgt-social-auth a:hover {
    border-color: var(--hgt-home-forest);
    color: var(--hgt-home-forest);
}

body.register-page .button {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest) !important;
    color: #fff !important;
}

body.register-page .button:hover {
    border-color: #16130f;
    background: #16130f !important;
    color: #fff !important;
}

body.register-page .hgt-auth-panel > p:last-child a {
    color: var(--hgt-home-forest);
    font-weight: 700;
}

@media (max-width: 767px) {
    body.register-page .hgt-register-tabs {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.register-page .hgt-register-tab {
        min-height: 56px;
        text-align: left;
    }
}

.hgt-auth-panel {
    max-width: 520px;
    margin: 0 auto;
    padding: 0;
    background: transparent;
}

.hgt-login-panel {
    padding: 26px;
    border: 1px solid #ececec;
    background: #fff;
    box-shadow: 0 18px 52px rgba(0, 0, 0, 0.08);
}

.hgt-login-panel .hgt-eyebrow {
    color: var(--hgt-rhythm-accent);
    font-size: 11px;
    letter-spacing: 0.18em;
}

.hgt-login-panel h1 {
    margin: 0 0 10px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 27px;
    font-weight: 400;
    line-height: 1.16;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.hgt-login-panel > p {
    color: #666;
    font-size: 13px;
    line-height: 1.65;
}

.hgt-login-panel .hgt-form label {
    color: #333;
    font-size: 11px;
    letter-spacing: 0.16em;
}

.hgt-login-panel .hgt-form input {
    min-height: 42px;
    border-color: #d8d8d8;
    color: #222;
    font-size: 13px;
}

.hgt-login-panel .button.full {
    min-height: 42px;
    background: #111;
    color: #fff;
    font-size: 11px;
    letter-spacing: 0.16em;
}

.hgt-login-panel .hgt-social-auth {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin: 16px 0;
}

.hgt-login-panel .hgt-social-auth a {
    min-height: 52px;
    flex-direction: column;
    gap: 5px;
    padding: 8px 6px;
    font-size: 9px;
    line-height: 1.35;
    letter-spacing: 0.06em;
}

.hgt-login-panel .hgt-social-icon {
    flex-basis: 24px;
    width: 24px;
    height: 24px;
    font-size: 8px;
}

.hgt-login-panel .hgt-social-facebook .hgt-social-icon {
    font-size: 16px;
}

.hgt-login-panel .hgt-auth-divider {
    margin: 0 0 14px;
    font-size: 10px;
}

.hgt-login-panel .hgt-form {
    gap: 14px;
}

.hgt-login-panel .hgt-form label {
    gap: 6px;
}

.hgt-login-panel .hgt-auth-switch {
    margin-top: 18px;
    margin-bottom: 0;
    font-size: 13px;
    line-height: 1.6;
}

.hgt-auth-panel.wide {
    max-width: 980px;
}

.hgt-auth-panel-home {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(360px, 520px);
    align-items: center;
    gap: 52px;
    max-width: 1080px;
}

.hgt-auth-panel-small {
    max-width: 920px;
}

.hgt-auth-brand {
    color: #fff;
}

.hgt-auth-brand span {
    display: block;
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: clamp(34px, 5vw, 58px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.12em;
}

.hgt-auth-brand em {
    color: var(--hgt-rhythm-accent);
    font-style: normal;
}

.hgt-auth-brand p {
    max-width: 520px;
    margin: 22px 0 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: 15px;
    line-height: 1.8;
}

.hgt-auth-card {
    padding: 38px;
    background: #fff;
    box-shadow: 0 26px 80px rgba(0, 0, 0, 0.24);
}

.hgt-social-auth,
.hgt-role-selector {
    display: grid;
    gap: 12px;
    margin: 24px 0;
}

.hgt-social-auth {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hgt-social-auth a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid #ddd;
    color: #333;
    font-size: 11px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-social-auth a:hover {
    border-color: #111;
    color: #111;
}

.hgt-social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-transform: uppercase;
}

.hgt-social-google .hgt-social-icon {
    background: #fff;
    color: #4285f4;
    box-shadow: inset 0 0 0 1px #dadce0;
}

.hgt-social-line .hgt-social-icon {
    background: #06c755;
}

.hgt-social-facebook .hgt-social-icon {
    background: #1877f2;
    font-family: Arial, sans-serif;
    font-size: 18px;
    text-transform: none;
}

.hgt-social-whatsapp .hgt-social-icon {
    background: #25d366;
}

.hgt-social-telegram .hgt-social-icon {
    background: #229ed9;
}

.hgt-auth-divider {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 8px 0 20px;
    color: #777;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-auth-divider::before,
.hgt-auth-divider::after {
    display: block;
    flex: 1 1 auto;
    height: 1px;
    background: #e6e6e6;
    content: "";
}

.hgt-auth-form-row,
.hgt-auth-switch {
    color: #666;
    font-size: 13px;
}

.hgt-auth-form-row {
    display: flex;
    justify-content: flex-end;
    margin-top: -6px;
}

.hgt-auth-form-row a,
.hgt-auth-switch a {
    color: #111;
    font-weight: 700;
    text-decoration: none;
}

.hgt-role-selector {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hgt-role-option {
    padding: 18px;
    text-decoration: none;
}

.hgt-role-option span,
.hgt-role-option strong,
.hgt-role-option em,
.hgt-role-option small {
    display: block;
}

.hgt-role-option strong {
    margin: 8px 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-role-option em,
.hgt-role-option small {
    color: #777;
    font-style: normal;
}

.hgt-insurance-hero {
    padding: 105px 0 75px;
    background: #111;
    color: #fff;
}

.hgt-insurance-hero h1,
.hgt-insurance-hero p {
    color: #fff;
}

.hgt-insurance-search {
    margin-top: 30px;
}

.hgt-insurance-grid,
.hgt-ai-booking-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.hgt-insurance-grid label,
.hgt-ai-booking-grid label {
    display: grid;
    gap: 7px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-insurance-grid input,
.hgt-insurance-grid select,
.hgt-ai-booking-grid input,
.hgt-ai-booking-grid select {
    width: 100%;
    min-height: 42px;
    padding: 9px 12px;
    border: 1px solid #ddd;
    color: #333;
}

.hgt-insurance-search .button {
    margin-top: 16px;
}

.hgt-ai-checkout-form .hgt-ai-booking-grid label {
    color: #111;
}

.hgt-insurance-list {
    display: grid;
    gap: 24px;
}

.hgt-insurance-guide-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 28px;
}

.hgt-insurance-guide-card,
.hgt-insurance-empty {
    padding: 24px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-insurance-guide-card span {
    display: inline-block;
    margin-bottom: 12px;
    color: #999;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-insurance-guide-card h3,
.hgt-insurance-empty h3 {
    margin-top: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-insurance-empty {
    text-align: center;
}

.hgt-insurance-card {
    padding: 28px;
}

.hgt-insurance-card-top {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.hgt-insurance-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 20px 0;
}

.hgt-insurance-facts div,
.hgt-option {
    padding: 14px;
    border: 1px solid var(--hgt-rhythm-line);
}

.hgt-insurance-facts span,
.hgt-option span {
    display: block;
    color: #999;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-insurance-facts strong,
.hgt-option strong {
    display: block;
    margin-top: 5px;
    color: #111;
}

.hgt-package-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 45px;
    align-items: start;
}

.hgt-package-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hgt-package-card,
.hgt-package-status-card,
.hgt-package-shared-card,
.hgt-package-source-card,
.hgt-package-preview-card {
    padding: 28px;
}

.hgt-package-tier,
.hgt-package-status-label,
.hgt-package-current {
    display: inline-block;
    margin-bottom: 14px;
    color: var(--hgt-rhythm-accent);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-package-price {
    margin: 20px 0;
}

.hgt-package-list-block {
    margin-top: 22px;
}

.hgt-package-list-block ul,
.hgt-package-card ul,
.hgt-package-preview-card ul {
    padding-left: 18px;
    color: #777;
    line-height: 1.9;
}

.hgt-package-feedback {
    margin-top: 18px;
    color: #777;
}

.blog-list-page,
.blog-single-page,
.hgt-blog-single-related,
.blog {
    padding: 70px 0;
}

.hgt-blog-template-page {
    padding-top: 0;
    background: #fff;
}

.hgt-blog-template-page > .wrap {
    width: 100%;
    max-width: none;
}

.hgt-blog-template-page > .wrap > .wrap_float > .page_head {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 88px max(24px, calc((100vw - 1170px) / 2)) 76px;
}

.hgt-blog-template-page .page_head .filters {
    justify-content: center;
    gap: 12px;
    max-width: 760px;
    margin-top: 34px;
    margin-right: auto;
    margin-left: auto;
}

.hgt-blog-template-page .select_wrap,
.hgt-blog-template-page .search_wrap {
    flex: 1 1 245px;
    min-width: 0;
    max-width: 330px;
}

.hgt-blog-template-page .select_wrap select,
.hgt-blog-template-page .search_wrap input {
    width: 100%;
    height: 42px;
    padding: 0 14px;
    background: #fff;
    color: #333;
    font-size: 13px;
    line-height: 42px;
}

.hgt-blog-template-page .select_wrap select {
    padding-right: 38px;
}

.hgt-blog-template-page .select_wrap option {
    color: #333;
}

.hgt-blog-template-page .search_wrap .submit {
    flex: 0 0 44px;
    height: 42px;
}

.hgt-blog-template-page .page_body {
    display: block;
    width: min(1170px, calc(100% - 40px));
    margin: 0 auto;
    padding-top: 54px;
}

.blog-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(315px, 1fr));
    gap: 30px;
    align-items: stretch;
}

.hgt-blog-template-page > .wrap > .wrap_float,
.hgt-blog-single-template-page > .wrap > .wrap_float {
    min-width: 0;
}

.blog_item {
    display: flex;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    flex-direction: column;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    color: #333;
    text-decoration: none !important;
}

.blog-list .blog_item,
.hgt-blog-single-related .blog_item {
    width: 100%;
}

.blog_item_top {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 280px;
    padding: 25px;
    aspect-ratio: 4 / 3;
    background-position: center;
    background-size: cover;
}

.blog_item_top::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.68), transparent);
    content: "";
}

.blog_item_top .sq_parent,
.blog_item_top .sq_wrap,
.blog_item_top .sq_content {
    position: relative;
    z-index: 1;
    width: 100%;
}

.blog_item_top ._title {
    margin: 12px 0 0;
    color: #fff;
    font-family: Dosis, arial, sans-serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 1.28;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    overflow-wrap: anywhere;
}

.blog_item_bottom {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 22px;
}

.blog_item_bottom .author,
.blog_single-head_bottom .author,
.comment_item_bottom .author {
    display: flex;
    align-items: center;
    gap: 12px;
}

.userpic {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    overflow: hidden;
    border-radius: 50%;
}

.userpic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog_item_bottom .text,
.blog_single-body p,
.comment_item p {
    color: #777;
    line-height: 1.85;
}

.blog_item_bottom .text {
    margin-bottom: 0;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.hgt-blog-template-empty {
    grid-column: 1 / -1;
    padding: 48px;
    border: 1px solid var(--hgt-rhythm-line);
    background: #fff;
    text-align: center;
}

.hgt-blog-single-template-page .left_content,
.hgt-blog-single-template-page .right_content {
    min-width: 0;
}

.hgt-blog-single-related .section_content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.tag {
    display: inline-flex;
    padding: 5px 9px;
    background: #111;
    color: #fff;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

.tag.red {
    background: var(--hgt-rhythm-accent);
}

.tag.green {
    background: var(--hgt-rhythm-success);
}

.tag.blue {
    background: #2b6cb0;
}

.filters {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px;
}

.select_wrap select,
.search_wrap input {
    min-height: 42px;
    border: 1px solid #ddd;
}

.search_wrap {
    display: flex;
}

.search_wrap .submit {
    position: relative;
    width: 42px;
    border: 0;
    background: #111;
}

.search_wrap .submit::before {
    position: absolute;
    top: 12px;
    left: 13px;
    width: 13px;
    height: 13px;
    border: 2px solid #fff;
    border-radius: 50%;
    content: "";
}

.search_wrap .submit::after {
    position: absolute;
    top: 25px;
    left: 25px;
    width: 8px;
    height: 2px;
    background: #fff;
    transform: rotate(45deg);
    content: "";
}

.blog_single-head {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.blog_single-head .title,
.title_wrap .title {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.blog_single-body {
    display: grid;
    gap: 22px;
}

.blog_single-body .description {
    color: #111;
    font-size: 18px;
}

.quote {
    padding: 28px;
    border-left: 4px solid #111;
    background: var(--hgt-rhythm-soft);
}

.img-block img {
    width: 100%;
}

.img-block span {
    display: block;
    margin-top: 9px;
    color: #999;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.gallery-block .scroll,
.gallery_block .images,
.popular {
    display: grid;
    gap: 12px;
}

.gallery-block .scroll {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gallery-block img,
.gallery_block img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

._block {
    padding: 24px;
}

.block_title {
    color: #111;
    font-family: Dosis, arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

._block ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

._block li a,
._block .link {
    display: flex;
    justify-content: space-between;
    padding: 9px 0;
    border-bottom: 1px solid var(--hgt-rhythm-line);
    color: #777;
    text-decoration: none;
}

._block li a:hover,
._block li a.active,
._block .link:hover {
    color: #111;
}

.popular .item {
    display: block;
    padding: 14px 0;
    border-bottom: 1px solid var(--hgt-rhythm-line);
    text-decoration: none;
}

.popular .img {
    height: 120px;
    margin-bottom: 12px;
    background-position: center;
    background-size: cover;
}

.comments-block,
.write_comment {
    margin-top: 35px;
}

.comment_item {
    margin-bottom: 16px;
    padding: 22px;
}

.answer_comment {
    margin-left: 45px;
    background: var(--hgt-rhythm-soft);
}

.rating-stars {
    display: flex;
    gap: 3px;
}

.star {
    width: 12px;
    height: 12px;
    background: #ddd;
    clip-path: polygon(50% 0, 61% 35%, 98% 35%, 68% 56%, 79% 91%, 50% 70%, 21% 91%, 32% 56%, 2% 35%, 39% 35%);
}

.star.filled {
    background: var(--hgt-rhythm-accent);
}

.write_comment {
    padding: 28px;
}

.write_comment .top,
.write_comment .center,
.write_comment .bottom {
    display: grid;
    gap: 14px;
}

.write_comment .bottom {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    margin-top: 16px;
}

.hgt-floating-chat {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1070;
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border: 0;
    border-radius: 50%;
    background: #111;
    color: #fff;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.25);
}

.hgt-floating-chat svg {
    width: 25px;
    height: 25px;
}

.hgt-concierge-widget {
    position: fixed;
    right: 24px;
    bottom: 95px;
    z-index: 1070;
    width: min(390px, calc(100vw - 48px));
    border: 1px solid #ddd;
    background: #fff;
    box-shadow: 0 20px 55px rgba(0, 0, 0, 0.18);
}

.hgt-concierge-widget[aria-hidden="true"] {
    display: none;
}

.hgt-concierge-widget header,
.hgt-concierge-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    padding: 16px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.hgt-concierge-widget header span,
.hgt-concierge-widget header strong {
    display: block;
}

.hgt-concierge-widget header span {
    color: #999;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-concierge-widget header button,
.hgt-concierge-form button {
    border: 0;
    background: #111;
    color: #fff;
}

.hgt-concierge-thread,
.hgt-concierge-services,
.hgt-concierge-actions {
    padding: 16px;
}

.hgt-concierge-form {
    border-top: 1px solid var(--hgt-rhythm-line);
    border-bottom: 0;
}

.hgt-concierge-form textarea {
    min-height: 54px;
    border: 1px solid #ddd;
    resize: vertical;
}

.hgt-cookie-banner {
    position: fixed;
    left: 20px;
    bottom: 20px;
    z-index: 1080;
    max-width: 470px;
    border: 1px solid #ddd;
    background: #fff;
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.14);
}

.hgt-cookie-banner.is-hidden,
.hgt-cookie-manage.is-hidden {
    display: none;
}

.hgt-cookie-banner__inner,
.hgt-cookie-preferences {
    padding: 18px;
}

.hgt-cookie-content h3 {
    margin: 0 0 8px;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-cookie-content p {
    color: #777;
    line-height: 1.7;
}

.hgt-cookie-actions,
.hgt-cookie-preferences__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.hgt-cookie-actions button,
.hgt-cookie-preferences__actions button,
.hgt-cookie-manage {
    min-height: 34px;
    padding: 7px 12px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.hgt-cookie-manage {
    position: fixed;
    left: 20px;
    bottom: 20px;
    z-index: 1070;
}

.hgt-cookie-category {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    margin: 12px 0;
    color: #555;
}

.hgt-maintenance-status-tab {
    position: fixed;
    top: 90px;
    right: 20px;
    z-index: 1060;
    width: 260px;
    padding: 15px;
    border: 1px solid rgba(228, 25, 25, 0.22);
    background: #fff;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.12);
}

.hgt-maintenance-status-dot {
    display: inline-block;
    width: 9px;
    height: 9px;
    margin-right: 8px;
    border-radius: 50%;
    background: var(--hgt-rhythm-accent);
}

.hgt-maintenance-status-tab strong,
.hgt-maintenance-status-tab small,
.hgt-maintenance-status-tab a {
    display: block;
}

.hgt-newsletter-section {
    background-color: #111;
}

.hgt-newsletter-section::before {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.58);
    content: "";
}

.hgt-newsletter-form {
    position: relative;
    z-index: 1;
    align-items: center;
}

.hgt-concierge-prompt-form {
    row-gap: 22px;
}

.hgt-concierge-prompt-form .input-group {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
}

.hgt-concierge-prompt-form .input-group .form-control,
.hgt-concierge-prompt-form .input-group-btn,
.hgt-concierge-prompt-form .input-group-btn .btn {
    width: 100%;
}

.hgt-concierge-prompt-form .input-group-btn {
    display: block;
}

.hgt-rhythm-footer {
    border-top: 1px solid rgba(55, 47, 37, 0.12);
    background:
        radial-gradient(circle at top left, rgba(184, 138, 69, 0.12), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #eef5f0 100%);
    color: #211b15;
    text-align: center;
}

.hgt-footer-logo {
    display: inline-block;
    color: #16130f !important;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0.045em;
}

.hgt-footer-logo span {
    color: #9d5f48;
}

.hgt-footer-links {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 34px;
    margin-top: 42px;
    padding-top: 34px;
    border-top: 1px solid rgba(55, 47, 37, 0.14);
    text-align: left;
}

.hgt-footer-links::before,
.hgt-footer-links::after {
    content: none;
    display: none;
}

.hgt-footer-links > [class*="col-"] {
    float: none;
    width: auto;
    min-height: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.hgt-footer-links h3 {
    position: relative;
    margin-bottom: 18px;
    padding-bottom: 12px;
    color: #26483f;
    font-family: "Open Sans", arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.hgt-footer-links h3::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 34px;
    height: 2px;
    border-radius: 99px;
    background: #b88a45;
}

.hgt-footer-links li {
    margin-bottom: 10px;
    color: #5e675f;
    line-height: 1.55;
}

.hgt-footer-links a {
    display: inline-flex;
    align-items: center;
    width: auto;
    min-height: 32px;
    padding: 4px 0;
    border-radius: 0;
    color: #3a342c;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease;
}

.hgt-footer-links a:hover {
    color: #26483f;
    transform: translateX(4px);
}

@media (max-width: 991px) {
    .hgt-footer-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .hgt-footer-links {
        grid-template-columns: 1fr;
        gap: 0;
        margin-top: 32px;
        padding-top: 18px;
    }

    .hgt-footer-links > [class*="col-"] {
        padding: 18px 0;
        border-bottom: 1px solid rgba(55, 47, 37, 0.1);
    }

    .hgt-footer-links a {
        min-height: 42px;
    }
}

.hgt-rhythm-footer .footer-social-links a span {
    position: relative;
    z-index: 2;
    font-family: Dosis, arial, sans-serif;
    font-size: 11px;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.hgt-top-caret {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-top: 2px solid currentColor;
    border-left: 2px solid currentColor;
    transform: translateY(3px) rotate(45deg);
}

@media (max-width: 1200px) {
    .hgt-main-nav .inner-nav.desktop-nav.hgt-nav-shell {
        padding-right: 150px;
        padding-left: 190px;
    }

    .hgt-main-nav .inner-nav ul li {
        margin-left: 12px;
    }

    .hgt-main-nav .inner-nav ul li a {
        gap: 6px;
        letter-spacing: 1px;
    }

    .hgt-activity-category-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hgt-grid,
    .hgt-accommodation-grid,
    .hgt-accommodation-filter-grid,
    .hgt-package-preview-grid,
    .hgt-package-shared-grid,
    .hgt-package-source-grid,
    .hgt-review-grid,
    .hgt-room-grid,
    .hgt-related-grid,
    .blog-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hgt-saved-account-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .main-nav.mobile-on .full-wrapper {
        display: block;
        min-height: 0;
    }

    .main-nav.mobile-on .nav-logo-wrap {
        position: relative;
        top: auto;
        left: auto;
    }

    .main-nav.mobile-on .inner-nav.desktop-nav.hgt-nav-shell {
        position: absolute;
        top: 100%;
        left: 0;
        display: none;
        width: 100%;
        padding: 0;
    }

    .main-nav.mobile-on .hgt-primary-nav,
    .main-nav.mobile-on .hgt-utility-nav {
        position: relative;
        top: auto;
        right: auto;
        display: block;
        width: 100%;
        background: rgba(18, 18, 18, 0.97);
    }

    .main-nav.mobile-on .hgt-utility-nav {
        border-top: 1px solid rgba(255, 255, 255, 0.09);
    }

    .main-nav.mobile-on .inner-nav ul li a,
    .main-nav.mobile-on .hgt-menu-button {
        display: flex;
        align-items: center;
        gap: 12px;
        min-height: 42px;
        height: auto !important;
        padding: 12px 14px;
        line-height: 1.35 !important;
    }

    .main-nav.mobile-on .hgt-nav-icon {
        flex-basis: 18px;
        width: 18px;
        font-size: 14px;
    }

    .main-nav.mobile-on .hgt-nav-search {
        justify-content: flex-start;
        width: 100%;
        height: auto;
        padding: 14px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.065);
        line-height: 1;
        text-align: left;
    }

    .main-nav.mobile-on .hgt-nav-search-label {
        display: inline;
    }

    .main-nav.mobile-on .hgt-flag {
        box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.28);
    }

    .hgt-detail-layout,
    .hgt-community-layout,
    .hgt-profile-layout,
    .hgt-profile-hero-grid,
    .hgt-account-dashboard-layout,
    .hgt-payment-detail-grid,
    .hgt-traveler-hero,
    .hgt-minimal-grid,
    .hgt-ai-package-overview,
    .hgt-minia-calendar-layout,
    .page_body,
    .hgt-package-hero-grid {
        grid-template-columns: 1fr;
    }

    .hgt-profile-sidebar,
    .hgt-account-side,
    .hgt-payment-summary-card {
        position: static;
    }

    .hgt-profile-readiness-card {
        max-width: 420px;
    }

    .hgt-dashboard-grid,
    .hgt-my-plan-summary,
    .hgt-account-summary-grid,
    .hgt-account-kpi-grid,
    .hgt-account-shortcuts,
    .hgt-minimal-status-row,
    .hgt-ai-package-detail-grid,
    .hgt-package-proof-grid,
    .hgt-package-inline-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hgt-hero-copy {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .hgt-hero-copy > h1,
    .hgt-hero-copy > p,
    .hgt-scroll-cue,
    .hgt-ai-assistant {
        grid-column: 1;
        grid-row: auto;
    }

    .hgt-ai-assistant {
        max-width: 760px;
    }

    .hgt-ai-assistant.is-chat-open {
        max-width: none;
    }

    .hgt-related-search-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hgt-related-search-form .button {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .wrap,
    .hgt-home-shell {
        width: min(calc(100% - 28px), 1170px);
    }

    .page_head {
        padding: 82px 0 70px;
    }

    .page_head .title {
        font-size: 30px;
        letter-spacing: 0.12em;
    }

    .hgt-auth-wrap {
        padding: 88px 14px 44px;
    }

    .login-page .hgt-auth-wrap {
        padding: 46px 14px 32px;
    }

    .login-page .hgt-login-panel {
        padding: 22px 16px;
    }

    .login-page .hgt-login-panel h1 {
        font-size: 25px;
        line-height: 1.18;
        letter-spacing: 0.06em;
    }

    .login-page .hgt-login-panel .hgt-social-auth {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 6px;
    }

    .login-page .hgt-login-panel .hgt-social-auth a {
        min-height: 48px;
        padding: 7px 4px;
        font-size: 8px;
    }

    .hgt-auth-panel-home {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .hgt-auth-brand span {
        font-size: 34px;
        letter-spacing: 0.08em;
    }

    .hgt-auth-card {
        padding: 28px 20px;
    }

    .hgt-social-auth {
        grid-template-columns: 1fr;
    }

    .hgt-section,
    .page-section {
        padding: 70px 0;
    }

    .hgt-template-hero {
        min-height: auto;
        padding: 92px 0 68px;
    }

    .hgt-hero-grid {
        min-height: auto;
    }

    .hgt-hero-copy > h1 {
        font-size: 38px;
        letter-spacing: 0.1em;
    }

    .hgt-hero-copy > p {
        font-size: 15px;
    }

    .hgt-ai-assistant {
        padding: 18px;
    }

    .hgt-ai-assistant.is-chat-open {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto auto minmax(300px, 1fr) auto auto auto auto;
        gap: 14px;
        padding: 14px;
        overflow: auto;
    }

    .hgt-ai-assistant.is-chat-open .hgt-ai-expanded-head,
    .hgt-ai-assistant.is-chat-open .hgt-ai-form,
    .hgt-ai-assistant.is-chat-open .hgt-ai-suggestions,
    .hgt-ai-assistant.is-chat-open .hgt-home-access,
    .hgt-ai-assistant.is-chat-open .hgt-ai-actions,
    .hgt-ai-assistant.is-chat-open .hgt-ai-plans,
    .hgt-ai-assistant.is-chat-open .hgt-home-plan-link,
    .hgt-ai-assistant.is-chat-open .hgt-ai-thread,
    .hgt-ai-assistant.is-chat-open .hgt-ai-thread-form {
        grid-column: 1;
        width: 100%;
        max-width: none;
    }

    .hgt-ai-assistant.is-chat-open .hgt-ai-thread {
        position: static;
        inset: auto;
        grid-row: 5;
        min-height: 300px;
        height: auto;
        padding: 16px;
    }

    .hgt-ai-assistant.is-chat-open .hgt-ai-thread-form {
        position: static;
        inset: auto;
        grid-row: 6;
        grid-template-columns: 1fr 54px;
        padding: 12px;
    }

    .hgt-ai-cart-popover {
        top: 78px;
        right: 14px;
        left: 14px;
        width: auto;
    }

    .hgt-ai-message.booking {
        padding: 10px;
    }

    .hgt-ai-service-details,
    .hgt-ai-cart-item dl,
    .hgt-ai-package-detail dl,
    .hgt-ai-checkout-form .hgt-ai-booking-grid,
    .hgt-ai-inline-register-form .hgt-ai-booking-grid {
        grid-template-columns: 1fr;
    }

    .hgt-ai-service-more,
    .hgt-ai-checkout-form {
        padding: 12px;
    }

    .hgt-ai-assistant.is-chat-open .hgt-ai-expanded-head {
        position: sticky;
        top: 0;
        z-index: 1;
        background: #f7f7f7;
    }

    .hgt-ai-expanded-head strong {
        font-size: 20px;
    }

    .hgt-hero-prompt-shell {
        grid-template-columns: 1fr;
    }

    .hgt-prompt-tools {
        right: 16px;
        bottom: 70px;
    }

    .hgt-send-button {
        width: 100%;
    }

    .hgt-activity-category-grid,
    .hgt-grid,
    .hgt-accommodation-grid,
    .hgt-accommodation-filter-grid,
    .hgt-package-card-grid,
    .hgt-package-preview-grid,
    .hgt-package-shared-grid,
    .hgt-package-source-grid,
    .hgt-review-grid,
    .hgt-room-grid,
    .hgt-related-grid,
    .blog-list,
    .hgt-home-feature-row,
    .hgt-social-auth,
    .hgt-role-selector,
    .hgt-form-grid,
    .hgt-insurance-grid,
    .hgt-insurance-guide-grid,
    .hgt-ai-booking-grid,
    .hgt-insurance-facts,
    .hgt-accommodation-gallery,
    .hgt-room-media {
        grid-template-columns: 1fr;
    }

    .hgt-activity-list-card {
        grid-template-columns: 1fr;
    }

    .hgt-activity-list-card.has-favorite {
        padding-top: 74px;
    }

    .hgt-activity-detail-page .hgt-activity-list-card {
        grid-template-columns: 1fr;
        padding: 24px;
    }

    .hgt-activity-detail-page .hgt-activity-list-card.has-favorite {
        padding-top: 74px;
    }

    .hgt-activity-price {
        border-left: 0;
        border-top: 1px solid var(--hgt-rhythm-line);
        padding-top: 20px;
        padding-left: 0;
    }

    .hgt-activity-list-card.has-favorite .hgt-activity-price {
        padding-top: 20px;
    }

    .hgt-related-search-form,
    .hgt-related-card-actions {
        grid-template-columns: 1fr;
    }

    .hgt-search-inline,
    .hgt-search-panel-row {
        grid-template-columns: 1fr;
    }

    .hgt-blog-template-page > .wrap > .wrap_float > .page_head {
        padding: 78px 18px 62px;
    }

    .hgt-blog-template-page .page_head .filters {
        display: grid;
        grid-template-columns: 1fr;
    }

    .hgt-blog-template-page .search_wrap {
        display: flex;
    }

    .hgt-blog-template-page .select_wrap,
    .hgt-blog-template-page .search_wrap {
        max-width: none;
    }

    .blog-list {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .blog_item_top {
        min-height: 245px;
    }

    .hgt-home-faq > .hgt-home-shell > h2 {
        font-size: 28px;
        letter-spacing: 0.1em;
    }

    .hgt-faq-list summary {
        padding: 20px 54px 20px 20px;
        font-size: 15px;
        letter-spacing: 0.08em;
    }

    .hgt-faq-list summary::after {
        right: 22px;
    }

    .hgt-faq-list p {
        padding: 0 20px 22px;
    }

    .hgt-dashboard-grid,
    .hgt-my-plan-summary,
    .hgt-account-summary-grid,
    .hgt-account-kpi-grid,
    .hgt-account-shortcuts,
    .hgt-traveler-step-list,
    .hgt-minimal-status-row,
    .hgt-next-card dl,
    .hgt-account-booking-card,
    .hgt-account-booking-facts,
    .hgt-payment-detail-facts,
    .hgt-saved-account-grid,
    .hgt-saved-account-body dl,
    .hgt-account-detail-list,
    .hgt-account-action-row,
    .hgt-ai-package-metrics,
    .hgt-ai-package-detail-grid,
    .hgt-package-proof-grid,
    .hgt-package-inline-metrics {
        grid-template-columns: 1fr;
    }

    .hgt-account-collection-head,
    .hgt-payment-detail-head,
    .hgt-payment-detail-status {
        align-items: flex-start;
        flex-direction: column;
    }

    .hgt-account-collection-head .button,
    .hgt-payment-detail-head .button {
        width: 100%;
    }

    .hgt-account-collection-head h1,
    .hgt-payment-detail-head h1 {
        font-size: 31px;
        letter-spacing: 0.1em;
    }

    .hgt-account-booking-image {
        min-height: 230px;
    }

    .hgt-account-booking-body,
    .hgt-payment-detail-block,
    .hgt-payment-summary-card,
    .hgt-saved-account-body {
        padding: 20px;
    }

    .hgt-payment-detail-status span {
        text-align: left;
    }

    .hgt-payment-item-list li,
    .hgt-payment-summary-card dl div {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }

    .hgt-payment-item-list em {
        white-space: normal;
    }

    .hgt-my-plan-intro {
        padding: 86px 0 28px;
    }

    .hgt-my-plan-intro h1 {
        font-size: 30px;
        letter-spacing: 0.1em;
    }

    .hgt-my-plan-content {
        padding-top: 30px;
    }

    .hgt-dashboard-page .hgt-my-plan-content {
        padding-top: 86px;
    }

    .hgt-my-plan-block {
        padding: 20px;
    }

    .hgt-minia-side-card,
    .hgt-minia-calendar-card,
    .hgt-my-plan-modal-panel {
        padding: 20px;
    }

    #touristBookingCalendar {
        min-height: 520px;
    }

    #touristBookingCalendar .fc-toolbar {
        display: grid;
        gap: 10px;
    }

    #touristBookingCalendar .fc-toolbar-chunk {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 6px;
    }

    #touristBookingCalendar .fc-toolbar-title {
        font-size: 20px;
        text-align: center;
    }

    .hgt-my-plan-form-actions .button {
        width: 100%;
    }

    .hgt-account-dashboard .hgt-section {
        padding-top: 72px;
    }

    .hgt-profile-hero-minimal {
        padding: 92px 0 30px;
    }

    .hgt-profile-hero-minimal h1 {
        font-size: 38px;
        letter-spacing: 0.09em;
    }

    .hgt-profile-panel .hgt-panel-body,
    .hgt-profile-side-card .hgt-panel-body,
    .hgt-profile-ai-card .hgt-panel-body,
    .hgt-profile-readiness-card {
        padding: 22px;
    }

    .hgt-profile-panel-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .hgt-profile-panel-head p {
        max-width: none;
    }

    .hgt-minimal-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .hgt-minimal-hero h1 {
        font-size: 34px;
        letter-spacing: 0.12em;
    }

    .hgt-minimal-actions,
    .hgt-minimal-actions .button {
        width: 100%;
    }

    .hgt-next-card,
    .hgt-profile-meter-card {
        padding: 22px;
    }

    .hgt-next-card h2 {
        font-size: 24px;
        letter-spacing: 0.1em;
    }

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

    .hgt-meter-head strong {
        font-size: 48px;
    }

    .hgt-minimal-status-row a {
        border-right: 0;
        border-bottom: 1px solid var(--hgt-rhythm-line);
    }

    .hgt-minimal-status-row a:last-child {
        border-bottom: 0;
    }

    .hgt-minimal-shortcuts {
        display: grid;
        grid-template-columns: 1fr;
    }

    .hgt-account-dashboard .hgt-section-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .hgt-account-head-actions,
    .hgt-account-head-actions .button {
        width: 100%;
    }

    .hgt-traveler-hero-copy,
    .hgt-trip-focus-card {
        padding: 24px;
    }

    .hgt-traveler-hero-copy {
        min-height: auto;
    }

    .hgt-traveler-hero-copy h1 {
        font-size: 34px;
        letter-spacing: 0.12em;
    }

    .hgt-trip-focus-card h2 {
        font-size: 24px;
        letter-spacing: 0.1em;
    }

    .hgt-trip-focus-facts {
        grid-template-columns: 1fr;
    }

    .hgt-panel-body,
    .hgt-card-body,
    .hgt-accommodation-card-body,
    .hgt-ai-booking-body,
    .hgt-auth-panel {
        padding: 22px;
    }

    .hgt-insurance-card-top,
    .hgt-card-foot {
        display: grid;
    }

    .hgt-insurance-search .button {
        width: 100%;
    }

    .hgt-concierge-widget {
        right: 14px;
        bottom: 84px;
        width: calc(100vw - 28px);
    }

    .hgt-cookie-banner {
        left: 14px;
        right: 14px;
        max-width: none;
    }

    .hgt-cookie-manage {
        left: 14px;
    }

    .hgt-concierge-prompt-form .input-group {
        grid-template-columns: 1fr;
    }
}

/* Minimal AI packages decision page. */
.assistant-packages-page .hgt-assistant-packages-page {
    background: #fff;
}

.assistant-packages-page .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 13px 22px;
    border: 1px solid #111;
    border-radius: 6px;
    background: #111;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-transform: none;
    letter-spacing: 0;
}

.assistant-packages-page .button:hover,
.assistant-packages-page .button:focus {
    color: #fff;
    background: #000;
}

.assistant-packages-page .button.ghost {
    background: #fff;
    color: #111;
}

.assistant-packages-page .button.ghost:hover,
.assistant-packages-page .button.ghost:focus {
    background: #f4f4f4;
    color: #111;
}

.assistant-packages-page .button.full {
    width: 100%;
}

.assistant-packages-page .button:disabled {
    cursor: not-allowed;
    opacity: 0.62;
}

.hgt-package-minimal-hero {
    padding: 62px 0 24px;
    border-bottom: 1px solid var(--hgt-rhythm-line);
    background: #fff;
}

.hgt-package-minimal-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 42px;
    align-items: start;
}

.hgt-package-minimal-copy {
    max-width: 790px;
}

.hgt-package-minimal-copy h1,
.hgt-package-section-head h2,
.hgt-package-final-panel h2,
.assistant-packages-page .hgt-package-card h3,
.hgt-package-decision-card h2 {
    margin: 0;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-weight: 400;
    line-height: 1.12;
    text-transform: none;
    letter-spacing: 0;
}

.hgt-package-minimal-copy h1 {
    max-width: 720px;
    font-size: 40px;
}

.hgt-package-minimal-copy > p {
    max-width: 650px;
    margin: 14px 0 0;
    color: #555;
    font-size: 15px;
    line-height: 1.6;
}

.hgt-package-highlight-line {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    max-width: 650px;
    margin: 16px 0 0;
    padding: 12px 0;
    border-top: 1px solid var(--hgt-rhythm-line);
    border-bottom: 1px solid var(--hgt-rhythm-line);
}

.hgt-package-highlight-line strong {
    flex: 0 0 auto;
    color: var(--hgt-rhythm-accent);
    font-size: 18px;
    letter-spacing: 0;
}

.hgt-package-highlight-line span {
    color: #555;
    line-height: 1.7;
}

.hgt-package-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.hgt-package-signal-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    max-width: 650px;
    margin-top: 18px;
}

.hgt-package-signal-row div {
    padding: 0 14px 0 0;
    border: 0;
    border-right: 1px solid var(--hgt-rhythm-line);
    border-radius: 0;
    background: transparent;
}

.hgt-package-signal-row div:last-child {
    border-right: 0;
}

.hgt-package-signal-row strong {
    display: block;
    color: #111;
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: 0;
}

.hgt-package-signal-row span {
    display: block;
    margin-top: 7px;
    color: #777;
    font-size: 12px;
    line-height: 1.45;
}

.hgt-package-decision-card {
    padding: 22px;
    border: 1px solid #dedede;
    border-radius: 8px;
    background: #f7f7f4;
}

.hgt-package-decision-card h2 {
    margin-top: 8px;
    font-size: 26px;
}

.hgt-package-decision-card p {
    margin: 14px 0 0;
    color: #555;
    line-height: 1.6;
}

.assistant-packages-page .hgt-package-status-label,
.assistant-packages-page .hgt-package-tier,
.assistant-packages-page .hgt-package-current {
    margin-bottom: 0;
    color: #666;
    font-size: 13px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
}

.hgt-package-status-actions {
    display: grid;
    gap: 10px;
    margin-top: 20px;
}

.assistant-packages-page .hgt-package-feedback {
    min-height: 20px;
    margin-top: 14px;
    color: #555;
    font-size: 13px;
    line-height: 1.5;
}

.assistant-packages-page .hgt-package-feedback.success {
    color: var(--hgt-rhythm-success);
}

.assistant-packages-page .hgt-package-feedback.error {
    color: var(--hgt-rhythm-danger);
}

.hgt-package-benefit-section {
    padding: 28px 0;
    background: #f7f7f4;
}

.hgt-package-benefit-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.hgt-package-benefit-list article {
    padding: 24px;
    border-right: 1px solid var(--hgt-rhythm-line);
}

.hgt-package-benefit-list article:last-child {
    border-right: 0;
}

.hgt-package-benefit-list strong {
    display: block;
    color: #111;
    font-size: 16px;
    letter-spacing: 0;
}

.hgt-package-benefit-list p {
    margin: 8px 0 0;
    color: #666;
    line-height: 1.65;
}

.hgt-package-plan-section,
.hgt-package-comparison-section,
.hgt-package-next-section,
.hgt-package-final-cta {
    padding: 48px 0;
}

.hgt-package-plan-section {
    padding-top: 34px;
}

.hgt-package-comparison-section,
.hgt-package-next-section {
    background: #f7f7f4;
}

.hgt-package-section-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

.hgt-package-section-head h2 {
    font-size: 38px;
}

.hgt-package-section-head p {
    max-width: 620px;
    margin: 10px 0 0;
    color: #666;
    font-size: 15px;
    line-height: 1.7;
}

.hgt-package-section-head a {
    color: var(--hgt-rhythm-accent);
    font-weight: 700;
    white-space: nowrap;
}

.hgt-package-step-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.hgt-package-step-list article {
    padding: 24px;
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fff;
}

.hgt-package-step-list span {
    display: block;
    margin-bottom: 18px;
    color: var(--hgt-rhythm-accent);
    font-family: Dosis, arial, sans-serif;
    font-size: 28px;
    line-height: 1;
}

.hgt-package-step-list strong {
    display: block;
    color: #111;
    font-size: 16px;
    letter-spacing: 0;
}

.hgt-package-step-list p {
    margin: 8px 0 0;
    color: #666;
    line-height: 1.65;
}

.assistant-packages-page .hgt-package-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.assistant-packages-page .hgt-package-card {
    display: flex;
    min-width: 0;
    min-height: 100%;
    flex-direction: column;
    padding: 26px;
    border: 1px solid #dedede;
    border-radius: 8px;
    background: #fff;
    box-shadow: none;
}

.assistant-packages-page .hgt-package-card-featured {
    border-color: rgba(228, 25, 25, 0.5);
    box-shadow: 0 18px 45px rgba(228, 25, 25, 0.09);
}

.assistant-packages-page .hgt-package-card-premium {
    border-color: rgba(17, 17, 17, 0.26);
}

.hgt-package-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 10px;
}

.assistant-packages-page .hgt-package-card h3 {
    font-size: 33px;
}

.hgt-package-recommend {
    flex: 0 0 auto;
    padding: 6px 9px;
    border-radius: 6px;
    background: var(--hgt-rhythm-accent);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    letter-spacing: 0;
}

.assistant-packages-page .hgt-package-price {
    margin: 20px 0 0;
}

.assistant-packages-page .hgt-package-price strong {
    display: block;
    color: #111;
    font-family: Dosis, arial, sans-serif;
    font-size: 29px;
    font-weight: 400;
    line-height: 1.15;
    text-transform: none;
    letter-spacing: 0;
}

.assistant-packages-page .hgt-package-price span {
    display: block;
    margin-top: 5px;
    color: #777;
    font-size: 13px;
    letter-spacing: 0;
}

.hgt-package-highlight {
    margin: 18px 0 0;
    color: var(--hgt-rhythm-success);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.55;
}

.assistant-packages-page .hgt-package-summary {
    margin: 8px 0 0;
    color: #555;
    line-height: 1.7;
}

.hgt-package-ai-model {
    margin: 14px 0 0;
    color: #777;
    font-size: 12px;
    line-height: 1.45;
}

.assistant-packages-page .hgt-package-function-strip {
    margin: 18px 0 0;
}

.assistant-packages-page .hgt-package-function-strip span {
    min-height: 24px;
    padding: 5px 9px;
    border-color: #dedede;
    border-radius: 4px;
    background: #f7f7f4;
    color: #555;
    font-size: 12px;
    text-transform: none;
    letter-spacing: 0;
}

.assistant-packages-page .hgt-package-list-block {
    margin-top: 22px;
}

.assistant-packages-page .hgt-package-list-block strong {
    display: block;
    color: #111;
    font-size: 14px;
    letter-spacing: 0;
}

.assistant-packages-page .hgt-package-list-block ul {
    display: grid;
    gap: 9px;
    margin: 10px 0 0;
    padding: 0;
    color: #666;
    line-height: 1.55;
    list-style: none;
}

.assistant-packages-page .hgt-package-list-block li {
    position: relative;
    padding-left: 18px;
}

.assistant-packages-page .hgt-package-list-block li::before {
    position: absolute;
    top: 0.68em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--hgt-rhythm-accent);
    content: "";
}

.assistant-packages-page .hgt-package-fit-block li::before {
    background: var(--hgt-rhythm-success);
}

.assistant-packages-page .hgt-package-note {
    margin: 22px 0 0;
    padding-top: 18px;
    border-top: 1px solid var(--hgt-rhythm-line);
    color: #555;
    line-height: 1.65;
}

.assistant-packages-page .hgt-package-card-actions {
    margin-top: auto;
    padding-top: 24px;
}

.assistant-packages-page .hgt-package-current {
    display: block;
    margin-bottom: 10px;
    color: var(--hgt-rhythm-success);
}

.assistant-packages-page .hgt-package-comparison-wrap {
    border: 1px solid var(--hgt-rhythm-line);
    border-radius: 8px;
    background: #fff;
}

.assistant-packages-page .hgt-package-comparison {
    min-width: 760px;
}

.assistant-packages-page .hgt-package-comparison th,
.assistant-packages-page .hgt-package-comparison td {
    padding: 16px 18px;
    line-height: 1.55;
}

.assistant-packages-page .hgt-package-comparison th {
    color: #111;
    font-size: 13px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
}

.hgt-package-final-cta {
    padding-top: 0;
}

.hgt-package-final-panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 30px;
    border-radius: 8px;
    background: #111;
    color: #fff;
}

.hgt-package-final-panel h2 {
    color: #fff;
    font-size: 34px;
}

.hgt-package-final-panel p {
    max-width: 620px;
    margin: 8px 0 0;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.65;
}

.hgt-package-final-panel .button {
    flex: 0 0 auto;
    border-color: #fff;
    background: #fff;
    color: #111;
}

.hgt-package-final-panel .button:hover,
.hgt-package-final-panel .button:focus {
    background: #f4f4f4;
    color: #111;
}

@media (max-width: 1024px) {
    .hgt-package-minimal-grid,
    .assistant-packages-page .hgt-package-card-grid {
        grid-template-columns: 1fr;
    }

    .hgt-package-decision-card {
        max-width: none;
    }

    .hgt-package-benefit-list,
    .hgt-package-step-list,
    .hgt-package-signal-row {
        grid-template-columns: 1fr;
    }

    .hgt-package-benefit-list article {
        border-right: 0;
        border-bottom: 1px solid var(--hgt-rhythm-line);
    }

    .hgt-package-benefit-list article:last-child {
        border-bottom: 0;
    }
}

@media (max-width: 767px) {
    .hgt-package-minimal-hero {
        padding: 88px 0 34px;
    }

    .hgt-package-minimal-grid {
        gap: 26px;
    }

    .hgt-package-minimal-copy h1 {
        font-size: 36px;
    }

    .hgt-package-minimal-copy > p {
        font-size: 15px;
    }

    .hgt-package-highlight-line {
        display: grid;
        gap: 8px;
    }

    .hgt-package-signal-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

    .hgt-package-signal-row div {
        padding: 0 8px 0 0;
    }

    .hgt-package-signal-row strong {
        font-size: 20px;
    }

    .hgt-package-signal-row span {
        font-size: 11px;
    }

    .hgt-package-hero-actions,
    .hgt-package-hero-actions .button,
    .hgt-package-final-panel .button {
        width: 100%;
    }

    .hgt-package-decision-card,
    .assistant-packages-page .hgt-package-card,
    .hgt-package-final-panel {
        padding: 22px;
    }

    .hgt-package-plan-section,
    .hgt-package-comparison-section,
    .hgt-package-next-section,
    .hgt-package-final-cta {
        padding: 44px 0;
    }

    .hgt-package-section-head,
    .hgt-package-final-panel {
        align-items: flex-start;
        flex-direction: column;
    }

    .hgt-package-section-head h2,
    .hgt-package-final-panel h2 {
        font-size: 29px;
    }

    .assistant-packages-page .hgt-package-card h3 {
        font-size: 30px;
    }

    .hgt-package-card-top {
        align-items: flex-start;
        flex-direction: column;
    }

    .assistant-packages-page .hgt-package-price strong {
        font-size: 26px;
    }
}

@media (max-width: 1200px) {
    .hgt-activity-image-grid,
    .hgt-activity-proof-grid,
    .hgt-activity-detail-facts,
    .hgt-service-detail-grid,
    .hgt-activity-logistics-grid,
    .hgt-activity-flow {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hgt-activity-feature-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hgt-activity-feature-card:first-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    .hgt-activity-visual-hero,
    .hgt-activity-detail-hero {
        min-height: 560px;
        padding: 110px 0 44px;
        background-image: linear-gradient(180deg, rgba(9, 14, 17, 0.22), rgba(9, 14, 17, 0.82)), var(--hgt-activity-hero);
    }

    .hgt-activity-hero-copy h1,
    .hgt-activity-detail-copy h1 {
        font-size: 38px;
        line-height: 1.02;
    }

    .hgt-activity-hero-copy p,
    .hgt-activity-detail-copy p {
        font-size: 15px;
    }

    .hgt-activity-hero-actions,
    .hgt-activity-hero-actions .button,
    .hgt-activity-visual-hero .button,
    .hgt-activity-detail-hero .button {
        width: 100%;
    }

    .hgt-activity-feature-strip,
    .hgt-activity-image-grid,
    .hgt-activity-photo-rail,
    .hgt-activity-proof-grid,
    .hgt-activity-detail-facts,
    .hgt-activity-note-list,
    .hgt-service-detail-grid,
    .hgt-activity-logistics-grid,
    .hgt-activity-insight-band,
    .hgt-activity-flow {
        grid-template-columns: 1fr;
    }

    .hgt-activity-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto;
        gap: 6px;
        border-radius: 8px;
    }

    .hgt-activity-gallery-tile.is-main {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .hgt-activity-gallery-tile {
        aspect-ratio: 1 / 1;
    }

    .hgt-activity-gallery-tile.is-main {
        aspect-ratio: 16 / 10;
    }

    .hgt-gallery-tile-action {
        right: 10px;
        bottom: 10px;
        min-height: 34px;
        padding: 0 12px;
        font-size: 11px;
    }

    .hgt-gallery-modal {
        padding: 10px;
    }

    .hgt-gallery-modal-dialog {
        max-height: calc(100vh - 20px);
    }

    .hgt-gallery-modal-head,
    .hgt-gallery-footer {
        padding: 12px;
    }

    .hgt-gallery-footer {
        display: grid;
    }

    .hgt-gallery-stage {
        padding: 12px;
    }

    .hgt-gallery-stage img {
        max-height: 58vh;
    }

    .hgt-gallery-nav {
        width: 38px;
        height: 38px;
        font-size: 28px;
    }

    .hgt-activity-feature-card,
    .hgt-activity-feature-card:first-child {
        grid-column: auto;
        min-height: 240px;
    }

    .hgt-activity-image-card.has-favorite {
        padding-top: 0;
    }

    .hgt-activity-image-card .hgt-activity-price {
        order: 2;
        margin-top: 0;
    }

    .hgt-activity-image-card .hgt-activity-card-body {
        order: 3;
        padding-bottom: 18px;
    }

    .hgt-activity-image-card .hgt-activity-price,
    .hgt-activity-image-card.has-favorite .hgt-activity-price {
        padding: 18px 20px 20px;
    }

    .hgt-activity-card-body h3 {
        font-size: 24px;
    }

    .hgt-activity-photo-rail img,
    .hgt-activity-photo-rail img:first-child {
        aspect-ratio: 4 / 3;
    }

    .hgt-experience-panel {
        padding: 22px;
    }

    .hgt-booking-mini-proof {
        display: grid;
        grid-template-columns: 1fr;
    }
}

/* Home final overrides: keep the luxury FIT redesign above legacy template rules. */
body.home-page .hgt-home-luxury-hero {
    min-height: min(94vh, 860px);
    padding: clamp(112px, 12vw, 148px) 0 42px;
    background-image: linear-gradient(90deg, rgba(8, 10, 12, 0.74), rgba(8, 10, 12, 0.36) 54%, rgba(8, 10, 12, 0.12)), var(--hgt-home-hero);
    background-position: center;
    background-size: cover;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-grid {
    min-height: min(72vh, 670px);
    align-items: center;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-copy {
    grid-template-columns: minmax(0, 0.9fr) minmax(420px, 0.85fr);
    gap: clamp(24px, 4vw, 52px);
    align-items: end;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1 {
    font-size: clamp(46px, 5.8vw, 78px);
    line-height: 1;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1,
body.home-page .hgt-home-luxury-hero .hgt-hero-copy > p,
body.home-page .hgt-home-luxury-hero .hgt-hero-actions,
body.home-page .hgt-home-luxury-hero .hgt-hero-member-shortcuts,
body.home-page .hgt-home-luxury-hero .hgt-luxury-proof-row,
body.home-page .hgt-home-luxury-hero .hgt-scroll-cue {
    grid-column: 1;
}

body.home-page .hgt-home-luxury-hero .hgt-ai-assistant {
    grid-column: 2;
    grid-row: 1 / span 5;
    align-self: start;
}

body.home-page .hgt-home-luxury-hero .hgt-ai-assistant:not(.is-chat-open) .hgt-ai-thread,
body.home-page .hgt-home-luxury-hero .hgt-ai-assistant:not(.is-chat-open) .hgt-ai-thread-form,
body.home-page .hgt-home-luxury-hero .hgt-ai-assistant:not(.is-chat-open) .hgt-ai-actions,
body.home-page .hgt-home-luxury-hero .hgt-ai-assistant:not(.is-chat-open) .hgt-ai-plans,
body.home-page .hgt-home-luxury-hero .hgt-ai-assistant:not(.is-chat-open) .hgt-home-plan-link {
    display: none !important;
}

body.home-page .hgt-hero-image-rail {
    grid-column: 1 / -1;
}

body.home-page .hgt-luxury-category-card {
    min-height: 360px;
    align-content: end;
    border: 0;
    border-radius: 8px;
    background-image: linear-gradient(180deg, rgba(6, 8, 9, 0.08), rgba(6, 8, 9, 0.86)), var(--hgt-category-image);
    background-position: center;
    background-size: cover;
    color: #fff !important;
}

body.home-page .hgt-fit-planner-grid {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
    gap: clamp(24px, 4vw, 46px);
    align-items: center;
    text-align: left;
}

body.home-page .hgt-fit-planner-grid .hgt-home-feature-row {
    grid-column: 1 / -1;
}

body.home-page .hgt-home-image-cta {
    background-image: linear-gradient(90deg, rgba(8, 10, 12, 0.84), rgba(8, 10, 12, 0.54)), var(--hgt-cta-image);
    background-position: center;
    background-size: cover;
}

@media (max-width: 1200px) {
    body.home-page .hgt-home-luxury-hero .hgt-hero-copy,
    body.home-page .hgt-fit-planner-grid {
        grid-template-columns: 1fr;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1,
    body.home-page .hgt-home-luxury-hero .hgt-hero-copy > p,
    body.home-page .hgt-home-luxury-hero .hgt-hero-actions,
    body.home-page .hgt-home-luxury-hero .hgt-hero-member-shortcuts,
    body.home-page .hgt-home-luxury-hero .hgt-luxury-proof-row,
    body.home-page .hgt-home-luxury-hero .hgt-ai-assistant,
    body.home-page .hgt-home-luxury-hero .hgt-scroll-cue {
        grid-column: 1;
        grid-row: auto;
    }

    body.home-page .hgt-home-luxury-hero .hgt-ai-assistant {
        max-width: 760px;
    }

    body.home-page .hgt-activity-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.home-page .hgt-home-luxury-hero {
        min-height: auto;
        padding: 104px 0 46px;
        background-image: linear-gradient(180deg, rgba(8, 10, 12, 0.18), rgba(8, 10, 12, 0.86)), var(--hgt-home-hero);
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1 {
        font-size: 42px;
    }

    body.home-page .hgt-hero-actions,
    body.home-page .hgt-hero-actions .button,
    body.home-page .hgt-home-luxury-hero .button,
    body.home-page .hgt-fit-planner-copy .button {
        width: 100%;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1 {
        order: 1;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-copy > p {
        order: 2;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-actions {
        order: 3;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-member-shortcuts {
        order: 4;
    }

    body.home-page .hgt-home-luxury-hero .hgt-ai-assistant {
        order: 5;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-prompt-shell {
        grid-template-columns: minmax(0, 1fr) 52px;
    }

    body.home-page .hgt-home-luxury-hero .hgt-prompt-tools {
        right: 72px;
        bottom: 15px;
    }

    body.home-page .hgt-home-luxury-hero .hgt-send-button {
        align-self: start;
        width: 52px;
        height: 52px;
        min-height: 52px;
    }

    body.home-page .hgt-home-luxury-hero .hgt-ai-form small {
        max-width: calc(100% - 82px);
    }

    body.home-page .hgt-home-luxury-hero .hgt-ai-assistant:not(.is-chat-open) .hgt-ai-suggestions,
    body.home-page .hgt-home-luxury-hero .hgt-ai-assistant:not(.is-chat-open) .hgt-home-access {
        display: none !important;
    }

    body.home-page .hgt-home-luxury-hero .hgt-luxury-proof-row {
        order: 6;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-image-rail,
    body.home-page .hgt-home-luxury-hero .hgt-scroll-cue {
        order: 7;
    }

    body.home-page .hgt-luxury-proof-row,
    body.home-page .hgt-hero-image-rail,
    body.home-page .hgt-activity-category-grid,
    body.home-page .hgt-fit-planner-grid .hgt-home-feature-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1024px) {
    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started {
        position: fixed;
        inset: 0;
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(0, 1fr) auto;
        gap: 12px;
        width: 100vw;
        max-width: none;
        height: 100vh;
        height: 100dvh;
        max-height: 100vh;
        max-height: 100dvh;
        padding: 12px;
        overflow: hidden;
    }

    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-expanded-head {
        position: static;
        grid-row: 1;
        min-height: 50px;
        margin: 0;
        padding: 0 0 10px;
        background: #f7f7f7;
    }

    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-form,
    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-suggestions,
    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-home-access,
    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-actions,
    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-plans,
    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-home-plan-link {
        display: none !important;
    }

    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-thread {
        position: static;
        inset: auto;
        grid-row: 2;
        width: 100%;
        max-width: none;
        min-height: 0;
        height: auto;
        margin: 0;
        padding: 16px;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-thread-form {
        position: static;
        inset: auto;
        grid-row: 3;
        display: grid;
        grid-template-columns: minmax(0, 1fr) 52px;
        gap: 10px;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 12px;
        padding-bottom: max(12px, env(safe-area-inset-bottom));
    }

    body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-thread-form textarea {
        min-height: 52px;
        max-height: 104px;
        resize: none;
    }

body.home-page .hgt-ai-assistant.is-chat-open.has-thread-started .hgt-ai-thread-form .hgt-send-button {
        align-self: stretch;
        width: 52px;
        min-height: 52px;
    }
}

/* Home concept trial: Luxury FIT local-insider direction. */
body.home-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
}

body.home-page .hgt-main-nav {
    border-bottom: 1px solid rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.home-page .hgt-main-nav .full-wrapper {
    min-height: 82px;
    margin-right: 28px;
    margin-left: 28px;
}

body.home-page .hgt-logo-text {
    height: 82px;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    font-weight: 400;
    line-height: 82px;
    letter-spacing: 0.045em;
}

body.home-page .hgt-logo-text:hover {
    color: var(--hgt-home-ink);
}

body.home-page .hgt-logo-text em {
    color: var(--hgt-home-clay);
    letter-spacing: 0.045em;
}

body.home-page .hgt-main-nav .inner-nav.desktop-nav.hgt-nav-shell {
    padding-right: 148px;
    padding-left: 242px;
}

body.home-page .hgt-main-nav .inner-nav ul li {
    margin-left: 8px;
}

body.home-page .hgt-main-nav .inner-nav ul li a,
body.home-page .hgt-main-nav .hgt-menu-button {
    min-height: 40px;
    height: auto !important;
    padding: 11px 13px;
    border: 1px solid rgba(55, 47, 37, 0.1);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.58);
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25 !important;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

body.home-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.home-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.home-page .hgt-main-nav .inner-nav > ul > li > a.mn-has-sub:hover,
body.home-page .hgt-main-nav .hgt-menu-button:hover {
    border-color: rgba(184, 138, 69, 0.4);
    background: rgba(184, 138, 69, 0.18);
    color: var(--hgt-home-forest) !important;
    box-shadow: 0 10px 22px rgba(72, 57, 35, 0.08);
}

body.home-page .hgt-main-nav .hgt-nav-icon {
    color: var(--hgt-home-gold);
    font-size: 12px;
}

body.home-page .hgt-main-nav .hgt-menu-caret {
    color: rgba(47, 40, 31, 0.74);
}

body.home-page .hgt-main-nav .mn-sub {
    overflow: hidden;
    width: 244px;
    padding: 8px;
    border: 0;
    border-radius: 14px;
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.home-page .hgt-main-nav .mn-sub li a,
body.home-page .hgt-main-nav .mn-sub .hgt-menu-button {
    min-height: auto;
    padding: 11px 12px;
    border: 0 !important;
    border-radius: 10px;
    background: transparent !important;
    color: #2f281f !important;
    box-shadow: none;
    font-size: 12px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0.02em;
}

body.home-page .hgt-main-nav .mn-sub li a:hover,
body.home-page .hgt-main-nav .mn-sub li a.active,
body.home-page .hgt-main-nav .mn-sub .hgt-menu-button:hover {
    background: rgba(184, 138, 69, 0.12);
    color: var(--hgt-home-forest) !important;
    box-shadow: none;
}

body.home-page .hgt-main-nav .mn-sub .hgt-nav-icon,
body.home-page .hgt-main-nav .mn-sub .hgt-menu-button .hgt-nav-icon {
    color: var(--hgt-home-gold);
    opacity: 1;
}

body.home-page .hgt-nav-search {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(55, 47, 37, 0.15);
    border-radius: 50%;
    background: rgba(255, 253, 248, 0.88);
    color: var(--hgt-home-forest);
}

body.home-page .hgt-nav-search:hover {
    border-color: rgba(184, 138, 69, 0.5);
    background: rgba(184, 138, 69, 0.12);
}

body.home-page .main-nav.small-height .hgt-utility-nav {
    top: 0;
    height: 40px;
    align-items: center;
}

body.home-page .main-nav.small-height .hgt-language-current {
    min-height: 40px;
    padding-top: 11px;
    padding-bottom: 11px;
}

body.home-page .main-nav.small-height .hgt-nav-search {
    width: 40px;
    height: 40px;
    padding: 0;
    line-height: 1;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1,
body.home-page .hgt-home-section-title h2,
body.home-page .hgt-fit-planner-copy h2,
body.home-page .hgt-cta-panel h2 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1 {
    line-height: 1.05;
}

body.home-page .hgt-home-luxury-hero {
    min-height: auto;
    padding: clamp(112px, 11vw, 144px) 0 clamp(54px, 7vw, 86px);
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%) !important;
    background-image:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%) !important;
    color: var(--hgt-home-ink);
}

body.home-page .hgt-home-luxury-hero::before {
    display: none;
}

body.home-page .main-nav.small-height .hgt-logo-text {
    height: 62px;
    line-height: 62px;
}

body.home-page .main-nav.small-height .full-wrapper {
    min-height: 62px;
}

body.home-page .hgt-home-slogan,
body.home-page .hgt-section-kicker {
    display: block;
    margin-bottom: 12px;
    color: var(--hgt-home-gold);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.16em;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1 {
    max-width: 760px;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 5.6vw, 76px);
    font-weight: 400;
    line-height: 1.05;
    text-transform: none;
    letter-spacing: 0;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-copy > p {
    max-width: 620px;
    color: #5e675f;
    font-size: 18px;
    line-height: 1.75;
}

body.home-page .hgt-home-luxury-hero .button {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest) !important;
    color: #fff !important;
}

body.home-page .hgt-home-luxury-hero .button.ghost {
    border-color: rgba(38, 72, 63, 0.3);
    background: rgba(38, 72, 63, 0.06) !important;
    color: var(--hgt-home-forest) !important;
}

body.home-page .hgt-home-luxury-hero .button:hover,
body.home-page .hgt-home-luxury-hero .button.ghost:hover {
    border-color: #16130f;
    background: #16130f !important;
    color: #fff !important;
}

body.home-page .hgt-home-luxury-hero .hgt-hero-member-shortcuts a {
    border-color: rgba(38, 72, 63, 0.22);
    background: rgba(255, 253, 248, 0.76);
    color: var(--hgt-home-forest);
}

body.home-page .hgt-luxury-proof-row strong {
    color: #fff;
    font-size: 21px;
}

body.home-page .hgt-luxury-proof-row span {
    min-height: 88px;
    background: rgba(10, 10, 10, 0.22);
    backdrop-filter: blur(10px);
}

body.home-page .hgt-ai-assistant {
    border: 1px solid rgba(55, 47, 37, 0.14);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.9);
    box-shadow: 0 28px 80px rgba(52, 40, 24, 0.12);
}

body.home-page .hgt-ai-suggestion,
body.home-page .hgt-preference-tag {
    border-radius: 999px;
    letter-spacing: 0.08em;
}

body.home-page .hgt-home-preference-section {
    background: var(--hgt-home-paper);
}

body.home-page .hgt-home-preference-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.96fr) minmax(340px, 0.7fr);
    gap: clamp(28px, 5vw, 70px);
    align-items: start;
    margin-bottom: clamp(46px, 7vw, 82px);
}

body.home-page .hgt-home-section-title h2,
body.home-page .hgt-fit-planner-copy h2,
body.home-page .hgt-cta-panel h2 {
    color: var(--hgt-home-ink);
    letter-spacing: 0.02em;
}

body.home-page .hgt-home-section-title p,
body.home-page .hgt-fit-planner-copy p {
    color: var(--hgt-home-muted);
}

body.home-page .hgt-preference-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

body.home-page .hgt-preference-tag {
    min-height: 42px;
    padding: 10px 16px;
    border: 1px solid rgba(38, 72, 63, 0.22);
    background: rgba(255, 253, 248, 0.82);
    color: var(--hgt-home-forest);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

body.home-page .hgt-preference-tag:hover {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest);
    color: #fff;
}

body.home-page .hgt-duration-options {
    display: grid;
    gap: 12px;
}

body.home-page .hgt-duration-options article {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 4px 18px;
    padding: 22px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.06);
}

body.home-page .hgt-duration-options span {
    grid-row: 1 / span 2;
    color: var(--hgt-home-gold);
    font-family: Dosis, arial, sans-serif;
    font-size: 27px;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

body.home-page .hgt-duration-options strong {
    color: var(--hgt-home-ink);
    font-size: 18px;
}

body.home-page .hgt-duration-options p {
    margin: 0;
    color: var(--hgt-home-muted);
    line-height: 1.55;
}

body.home-page .hgt-gem-catalog-title {
    max-width: 760px;
    margin-bottom: 26px;
}

body.home-page .hgt-luxury-category-card {
    min-height: 430px;
    padding: 26px;
    background-image:
        linear-gradient(180deg, rgba(5, 8, 8, 0.04), rgba(5, 8, 8, 0.88)),
        var(--hgt-category-image);
}

body.home-page .hgt-luxury-category-card .hgt-activity-card-copy strong {
    font-size: clamp(28px, 3.2vw, 42px);
    line-height: 1.04;
}

body.home-page .hgt-luxury-category-card .hgt-activity-card-copy small {
    max-width: 34em;
}

body.home-page .hgt-fit-planner {
    background: #fff;
}

body.home-page .hgt-fit-planner-grid {
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: linear-gradient(135deg, #fffdf8, #f6f0e7);
    box-shadow: 0 24px 70px rgba(52, 40, 24, 0.08);
}

body.home-page .hgt-fit-planner-media img {
    min-height: 420px;
    object-fit: cover;
}

body.home-page .hgt-home-feature-row,
body.home-page .hgt-home-trust-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    overflow: hidden;
    background: var(--hgt-home-line);
}

body.home-page .hgt-home-feature-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.home-page .hgt-home-trust-row {
    grid-column: 1 / -1;
}

body.home-page .hgt-home-feature-row div,
body.home-page .hgt-home-trust-row div {
    margin: 0;
    padding: 22px;
    border: 0;
    background: rgba(255, 253, 248, 0.9);
}

body.home-page .hgt-home-feature-row strong,
body.home-page .hgt-home-trust-row strong {
    color: var(--hgt-home-ink);
    font-size: 16px;
}

body.home-page .hgt-home-feature-row span,
body.home-page .hgt-home-trust-row span {
    color: var(--hgt-home-muted);
}

body.home-page .hgt-home-offers {
    background: #fffdf8;
}

body.home-page .hgt-home-offers-head,
body.home-page .hgt-home-feed-head {
    max-width: 760px;
    margin-bottom: 28px;
}

body.home-page .hgt-home-offer-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

body.home-page .hgt-home-offer-card {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 20px 54px rgba(52, 40, 24, 0.09);
}

body.home-page .hgt-home-offer-card > .hgt-favorite-form,
body.home-page .hgt-home-offer-card > .hgt-favorite-control,
body.home-page .hgt-home-activity-card > .hgt-favorite-form,
body.home-page .hgt-home-activity-card > .hgt-favorite-control {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 4;
}

body.home-page .hgt-home-offer-media,
body.home-page .hgt-home-activity-media {
    position: relative;
    display: block;
    overflow: hidden;
    color: #fff;
    text-decoration: none;
}

body.home-page .hgt-home-offer-media {
    min-height: 300px;
}

body.home-page .hgt-home-offer-media::after,
body.home-page .hgt-home-activity-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(7, 9, 9, 0) 35%, rgba(7, 9, 9, 0.74) 100%);
    pointer-events: none;
}

body.home-page .hgt-home-offer-media img,
body.home-page .hgt-home-activity-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

body.home-page .hgt-home-offer-card:hover .hgt-home-offer-media img,
body.home-page .hgt-home-activity-card:hover .hgt-home-activity-media img {
    transform: scale(1.035);
}

body.home-page .hgt-home-offer-media span,
body.home-page .hgt-home-activity-media span {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 2;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.home-page .hgt-home-offer-copy {
    display: grid;
    gap: 12px;
    padding: 24px;
}

body.home-page .hgt-home-offer-copy small,
body.home-page .hgt-home-activity-body .hgt-meta,
body.home-page .hgt-home-activity-price span {
    color: var(--hgt-home-gold);
    font-size: 11px;
    font-weight: 800;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.home-page .hgt-home-offer-copy h3,
body.home-page .hgt-home-activity-body h3 {
    margin: 0;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    font-weight: 400;
    line-height: 1.15;
    text-transform: none;
    letter-spacing: 0;
}

body.home-page .hgt-home-offer-copy p,
body.home-page .hgt-home-activity-body p {
    margin: 0;
    color: var(--hgt-home-muted);
    font-size: 14px;
    line-height: 1.7;
}

body.home-page .hgt-home-offer-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.home-page .hgt-home-offer-meta span,
body.home-page .hgt-home-activity-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 7px 11px;
    border: 1px solid rgba(38, 72, 63, 0.16);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.05);
    color: var(--hgt-home-forest);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
}

body.home-page .hgt-home-offer-copy .button,
body.home-page .hgt-home-feed-more .button {
    justify-self: start;
}

body.home-page .hgt-home-activity-feed {
    background:
        linear-gradient(180deg, #f8f5ef 0%, #fffdf8 100%);
}

body.home-page .hgt-home-activity-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

body.home-page .hgt-home-activity-card {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr) auto;
    overflow: hidden;
    min-height: 100%;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(52, 40, 24, 0.07);
}

body.home-page .hgt-home-activity-card[hidden] {
    display: none !important;
}

body.home-page .hgt-home-activity-media {
    grid-row: auto;
    min-height: 230px;
}

body.home-page .hgt-home-activity-body {
    display: grid;
    align-content: start;
    gap: 10px;
    padding: 24px 22px 18px;
}

body.home-page .hgt-home-activity-body .hgt-meta {
    display: grid;
    gap: 4px;
    max-width: calc(100% - 52px);
    color: var(--hgt-home-forest);
}

body.home-page .hgt-home-activity-body .hgt-meta span {
    overflow-wrap: anywhere;
}

body.home-page .hgt-home-activity-highlights,
body.home-page .hgt-home-activity-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.home-page .hgt-home-activity-highlights span {
    color: #5e675f;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
}

body.home-page .hgt-home-activity-price {
    grid-column: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 22px 22px;
}

body.home-page .hgt-home-activity-price strong {
    flex: 1;
    color: var(--hgt-home-ink);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.25;
}

body.home-page .hgt-home-activity-price .button {
    min-width: 112px;
    padding-right: 18px;
    padding-left: 18px;
}

body.home-page .hgt-home-feed-more {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px solid var(--hgt-home-line);
}

body.home-page .hgt-home-feed-more > span {
    color: var(--hgt-home-muted);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

body.home-page .hgt-home-feed-more.is-complete > span {
    color: var(--hgt-home-forest);
}

body.home-page .hgt-home-empty-feed {
    padding: 34px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: #fff;
}

body.home-page .hgt-home-empty-feed h3 {
    margin-top: 0;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}

body.home-page .hgt-home-empty-feed p {
    color: var(--hgt-home-muted);
}

body.home-page .hgt-home-package-band {
    background:
        radial-gradient(circle at top left, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf1 0%, #eef5f0 100%);
    color: var(--hgt-home-ink);
}

body.home-page .hgt-home-package-band .hgt-home-section-title h2,
body.home-page .hgt-home-package-band .hgt-home-section-title p {
    color: var(--hgt-home-ink);
}

body.home-page .hgt-home-package-band .hgt-home-section-title p {
    max-width: 660px;
    color: #5e675f;
}

body.home-page .hgt-home-package-band .hgt-package-preview-card {
    border-color: rgba(55, 47, 37, 0.14);
    background: rgba(255, 253, 248, 0.92);
    color: var(--hgt-home-ink);
    box-shadow: 0 22px 54px rgba(52, 40, 24, 0.09);
}

body.home-page .hgt-home-package-band .hgt-package-preview-card > strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(29px, 2.4vw, 38px);
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.home-page .hgt-home-package-band .hgt-package-preview-card > span:not(.hgt-package-recommend-label) {
    color: var(--hgt-home-forest);
}

body.home-page .hgt-home-package-band .hgt-package-preview-card span,
body.home-page .hgt-home-package-band .hgt-package-preview-card p,
body.home-page .hgt-home-package-band .hgt-package-preview-card li {
    color: #5e675f;
}

body.home-page .hgt-home-package-band .hgt-package-preview-price {
    color: #7b532d;
    font-family: "Open Sans", arial, sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.08em;
}

body.home-page .hgt-home-package-band .hgt-package-preview-card p.hgt-package-preview-price {
    color: #7b532d;
}

body.home-page .hgt-home-package-band .hgt-package-preview-card li::marker {
    color: var(--hgt-home-gold);
}

body.home-page .hgt-home-package-band .hgt-package-preview-card.is-recommended {
    border-color: rgba(184, 138, 69, 0.58);
    background: linear-gradient(180deg, #fff6e2 0%, #f6fbf6 100%);
    box-shadow: 0 26px 64px rgba(119, 87, 40, 0.14);
}

body.home-page .hgt-home-package-band .hgt-package-recommend-label {
    border-radius: 999px;
    background: var(--hgt-home-forest);
    color: #fff;
    letter-spacing: 0.08em;
}

body.home-page .hgt-home-package-band .hgt-package-preview-card .button.ghost {
    border-color: rgba(38, 72, 63, 0.32);
    background: rgba(38, 72, 63, 0.06);
    color: var(--hgt-home-forest);
}

body.home-page .hgt-home-package-band .hgt-package-preview-card .button.ghost:hover,
body.home-page .hgt-home-package-band .hgt-package-preview-card .button.ghost:focus {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest);
    color: #fff;
}

body.home-page .hgt-home-image-cta {
    min-height: 480px;
    display: grid;
    align-items: center;
}

body.home-page .hgt-home-image-cta .hgt-cta-panel {
    max-width: 720px;
}

body.home-page .hgt-home-image-cta .hgt-cta-panel h2,
body.home-page .hgt-home-image-cta .hgt-cta-panel p {
    color: #fff;
}

@media (max-width: 1200px) {
    body.home-page .hgt-home-preference-grid,
    body.home-page .hgt-home-trust-row {
        grid-template-columns: 1fr;
    }

    body.home-page .hgt-duration-options {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.home-page .hgt-duration-options article {
        grid-template-columns: 1fr;
    }

    body.home-page .hgt-home-offer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.home-page .hgt-home-activity-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    body.home-page .main-nav.mobile-on {
        background: rgba(255, 252, 245, 0.98);
    }

    body.home-page .main-nav.mobile-on .full-wrapper {
        min-height: 74px;
        margin-right: 0;
        margin-left: 0;
    }

    body.home-page .main-nav.mobile-on .nav-logo-wrap {
        padding-left: 20px;
    }

    body.home-page .main-nav.mobile-on .hgt-logo-text {
        height: 74px;
        font-size: 21px;
        line-height: 74px;
    }

    body.home-page .main-nav.mobile-on .inner-nav.desktop-nav.hgt-nav-shell {
        width: 100%;
        padding-right: 0 !important;
        padding-left: 0 !important;
        max-height: calc(100vh - 74px);
        overflow-y: auto;
        border-top: 1px solid rgba(55, 47, 37, 0.12);
        background: rgba(255, 252, 245, 0.99);
        box-shadow: 0 24px 42px rgba(34, 28, 20, 0.14);
    }

    body.home-page .main-nav.mobile-on .mobile-nav {
        width: 74px;
        height: 74px;
        display: grid;
        place-items: center;
        border-left: 1px solid rgba(55, 47, 37, 0.12);
        color: var(--hgt-home-forest);
    }

    body.home-page .main-nav.mobile-on .hgt-mobile-bars {
        gap: 5px;
        width: 20px;
    }

    body.home-page .main-nav.mobile-on .hgt-mobile-bars span {
        width: 20px;
        height: 2px;
        border-radius: 99px;
        background: currentColor;
    }

    body.home-page .main-nav.mobile-on .hgt-primary-nav,
    body.home-page .main-nav.mobile-on .hgt-utility-nav {
        float: none !important;
        width: 100% !important;
        background: transparent;
    }

    body.home-page .main-nav.mobile-on .desktop-nav.hgt-nav-shell > ul.hgt-primary-nav,
    body.home-page .main-nav.mobile-on .desktop-nav.hgt-nav-shell > ul.hgt-utility-nav {
        display: block !important;
        width: 100% !important;
        max-width: none;
        margin: 0;
    }

    body.home-page .main-nav.mobile-on .inner-nav ul li {
        margin-left: 0;
    }

    body.home-page .main-nav.mobile-on .inner-nav ul li a,
    body.home-page .main-nav.mobile-on .hgt-menu-button,
    body.home-page .main-nav.mobile-on .hgt-nav-search {
        min-height: 50px;
        padding: 15px 20px;
        border-radius: 0;
        border: 0;
        border-bottom: 1px solid rgba(55, 47, 37, 0.1);
        background: transparent;
        color: #2f281f !important;
        box-shadow: none;
        font-size: 12px;
        letter-spacing: 0.1em;
    }

    body.home-page .main-nav.mobile-on .hgt-nav-search {
        width: 100%;
        height: auto;
        display: flex;
        justify-content: flex-start;
    }

    body.home-page .main-nav.mobile-on .mn-sub {
        width: 100%;
        padding: 4px 0 10px;
        border: 0;
        border-radius: 0;
        background: rgba(248, 245, 239, 0.96);
        box-shadow: inset 0 10px 20px rgba(34, 28, 20, 0.04);
        box-sizing: border-box;
    }

    body.home-page .main-nav.mobile-on .mn-sub li {
        padding-left: 0;
    }

    body.home-page .main-nav.mobile-on .mn-sub li a,
    body.home-page .main-nav.mobile-on .mn-sub .hgt-menu-button {
        min-height: 44px;
        padding: 12px 20px 12px 46px;
        border-bottom: 0;
        background: transparent;
        color: #40382e !important;
        font-size: 12px;
        letter-spacing: 0.02em;
        text-transform: none;
    }
}

@media (max-width: 767px) {
    body.home-page .hgt-home-slogan {
        margin-bottom: 10px;
        font-size: 10px;
        letter-spacing: 0.12em;
    }

    body.home-page .hgt-home-luxury-hero .hgt-hero-copy > h1 {
        font-size: 42px;
    }

    body.home-page .hgt-luxury-proof-row span {
        min-height: auto;
    }

    body.home-page .hgt-home-preference-grid,
    body.home-page .hgt-duration-options,
    body.home-page .hgt-home-feature-row,
    body.home-page .hgt-home-trust-row,
    body.home-page .hgt-home-offer-grid,
    body.home-page .hgt-home-activity-grid {
        grid-template-columns: 1fr;
    }

    body.home-page .hgt-duration-options article,
    body.home-page .hgt-home-feature-row div,
    body.home-page .hgt-home-trust-row div {
        padding: 18px;
    }

    body.home-page .hgt-luxury-category-card {
        min-height: 340px;
    }

    body.home-page .hgt-home-offer-media {
        min-height: 260px;
    }

    body.home-page .hgt-home-activity-card {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    body.home-page .hgt-home-activity-media {
        grid-row: auto;
        min-height: 260px;
    }

    body.home-page .hgt-home-activity-price {
        grid-column: 1;
        flex-wrap: wrap;
        padding: 0 18px 18px;
    }

    body.home-page .hgt-home-activity-price .button {
        width: 100%;
    }

    body.home-page .hgt-home-feed-more {
        align-items: flex-start;
        flex-direction: column;
    }

    body.home-page .hgt-fit-planner-media img {
        min-height: 300px;
    }

body.home-page:not(.hgt-ai-chat-open) .hgt-floating-chat {
        right: 14px;
        bottom: 12px;
        width: 52px;
        height: 52px;
    }
}

/* Activities page style alignment with the Home luxury FIT direction. */
body.activities-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
}

body.activities-page .page-loader {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
}

body.activities-page .hgt-main-nav {
    border-bottom-color: rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.activities-page .hgt-logo-text {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0.045em;
}

body.activities-page .hgt-logo-text em,
body.activities-page .hgt-main-nav .hgt-nav-icon,
body.activities-page .hgt-eyebrow,
body.activities-page .hgt-activity-price span,
body.activities-page .hgt-service-detail-card span,
body.activities-page .hgt-activity-logistics-grid span,
body.activities-page .hgt-activity-insight-band span,
body.activities-page .hgt-activity-proof-grid span,
body.activities-page .hgt-activity-detail-facts span,
body.activities-page .hgt-activity-note-list span {
    color: var(--hgt-home-gold);
}

body.activities-page .hgt-main-nav .inner-nav ul li a,
body.activities-page .hgt-main-nav .hgt-menu-button {
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.activities-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.activities-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.activities-page .hgt-main-nav .hgt-menu-button:hover {
    color: var(--hgt-home-forest) !important;
}

body.activities-page .hgt-main-nav .mn-sub {
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.activities-page .hgt-main-nav .mn-sub li a,
body.activities-page .hgt-main-nav .mn-sub .hgt-menu-button {
    color: #2f281f !important;
}

body.activities-page .hgt-page,
body.activities-page .hgt-activity-discovery,
body.activities-page .hgt-activity-detail-content,
body.activities-page .hgt-related-services,
body.activities-page .hgt-activity-detail-page > .hgt-section {
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.activities-page .hgt-activity-visual-hero,
body.activities-page .hgt-activity-detail-hero {
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%) !important;
    background-image:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%) !important;
    color: var(--hgt-home-ink);
}

body.activities-page .hgt-activity-detail-hero {
    align-items: flex-start;
    min-height: auto;
    padding: clamp(106px, 10vw, 136px) 0 clamp(34px, 5vw, 62px);
}

body.activities-page .hgt-activity-detail-hero .hgt-activity-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 430px);
    gap: clamp(28px, 5vw, 68px);
    align-items: start;
}

body.activities-page .hgt-hero-booking-card {
    width: min(430px, 100%);
    justify-self: end;
    align-self: start;
}

body.activities-page .hgt-hero-booking-card #activity-options {
    display: block;
    width: 100%;
    color: var(--hgt-home-ink);
}

body.activities-page .hgt-hero-booking-card #activity-options .hgt-panel {
    border-color: rgba(38, 72, 63, 0.16);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.95);
    box-shadow: 0 24px 70px rgba(52, 40, 24, 0.12);
}

body.activities-page .hgt-hero-booking-card #activity-options .hgt-panel-body {
    max-height: none;
    overflow: visible;
    padding: 20px;
    gap: 14px;
}

body.activities-page .hgt-hero-booking-card .hgt-booking-head {
    gap: 12px;
}

body.activities-page .hgt-hero-booking-card .hgt-booking-head h2 {
    font-size: clamp(28px, 3vw, 38px);
}

body.activities-page .hgt-hero-booking-card .hgt-booking-mini-proof {
    gap: 6px;
}

body.activities-page .hgt-hero-booking-card .hgt-booking-mini-proof span {
    padding: 7px 9px;
    font-size: 10px;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    align-items: start;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > * {
    grid-row: auto !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm label {
    min-width: 0;
    gap: 7px;
    font-size: 10px;
    letter-spacing: 0.12em;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm input,
body.activities-page .hgt-hero-booking-card #activityBookingForm select {
    min-height: 40px;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 13px;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > label:nth-of-type(1) {
    grid-column: 1 / -1;
    grid-row: 1 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > label:nth-of-type(2) {
    grid-column: 1 / -1;
    grid-row: auto !important;
}

body.activities-page .hgt-hero-booking-card #activityDateHelp,
body.activities-page .hgt-hero-booking-card #activityBookingForm > .hgt-text-muted:not(#activityDateHelp),
body.activities-page .hgt-hero-booking-card #activityBookingForm > .row,
body.activities-page .hgt-hero-booking-card #activityAvailabilityResult,
body.activities-page .hgt-hero-booking-card #activityStripeSummary,
body.activities-page .hgt-hero-booking-card #activityBookingForm > .hgt-payment-method-note,
body.activities-page .hgt-hero-booking-card #activityBookingForm > .hgt-guide-picker,
body.activities-page .hgt-hero-booking-card #activityBookingValidation,
body.activities-page .hgt-hero-booking-card #activityBookingForm > .button {
    grid-column: 1 / -1;
}

body.activities-page .hgt-hero-booking-card #activityDateHelp {
    grid-row: 2 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .hgt-text-muted:not(#activityDateHelp) {
    grid-row: 2 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .row {
    grid-row: 2 !important;
}

body.activities-page .hgt-hero-booking-card #activityAvailabilityResult {
    grid-row: 3 !important;
}

body.activities-page .hgt-hero-booking-card #activityStripeSummary {
    grid-row: 4 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .hgt-guide-picker {
    grid-row: 3 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingValidation {
    grid-row: 4 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .button {
    grid-row: 5 !important;
}

body.activities-page .hgt-hero-booking-card #activityDateHelp,
body.activities-page .hgt-hero-booking-card #activityBookingForm > .hgt-text-muted:not(#activityDateHelp) {
    margin: -6px 0 0;
    font-size: 12px;
    line-height: 1.5;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    margin: 0;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .row > [class*="col-"] {
    flex: 1 1 0 !important;
    width: auto;
    max-width: none;
    padding: 0;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .row > [class*="col-"]:nth-child(1) {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .row > [class*="col-"]:nth-child(2) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .row label {
    letter-spacing: 0.08em;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .row input {
    text-align: center;
}

body.activities-page .hgt-hero-booking-card .hgt-availability-panel,
body.activities-page .hgt-hero-booking-card .hgt-stripe-summary,
body.activities-page .hgt-hero-booking-card .hgt-payment-method-note,
body.activities-page .hgt-hero-booking-card .hgt-booking-resume {
    padding: 12px;
    border-radius: 8px;
    font-size: 12px;
    line-height: 1.5;
}

body.activities-page .hgt-hero-booking-card .hgt-guide-picker {
    gap: 10px;
}

body.activities-page .hgt-guide-choice-mode {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

body.activities-page .hgt-guide-choice-mode label {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.62);
    color: var(--hgt-home-forest);
    cursor: pointer;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.activities-page .hgt-guide-choice-mode label.selected {
    border-color: rgba(38, 72, 63, 0.44);
    background: rgba(38, 72, 63, 0.1);
}

body.activities-page .hgt-guide-choice-mode input {
    width: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
}

body.activities-page .hgt-guide-select-field[hidden] {
    display: none;
}

body.activities-page .hgt-hero-booking-card .hgt-guide-option {
    gap: 10px;
    padding: 12px;
}

body.activities-page .hgt-hero-booking-card .hgt-guide-option small {
    line-height: 1.45;
}

body.activities-page .hgt-hero-booking-card #activityBookingForm > .button {
    width: 100%;
    min-width: 0;
    justify-self: stretch;
}

@media (max-width: 1100px) {
    body.activities-page .hgt-activity-detail-hero .hgt-activity-hero-grid {
        grid-template-columns: 1fr;
    }

    body.activities-page .hgt-hero-booking-card {
        width: 100%;
        justify-self: stretch;
    }

    body.activities-page .hgt-hero-booking-card #activity-options .hgt-panel-body {
        max-height: none;
        overflow: visible;
    }
}

@media (max-width: 767px) {
    body.activities-page .hgt-activity-detail-hero {
        padding: 96px 0 30px;
    }

    body.activities-page .hgt-hero-booking-card #activityBookingForm {
        grid-template-columns: 1fr 104px;
    }

    body.activities-page .hgt-hero-booking-card #activityBookingForm > .row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

body.activities-page .hgt-activity-visual-hero::before,
body.activities-page .hgt-activity-detail-hero::before {
    display: none;
}

body.activities-page .hgt-activity-hero-copy h1,
body.activities-page .hgt-activity-detail-copy h1,
body.activities-page .hgt-section-head h1,
body.activities-page .hgt-section-head h2,
body.hgt-dashboard-home-style-page .hgt-minimal-hero h1,
body.hgt-dashboard-activity-style-page .hgt-account-collection-head h1,
body.hgt-saved-activity-style-page .hgt-account-collection-head h1,
body.hgt-payment-detail-style-page .hgt-payment-detail-head h1,
body.activities-page .hgt-activity-card-body h3,
body.hgt-dashboard-home-style-page .hgt-next-card h2,
body.hgt-dashboard-activity-style-page .hgt-account-booking-body h2,
body.hgt-saved-activity-style-page .hgt-saved-account-body h2,
body.hgt-payment-detail-style-page .hgt-payment-detail-block h2,
body.hgt-payment-detail-style-page .hgt-payment-summary-card h2,
body.activities-page .hgt-experience-intro h2,
body.activities-page .hgt-booking-head h2,
body.activities-page .hgt-service-detail-card h3,
body.activities-page .hgt-activity-flow h3,
body.activities-page .hgt-guide-picker-title,
body.activities-page .hgt-related-card h3 {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.activities-page .hgt-activity-hero-copy p,
body.activities-page .hgt-activity-detail-copy p,
body.activities-page .hgt-activity-section-head p:not(.hgt-eyebrow),
body.hgt-dashboard-home-style-page .hgt-minimal-hero p:not(.hgt-eyebrow),
body.activities-page .hgt-activity-card-body p,
body.hgt-dashboard-home-style-page .hgt-next-card p,
body.hgt-dashboard-home-style-page .hgt-profile-meter-card p,
body.hgt-dashboard-activity-style-page .hgt-account-booking-body p,
body.hgt-saved-activity-style-page .hgt-saved-account-body p,
body.hgt-payment-detail-style-page .hgt-payment-detail-head p:not(.hgt-eyebrow),
body.hgt-payment-detail-style-page .hgt-payment-detail-status span,
body.hgt-payment-detail-style-page .hgt-muted-copy,
body.hgt-payment-detail-style-page .hgt-payment-summary-card p,
body.activities-page .hgt-activity-note-list p,
body.activities-page .hgt-activity-short-copy,
body.activities-page .hgt-activity-insight-band p,
body.activities-page .hgt-activity-flow p,
body.activities-page .hgt-clean-list li,
body.activities-page .hgt-related-card p,
body.activities-page .text-muted,
body.activities-page .hgt-text-muted {
    color: var(--hgt-home-muted) !important;
}

body.activities-page .hgt-activity-hero-meta span,
body.activities-page .hgt-meta span,
body.hgt-dashboard-home-style-page .hgt-status-pill,
body.hgt-dashboard-home-style-page .hgt-meter-head span,
body.hgt-dashboard-home-style-page .hgt-next-card dt,
body.hgt-dashboard-home-style-page .hgt-missing-details span,
body.hgt-dashboard-home-style-page .hgt-minimal-status-row span,
body.hgt-dashboard-activity-style-page .hgt-account-reference,
body.hgt-saved-activity-style-page .hgt-saved-account-body > span,
body.hgt-payment-detail-style-page .hgt-payment-summary-card > span,
body.activities-page .hgt-home-offer-copy small {
    color: var(--hgt-home-forest);
    font-weight: 800;
    letter-spacing: 0.12em;
}

body.activities-page .button {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest) !important;
    color: #fff !important;
}

body.activities-page .button.ghost {
    border-color: rgba(38, 72, 63, 0.3);
    background: rgba(38, 72, 63, 0.06) !important;
    color: var(--hgt-home-forest) !important;
}

body.activities-page .button:hover,
body.activities-page .button.ghost:hover {
    border-color: #16130f;
    background: #16130f !important;
    color: #fff !important;
}

body.hgt-dashboard-home-style-page .hgt-minimal-dashboard {
    gap: 24px;
}

body.hgt-dashboard-home-style-page .hgt-minimal-hero {
    align-items: flex-end;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--hgt-home-line);
}

body.hgt-dashboard-home-style-page .hgt-minimal-hero h1 {
    font-size: clamp(36px, 5vw, 62px);
    line-height: 1;
}

body.hgt-dashboard-home-style-page .hgt-next-card,
body.hgt-dashboard-home-style-page .hgt-profile-meter-card,
body.hgt-dashboard-home-style-page .hgt-minimal-status-row {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.hgt-dashboard-home-style-page .hgt-next-card:hover,
body.hgt-dashboard-home-style-page .hgt-next-card:focus-visible {
    border-color: rgba(184, 138, 69, 0.45);
    box-shadow: 0 24px 54px rgba(52, 40, 24, 0.11);
}

body.hgt-dashboard-home-style-page .hgt-next-card.needs-action,
body.hgt-dashboard-home-style-page .hgt-profile-meter-card.needs-action {
    border-color: rgba(184, 138, 69, 0.3);
    background: rgba(255, 250, 242, 0.96);
}

body.hgt-dashboard-home-style-page .hgt-next-card.is-complete,
body.hgt-dashboard-home-style-page .hgt-profile-meter-card.is-complete {
    border-color: rgba(38, 72, 63, 0.24);
    background: rgba(247, 252, 250, 0.88);
}

body.hgt-dashboard-home-style-page .hgt-profile-meter-card.is-progress {
    border-color: rgba(38, 72, 63, 0.18);
    background: rgba(255, 253, 248, 0.94);
}

body.hgt-dashboard-home-style-page .hgt-status-pill {
    border-color: rgba(184, 138, 69, 0.28);
    border-radius: 999px;
    background: rgba(184, 138, 69, 0.08);
    color: var(--hgt-home-clay);
    font-weight: 800;
}

body.hgt-dashboard-home-style-page .hgt-meter-head span {
    color: var(--hgt-home-forest);
    font-family: "Open Sans", arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.1em;
}

body.hgt-dashboard-home-style-page .hgt-next-card.is-complete .hgt-status-pill {
    color: var(--hgt-home-forest);
}

body.hgt-dashboard-home-style-page .hgt-meter-head strong {
    color: var(--hgt-home-clay);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 6vw, 72px);
    font-weight: 400;
    letter-spacing: 0;
}

body.hgt-dashboard-home-style-page .hgt-profile-meter-card.is-progress .hgt-meter-head strong,
body.hgt-dashboard-home-style-page .hgt-profile-meter-card.is-complete .hgt-meter-head strong {
    color: var(--hgt-home-forest);
}

body.hgt-dashboard-home-style-page .hgt-profile-progress-large,
body.hgt-dashboard-home-style-page .hgt-profile-progress-large span {
    border-radius: 999px;
}

body.hgt-dashboard-home-style-page .hgt-profile-meter-card.needs-action .hgt-profile-progress-large span {
    background: var(--hgt-home-clay);
}

body.hgt-dashboard-home-style-page .hgt-profile-meter-card.is-progress .hgt-profile-progress-large span,
body.hgt-dashboard-home-style-page .hgt-profile-meter-card.is-complete .hgt-profile-progress-large span {
    background: var(--hgt-home-forest);
}

body.hgt-dashboard-home-style-page .hgt-next-card dl div,
body.hgt-dashboard-home-style-page .hgt-missing-details,
body.hgt-dashboard-home-style-page .hgt-minimal-status-row a {
    border-color: var(--hgt-home-line);
}

body.hgt-dashboard-home-style-page .hgt-next-card dd,
body.hgt-dashboard-home-style-page .hgt-missing-details strong,
body.hgt-dashboard-home-style-page .hgt-minimal-status-row strong {
    color: var(--hgt-home-ink);
}

body.hgt-dashboard-home-style-page .hgt-minimal-status-row strong {
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 800;
    text-transform: none;
    letter-spacing: 0;
}

body.hgt-dashboard-home-style-page .hgt-minimal-status-row {
    overflow: hidden;
}

body.hgt-dashboard-home-style-page .hgt-minimal-status-row a {
    transition: background 0.2s ease, color 0.2s ease;
}

body.hgt-dashboard-home-style-page .hgt-minimal-status-row a:hover,
body.hgt-dashboard-home-style-page .hgt-minimal-status-row a:focus-visible {
    background: rgba(38, 72, 63, 0.05);
    color: var(--hgt-home-forest);
}

body.hgt-dashboard-home-style-page .hgt-minimal-status-row a.needs-action strong {
    color: var(--hgt-home-clay);
}

body.hgt-dashboard-home-style-page .hgt-minimal-status-row a.is-complete strong,
body.hgt-dashboard-home-style-page .hgt-minimal-status-row a.is-progress strong {
    color: var(--hgt-home-forest);
}

body.hgt-dashboard-home-style-page .hgt-minimal-shortcuts a {
    border-color: rgba(38, 72, 63, 0.18);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.82);
    color: var(--hgt-home-forest);
    font-weight: 800;
    letter-spacing: 0.08em;
}

body.hgt-dashboard-home-style-page .hgt-minimal-shortcuts a:hover,
body.hgt-dashboard-home-style-page .hgt-minimal-shortcuts a:focus-visible {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest);
    color: #fff;
}

body.hgt-dashboard-activity-style-page .hgt-account-collection-head,
body.hgt-payment-detail-style-page .hgt-payment-detail-head,
body.hgt-saved-activity-style-page .hgt-account-collection-head {
    align-items: flex-end;
    border-bottom: 1px solid var(--hgt-home-line);
    padding-bottom: 22px;
}

body.hgt-dashboard-activity-style-page .hgt-account-collection-head h1,
body.hgt-payment-detail-style-page .hgt-payment-detail-head h1,
body.hgt-saved-activity-style-page .hgt-account-collection-head h1 {
    font-size: clamp(34px, 5vw, 58px);
    line-height: 1;
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-list {
    gap: 22px;
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-card,
body.hgt-payment-detail-style-page .hgt-payment-detail-status,
body.hgt-payment-detail-style-page .hgt-payment-detail-block,
body.hgt-payment-detail-style-page .hgt-payment-summary-card {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-card {
    position: relative;
    overflow: hidden;
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-card.needs-action,
body.hgt-payment-detail-style-page .hgt-payment-detail-status.needs-action {
    border-color: rgba(184, 138, 69, 0.3);
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-card.is-complete,
body.hgt-payment-detail-style-page .hgt-payment-detail-status.is-complete {
    border-color: rgba(38, 72, 63, 0.24);
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-image {
    background: #ece5da;
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-body h2 {
    font-size: clamp(26px, 3.2vw, 40px);
    line-height: 1.05;
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-facts div,
body.hgt-payment-detail-style-page .hgt-payment-detail-facts div,
body.hgt-payment-detail-style-page .hgt-payment-item-list li,
body.hgt-payment-detail-style-page .hgt-payment-summary-card dl div {
    border-color: var(--hgt-home-line);
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-facts dt,
body.hgt-payment-detail-style-page .hgt-payment-detail-facts dt,
body.hgt-payment-detail-style-page .hgt-payment-summary-card dt {
    color: var(--hgt-home-muted);
    letter-spacing: 0.08em;
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-facts dd,
body.hgt-payment-detail-style-page .hgt-payment-detail-facts dd,
body.hgt-payment-detail-style-page .hgt-payment-summary-card dd,
body.hgt-payment-detail-style-page .hgt-payment-item-list strong,
body.hgt-payment-detail-style-page .hgt-payment-item-list em,
body.hgt-payment-detail-style-page .hgt-payment-detail-status strong {
    color: var(--hgt-home-ink);
}

body.hgt-dashboard-activity-style-page .hgt-account-booking-actions {
    margin-top: 10px;
}

body.hgt-dashboard-activity-style-page .hgt-booking-remove-form {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 4;
    margin: 0;
}

body.hgt-dashboard-activity-style-page .hgt-booking-remove-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    min-height: 38px;
    padding: 0 13px;
    border-color: rgba(184, 138, 69, 0.28) !important;
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.94) !important;
    color: var(--hgt-home-clay) !important;
    box-shadow: 0 12px 28px rgba(52, 40, 24, 0.14);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
}

body.hgt-dashboard-activity-style-page .hgt-booking-remove-button:hover,
body.hgt-dashboard-activity-style-page .hgt-booking-remove-button:focus-visible {
    border-color: var(--hgt-home-clay) !important;
    background: var(--hgt-home-clay) !important;
    color: #fff !important;
}

body.hgt-payment-detail-style-page .hgt-payment-summary-card {
    top: 104px;
}

body.hgt-payment-detail-style-page .hgt-payment-unavailable {
    opacity: 0.82;
}

body.hgt-saved-activity-style-page .hgt-account-collection {
    gap: 28px;
}

body.hgt-saved-activity-style-page .hgt-saved-account-grid {
    gap: 24px;
}

body.hgt-saved-activity-style-page .hgt-saved-account-card {
    min-height: 100%;
    overflow: hidden;
    border-radius: 8px;
}

body.hgt-saved-activity-style-page .hgt-saved-account-image {
    aspect-ratio: 16 / 10;
}

body.hgt-saved-activity-style-page .hgt-saved-account-body > span {
    display: none;
}

body.hgt-saved-activity-style-page .hgt-saved-account-body h2 {
    font-size: 24px;
    line-height: 1.08;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

body.hgt-saved-activity-style-page .hgt-saved-account-body h2 a {
    color: inherit;
}

body.hgt-saved-activity-style-page .hgt-saved-account-body dl {
    gap: 8px;
    margin: 3px 0 0;
}

body.hgt-saved-activity-style-page .hgt-saved-account-body dl div {
    border-color: var(--hgt-home-line);
}

body.hgt-saved-activity-style-page .hgt-saved-account-body dt {
    color: var(--hgt-home-muted);
    letter-spacing: 0.08em;
}

body.hgt-saved-activity-style-page .hgt-saved-account-body dd {
    color: var(--hgt-home-ink);
    font-weight: 700;
}

body.hgt-saved-activity-style-page .hgt-saved-account-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 6px -18px -18px;
    padding: 16px 18px 18px;
    border-top: 1px solid var(--hgt-home-line);
}

body.hgt-saved-activity-style-page .hgt-saved-account-actions .button,
body.hgt-saved-activity-style-page .hgt-saved-account-actions form {
    width: 100%;
}

body.hgt-saved-activity-style-page .hgt-saved-account-actions .button {
    justify-content: center;
}

body.hgt-saved-activity-style-page .hgt-button-link {
    border-color: rgba(184, 138, 69, 0.28) !important;
    background: transparent !important;
    color: var(--hgt-home-clay) !important;
}

body.hgt-saved-activity-style-page .hgt-button-link:hover,
body.hgt-saved-activity-style-page .hgt-button-link:focus-visible {
    border-color: var(--hgt-home-clay) !important;
    background: var(--hgt-home-clay) !important;
    color: #fff !important;
}

body.hgt-saved-activity-style-page .hgt-account-empty-state {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.hgt-profile-style-page,
body.hgt-profile-style-page .hgt-profile-minimal-page,
body.hgt-profile-style-page .hgt-profile-content {
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.hgt-profile-style-page .hgt-profile-hero-minimal {
    padding: clamp(106px, 10vw, 136px) 0 clamp(34px, 5vw, 58px);
    border-bottom: 1px solid var(--hgt-home-line);
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%);
}

body.hgt-profile-style-page .hgt-profile-content {
    padding-top: 44px;
}

body.hgt-profile-style-page .hgt-profile-hero-minimal h1,
body.hgt-profile-style-page .hgt-profile-panel-head h2,
body.hgt-profile-style-page .hgt-profile-side-card h2,
body.hgt-profile-style-page .hgt-profile-side-card h3,
body.hgt-profile-style-page .hgt-profile-ai-card h3 {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.hgt-profile-style-page .hgt-profile-hero-minimal h1 {
    font-size: clamp(38px, 5vw, 64px);
    line-height: 1;
}

body.hgt-profile-style-page .hgt-profile-hero-minimal p,
body.hgt-profile-style-page .hgt-profile-panel-head p,
body.hgt-profile-style-page .hgt-field-help,
body.hgt-profile-style-page .hgt-profile-guidance-list p,
body.hgt-profile-style-page .hgt-text-muted,
body.hgt-profile-style-page .text-muted {
    color: var(--hgt-home-muted) !important;
}

body.hgt-profile-style-page .hgt-profile-readiness-card,
body.hgt-profile-style-page .hgt-profile-panel,
body.hgt-profile-style-page .hgt-profile-side-card,
body.hgt-profile-style-page .hgt-profile-ai-card {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.hgt-profile-style-page .hgt-profile-readiness-card.needs-action,
body.hgt-profile-style-page .hgt-profile-side-card.needs-action {
    border-color: rgba(184, 138, 69, 0.3);
    background: rgba(255, 250, 242, 0.96);
}

body.hgt-profile-style-page .hgt-profile-readiness-card.is-progress,
body.hgt-profile-style-page .hgt-profile-side-card.is-progress,
body.hgt-profile-style-page .hgt-profile-readiness-card.is-complete,
body.hgt-profile-style-page .hgt-profile-side-card.is-complete {
    border-color: rgba(38, 72, 63, 0.24);
}

body.hgt-profile-style-page .hgt-profile-readiness-card span,
body.hgt-profile-style-page .hgt-profile-panel-head span,
body.hgt-profile-style-page .hgt-eyebrow {
    color: var(--hgt-home-forest);
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 800;
    letter-spacing: 0.12em;
}

body.hgt-profile-style-page .hgt-profile-readiness-card strong,
body.hgt-profile-style-page .hgt-profile-side-card h2 {
    color: var(--hgt-home-clay);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0;
}

body.hgt-profile-style-page .hgt-profile-readiness-card.is-progress strong,
body.hgt-profile-style-page .hgt-profile-readiness-card.is-complete strong,
body.hgt-profile-style-page .hgt-profile-side-card.is-progress h2,
body.hgt-profile-style-page .hgt-profile-side-card.is-complete h2 {
    color: var(--hgt-home-forest);
}

body.hgt-profile-style-page .hgt-profile-progress,
body.hgt-profile-style-page .hgt-profile-progress span {
    border-radius: 999px;
}

body.hgt-profile-style-page .hgt-profile-readiness-card.needs-action .hgt-profile-progress span,
body.hgt-profile-style-page .hgt-profile-side-card.needs-action .hgt-profile-progress span {
    background: var(--hgt-home-clay);
}

body.hgt-profile-style-page .hgt-profile-readiness-card.is-progress .hgt-profile-progress span,
body.hgt-profile-style-page .hgt-profile-readiness-card.is-complete .hgt-profile-progress span,
body.hgt-profile-style-page .hgt-profile-side-card.is-progress .hgt-profile-progress span,
body.hgt-profile-style-page .hgt-profile-side-card.is-complete .hgt-profile-progress span {
    background: var(--hgt-home-forest);
}

body.hgt-profile-style-page .hgt-profile-panel-head,
body.hgt-profile-style-page .hgt-profile-checklist li {
    border-color: var(--hgt-home-line);
}

body.hgt-profile-style-page .hgt-field-label {
    color: var(--hgt-home-ink);
}

body.hgt-profile-style-page .hgt-field-label em {
    border-color: rgba(184, 138, 69, 0.28);
    background: rgba(184, 138, 69, 0.08);
    color: var(--hgt-home-clay);
}

body.hgt-profile-style-page .hgt-profile-field.is-needed .hgt-field-label em,
body.hgt-profile-style-page .hgt-profile-field.has-error .hgt-field-label em,
body.hgt-profile-style-page .hgt-profile-field.has-client-error .hgt-field-label em {
    border-color: rgba(157, 95, 72, 0.28);
    background: rgba(157, 95, 72, 0.08);
    color: var(--hgt-home-clay);
}

body.hgt-profile-style-page .hgt-form input[readonly] {
    background: rgba(55, 47, 37, 0.045);
    color: var(--hgt-home-muted);
}

body.hgt-profile-style-page .hgt-profile-field.is-needed input,
body.hgt-profile-style-page .hgt-profile-field.is-needed textarea,
body.hgt-profile-style-page .hgt-profile-field.is-needed select,
body.hgt-profile-style-page .hgt-checkbox-row {
    border-color: rgba(184, 138, 69, 0.28);
    background: rgba(184, 138, 69, 0.055);
}

body.hgt-profile-style-page .hgt-security-notice {
    border-left-color: var(--hgt-home-gold);
    background: rgba(184, 138, 69, 0.08);
}

body.hgt-profile-style-page .hgt-security-notice strong,
body.hgt-profile-style-page .hgt-profile-guidance-list strong,
body.hgt-profile-style-page .hgt-profile-checklist li.is-complete,
body.hgt-profile-style-page .hgt-profile-checklist li a:hover {
    color: var(--hgt-home-ink);
}

body.hgt-profile-style-page .hgt-profile-checklist li {
    color: var(--hgt-home-muted);
}

body.hgt-profile-style-page .hgt-profile-checklist li span {
    border-color: rgba(184, 138, 69, 0.28);
    background: rgba(184, 138, 69, 0.08);
    color: var(--hgt-home-clay);
}

body.hgt-profile-style-page .hgt-profile-checklist li.is-complete span {
    border-color: rgba(38, 72, 63, 0.28);
    background: rgba(38, 72, 63, 0.07);
    color: var(--hgt-home-forest);
}

body.hgt-profile-style-page .hgt-profile-guidance-list article {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.74);
}

body.hgt-profile-style-page .hgt-profile-guidance-list article.is-warning {
    border-color: rgba(184, 138, 69, 0.32);
    background: rgba(184, 138, 69, 0.08);
}

body.hgt-profile-style-page .hgt-profile-guidance-list article.is-success {
    border-color: rgba(38, 72, 63, 0.24);
    background: rgba(38, 72, 63, 0.07);
}

body.hgt-profile-style-page .hgt-profile-actions .button {
    justify-content: center;
}

body.hgt-my-plan-style-page,
body.hgt-my-plan-style-page .hgt-dashboard-page,
body.hgt-my-plan-style-page .hgt-my-plan-content {
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.hgt-my-plan-style-page .hgt-my-plan-content {
    padding: clamp(104px, 9vw, 126px) 0 clamp(72px, 7vw, 96px);
}

body.hgt-my-plan-style-page .hgt-my-plan-calendar {
    margin-bottom: 0;
}

body.hgt-my-plan-style-page .hgt-section-head {
    align-items: flex-end;
    margin-bottom: 26px;
    padding-bottom: 22px;
    border-bottom: 1px solid var(--hgt-home-line);
}

body.hgt-my-plan-style-page .hgt-section-head h1,
body.hgt-my-plan-style-page .hgt-google-calendar-card strong,
body.hgt-my-plan-style-page .hgt-my-plan-modal-panel h3,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-toolbar-title,
body.hgt-my-plan-style-page .hgt-my-plan-preview strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.hgt-my-plan-style-page .hgt-section-head h1 {
    font-size: clamp(36px, 5vw, 60px);
    line-height: 1;
}

body.hgt-my-plan-style-page .hgt-eyebrow,
body.hgt-my-plan-style-page .hgt-minia-event-chip,
body.hgt-my-plan-style-page .hgt-my-plan-preview span {
    font-family: "Open Sans", arial, sans-serif;
}

body.hgt-my-plan-style-page .hgt-minia-side-card,
body.hgt-my-plan-style-page .hgt-minia-calendar-card,
body.hgt-my-plan-style-page .hgt-google-calendar-card,
body.hgt-my-plan-style-page .hgt-my-plan-preview,
body.hgt-my-plan-style-page .hgt-my-plan-modal-panel {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.hgt-my-plan-style-page .hgt-minia-side-card {
    gap: 20px;
}

body.hgt-my-plan-style-page .hgt-google-calendar-card {
    background:
        linear-gradient(180deg, rgba(184, 138, 69, 0.08), rgba(255, 253, 248, 0.9));
}

body.hgt-my-plan-style-page .hgt-google-calendar-icon {
    border-color: var(--hgt-home-forest);
    border-radius: 50%;
    background: var(--hgt-home-forest);
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
}

body.hgt-my-plan-style-page .hgt-google-calendar-card p,
body.hgt-my-plan-style-page .hgt-google-calendar-card small,
body.hgt-my-plan-style-page .hgt-my-plan-preview,
body.hgt-my-plan-style-page .hgt-my-plan-form label {
    color: var(--hgt-home-muted);
}

body.hgt-my-plan-style-page .hgt-google-calendar-card small {
    overflow-wrap: anywhere;
}

body.hgt-my-plan-style-page .hgt-minia-event-chip {
    border-color: rgba(38, 72, 63, 0.14);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.72);
    color: var(--hgt-home-forest);
    font-weight: 700;
    letter-spacing: 0.02em;
    transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

body.hgt-my-plan-style-page .hgt-minia-event-chip:hover,
body.hgt-my-plan-style-page .hgt-minia-event-chip:focus-visible {
    border-color: rgba(184, 138, 69, 0.56);
    background: rgba(184, 138, 69, 0.08);
    transform: translateY(-1px);
}

body.hgt-my-plan-style-page .hgt-minia-event-chip.text-info {
    color: #2d69ad;
}

body.hgt-my-plan-style-page .hgt-minia-event-chip.text-success {
    color: var(--hgt-home-forest);
}

body.hgt-my-plan-style-page .hgt-minia-event-chip.text-warning {
    color: var(--hgt-home-clay);
}

body.hgt-my-plan-style-page #touristBookingCalendar {
    color: var(--hgt-home-ink);
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-toolbar-title {
    font-size: clamp(28px, 3vw, 42px);
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-button {
    border-color: rgba(38, 72, 63, 0.24);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.08);
    color: var(--hgt-home-forest);
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 800;
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-button:hover,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-button:focus,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-button-primary:not(:disabled).fc-button-active,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-button-primary:not(:disabled):active {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest);
    color: #fff;
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-col-header-cell-cushion,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-daygrid-day-number,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-list-day-text,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-list-day-side-text {
    color: var(--hgt-home-ink);
    text-decoration: none;
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-theme-standard td,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-theme-standard th,
body.hgt-my-plan-style-page #touristBookingCalendar.fc-theme-standard td,
body.hgt-my-plan-style-page #touristBookingCalendar.fc-theme-standard th {
    border-color: var(--hgt-home-line);
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-day-today {
    background: rgba(184, 138, 69, 0.09);
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-daygrid-event,
body.hgt-my-plan-style-page #touristBookingCalendar .fc-timegrid-event {
    border-color: rgba(38, 72, 63, 0.16);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.12);
    color: var(--hgt-home-forest);
    font-weight: 700;
}

body.hgt-my-plan-style-page #touristBookingCalendar .fc-list-event:hover td {
    background: rgba(38, 72, 63, 0.05);
}

body.hgt-my-plan-style-page .hgt-my-plan-preview {
    background: rgba(38, 72, 63, 0.05);
}

body.hgt-my-plan-style-page .hgt-my-plan-form input,
body.hgt-my-plan-style-page .hgt-my-plan-form select,
body.hgt-my-plan-style-page .hgt-my-plan-form textarea {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.hgt-my-plan-style-page .hgt-my-plan-form input:focus,
body.hgt-my-plan-style-page .hgt-my-plan-form select:focus,
body.hgt-my-plan-style-page .hgt-my-plan-form textarea:focus {
    border-color: rgba(184, 138, 69, 0.65);
    box-shadow: 0 0 0 3px rgba(184, 138, 69, 0.14);
}

body.hgt-my-plan-style-page .hgt-my-plan-package-field {
    position: relative;
    display: grid;
    gap: 8px;
}

body.hgt-my-plan-style-page .hgt-my-plan-package-field > label {
    color: var(--hgt-home-muted);
    font-weight: 700;
}

body.hgt-my-plan-style-page .hgt-package-search-results {
    position: absolute;
    z-index: 5;
    top: calc(100% - 2px);
    right: 0;
    left: 0;
    display: grid;
    gap: 6px;
    max-height: 300px;
    overflow: auto;
    padding: 10px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    box-shadow: 0 20px 48px rgba(52, 40, 24, 0.14);
}

body.hgt-my-plan-style-page .hgt-package-search-results[hidden] {
    display: none;
}

body.hgt-my-plan-style-page .hgt-package-search-results button {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 12px;
    width: 100%;
    padding: 12px;
    border: 1px solid rgba(38, 72, 63, 0.14);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.72);
    color: var(--hgt-home-ink);
    text-align: left;
}

body.hgt-my-plan-style-page .hgt-package-search-results button:hover,
body.hgt-my-plan-style-page .hgt-package-search-results button:focus-visible {
    border-color: rgba(184, 138, 69, 0.58);
    background: rgba(184, 138, 69, 0.08);
}

body.hgt-my-plan-style-page .hgt-package-search-results span,
body.hgt-my-plan-style-page .hgt-package-search-results strong {
    min-width: 0;
    font-weight: 800;
}

body.hgt-my-plan-style-page .hgt-package-search-results strong {
    color: var(--hgt-home-clay);
    white-space: nowrap;
}

body.hgt-my-plan-style-page .hgt-package-search-results small,
body.hgt-my-plan-style-page .hgt-package-search-results p {
    grid-column: 1 / -1;
    margin: 0;
    color: var(--hgt-home-muted);
    line-height: 1.45;
}

body.hgt-my-plan-style-page .hgt-package-price-summary {
    display: grid;
    gap: 5px;
    padding: 13px 14px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.06);
}

body.hgt-my-plan-style-page .hgt-package-price-summary[hidden] {
    display: none;
}

body.hgt-my-plan-style-page .hgt-package-price-summary span {
    color: var(--hgt-home-forest);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

body.hgt-my-plan-style-page .hgt-package-price-summary strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    font-weight: 400;
    line-height: 1.1;
}

body.hgt-my-plan-style-page .hgt-package-price-summary p,
body.hgt-my-plan-style-page .hgt-package-price-summary small,
body.hgt-my-plan-style-page .hgt-package-price-summary a {
    margin: 0;
    color: var(--hgt-home-muted);
    line-height: 1.45;
}

body.hgt-my-plan-style-page .hgt-package-price-summary a {
    color: var(--hgt-home-forest);
    font-weight: 800;
}

body.hgt-my-plan-style-page .hgt-package-availability-status {
    padding: 11px 12px;
    border: 1px solid rgba(38, 72, 63, 0.16);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.06);
    color: var(--hgt-home-forest);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

body.hgt-my-plan-style-page .hgt-package-availability-status[hidden] {
    display: none;
}

body.hgt-my-plan-style-page .hgt-package-availability-status[data-state="error"] {
    border-color: rgba(179, 55, 55, 0.22);
    background: rgba(179, 55, 55, 0.07);
    color: #9b2f2f;
}

body.hgt-my-plan-style-page .hgt-package-availability-status[data-state="checking"] {
    border-color: rgba(184, 138, 69, 0.24);
    background: rgba(184, 138, 69, 0.08);
    color: var(--hgt-home-clay);
}

body.hgt-my-plan-style-page .hgt-my-plan-form.is-readonly input,
body.hgt-my-plan-style-page .hgt-my-plan-form.is-readonly select,
body.hgt-my-plan-style-page .hgt-my-plan-form.is-readonly textarea {
    background: rgba(55, 47, 37, 0.045);
    color: var(--hgt-home-muted);
}

body.hgt-my-plan-style-page .hgt-inline-check {
    display: flex;
    gap: 10px;
    align-items: center;
    color: var(--hgt-home-ink);
}

body.hgt-my-plan-style-page .hgt-inline-check input {
    width: auto;
    min-height: 0;
}

body.hgt-my-plan-style-page .hgt-my-plan-modal {
    background: rgba(22, 19, 15, 0.64);
}

body.hgt-my-plan-style-page .hgt-my-plan-modal-panel {
    background: var(--hgt-home-panel);
}

body.hgt-my-plan-style-page .hgt-my-plan-modal-close {
    border-color: var(--hgt-home-forest);
    border-radius: 50%;
    background: var(--hgt-home-forest);
}

body.hgt-my-plan-style-page .hgt-package-change-panel {
    display: grid;
    gap: 14px;
    padding: 16px;
    border: 1px solid rgba(184, 138, 69, 0.28);
    border-radius: 8px;
    background: rgba(184, 138, 69, 0.07);
}

body.hgt-my-plan-style-page .hgt-package-change-panel[hidden] {
    display: none;
}

body.hgt-my-plan-style-page .hgt-policy-check {
    align-items: flex-start;
    padding: 12px;
    border: 1px solid rgba(38, 72, 63, 0.16);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.72);
}

body.hgt-my-plan-style-page .hgt-policy-check a {
    color: var(--hgt-home-forest);
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.hgt-my-plan-style-page .hgt-policy-note {
    margin: 0;
    color: var(--hgt-home-clay);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

body.hgt-my-plan-style-page .hgt-policy-note[data-state="ready"] {
    color: var(--hgt-home-forest);
}

body.hgt-my-plan-style-page .hgt-my-plan-form-message {
    padding: 12px 14px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.06);
    color: var(--hgt-home-forest);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.45;
}

body.hgt-my-plan-style-page .hgt-my-plan-form-message[hidden] {
    display: none;
}

body.hgt-my-plan-style-page .hgt-my-plan-form-message[data-state="error"] {
    border-color: rgba(179, 55, 55, 0.22);
    background: rgba(179, 55, 55, 0.07);
    color: #9b2f2f;
}

body.hgt-my-plan-style-page .hgt-my-plan-form-message[data-state="saving"] {
    border-color: rgba(184, 138, 69, 0.24);
    background: rgba(184, 138, 69, 0.08);
    color: var(--hgt-home-clay);
}

body.hgt-my-plan-style-page .hgt-my-plan-form-message[data-state="success"] {
    border-color: rgba(38, 72, 63, 0.2);
    background: rgba(38, 72, 63, 0.08);
    color: var(--hgt-home-forest);
}

body.hgt-my-plan-style-page .hgt-policy-modal {
    z-index: 200120;
    background: rgba(22, 19, 15, 0.72);
}

body.hgt-my-plan-style-page .hgt-policy-modal-panel {
    width: min(760px, 100%);
    overflow: hidden;
    display: grid;
    gap: 18px;
}

body.hgt-my-plan-style-page .hgt-policy-scroll {
    max-height: min(54vh, 460px);
    overflow: auto;
    padding: 18px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.76);
    color: var(--hgt-home-muted);
    line-height: 1.6;
}

body.hgt-my-plan-style-page .hgt-policy-scroll p {
    margin: 0 0 14px;
}

body.hgt-my-plan-style-page .hgt-policy-scroll p:last-child {
    margin-bottom: 0;
    color: var(--hgt-home-ink);
    font-weight: 800;
}

body.hgt-my-plan-style-page .hgt-policy-modal-panel .button:disabled {
    cursor: not-allowed;
    opacity: 0.48;
}

@media (max-width: 1024px) {
    body.hgt-profile-style-page .main-nav.mobile-on {
        background: rgba(255, 252, 245, 0.98);
    }

    body.hgt-profile-style-page .main-nav.mobile-on .full-wrapper {
        min-height: 74px;
        margin-right: 0;
        margin-left: 0;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .nav-logo-wrap {
        padding-left: 20px;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .hgt-logo-text {
        height: 74px;
        font-size: 21px;
        line-height: 74px;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .inner-nav.desktop-nav.hgt-nav-shell {
        width: 100%;
        max-height: calc(100vh - 74px);
        overflow-y: auto;
        border-top: 1px solid rgba(55, 47, 37, 0.12);
        background: rgba(255, 252, 245, 0.99);
        box-shadow: 0 24px 42px rgba(34, 28, 20, 0.14);
    }

    body.hgt-profile-style-page .main-nav.mobile-on .mobile-nav {
        width: 74px;
        height: 74px;
        display: grid;
        place-items: center;
        border-left: 1px solid rgba(55, 47, 37, 0.12);
        color: var(--hgt-home-forest);
    }

    body.hgt-profile-style-page .main-nav.mobile-on .hgt-primary-nav,
    body.hgt-profile-style-page .main-nav.mobile-on .hgt-utility-nav {
        float: none !important;
        width: 100% !important;
        background: transparent;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .desktop-nav.hgt-nav-shell > ul.hgt-primary-nav,
    body.hgt-profile-style-page .main-nav.mobile-on .desktop-nav.hgt-nav-shell > ul.hgt-utility-nav {
        display: block !important;
        width: 100% !important;
        max-width: none;
        margin: 0;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .inner-nav ul li {
        margin-left: 0;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .inner-nav ul li a,
    body.hgt-profile-style-page .main-nav.mobile-on .hgt-menu-button,
    body.hgt-profile-style-page .main-nav.mobile-on .hgt-nav-search {
        min-height: 50px;
        padding: 15px 20px;
        border: 0;
        border-bottom: 1px solid rgba(55, 47, 37, 0.1);
        background: transparent;
        color: #2f281f !important;
        box-shadow: none;
        font-size: 12px;
        letter-spacing: 0.1em;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .hgt-nav-search {
        width: 100%;
        height: auto;
        display: flex;
        justify-content: flex-start;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .mn-sub {
        width: 100%;
        padding: 4px 0 10px;
        border: 0;
        border-radius: 0;
        background: rgba(248, 245, 239, 0.96);
        box-shadow: inset 0 10px 20px rgba(34, 28, 20, 0.04);
        box-sizing: border-box;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .mn-sub li a,
    body.hgt-profile-style-page .main-nav.mobile-on .mn-sub .hgt-menu-button {
        min-height: 44px;
        padding: 12px 20px 12px 46px;
        border-bottom: 0;
        color: #40382e !important;
        font-size: 12px;
        letter-spacing: 0.02em;
        text-transform: none;
    }

    body.hgt-profile-style-page .main-nav.mobile-on .hgt-mobile-bars span {
        height: 2px;
        border-radius: 99px;
        background: currentColor;
    }
}

@media (max-width: 1024px) {
    body.hgt-my-plan-style-page .main-nav.mobile-on {
        background: rgba(255, 252, 245, 0.98);
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .full-wrapper {
        min-height: 74px;
        margin-right: 0;
        margin-left: 0;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .nav-logo-wrap {
        padding-left: 20px;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .hgt-logo-text {
        height: 74px;
        font-size: 21px;
        line-height: 74px;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .inner-nav.desktop-nav.hgt-nav-shell {
        width: 100%;
        max-height: calc(100vh - 74px);
        overflow-y: auto;
        border-top: 1px solid rgba(55, 47, 37, 0.12);
        background: rgba(255, 252, 245, 0.99);
        box-shadow: 0 24px 42px rgba(34, 28, 20, 0.14);
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .mobile-nav {
        width: 74px;
        height: 74px;
        display: grid;
        place-items: center;
        border-left: 1px solid rgba(55, 47, 37, 0.12);
        color: var(--hgt-home-forest);
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .hgt-primary-nav,
    body.hgt-my-plan-style-page .main-nav.mobile-on .hgt-utility-nav {
        float: none !important;
        width: 100% !important;
        background: transparent;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .desktop-nav.hgt-nav-shell > ul.hgt-primary-nav,
    body.hgt-my-plan-style-page .main-nav.mobile-on .desktop-nav.hgt-nav-shell > ul.hgt-utility-nav {
        display: block !important;
        width: 100% !important;
        max-width: none;
        margin: 0;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .inner-nav ul li {
        margin-left: 0;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .inner-nav ul li a,
    body.hgt-my-plan-style-page .main-nav.mobile-on .hgt-menu-button,
    body.hgt-my-plan-style-page .main-nav.mobile-on .hgt-nav-search {
        min-height: 50px;
        padding: 15px 20px;
        border: 0;
        border-bottom: 1px solid rgba(55, 47, 37, 0.1);
        background: transparent;
        color: #2f281f !important;
        box-shadow: none;
        font-size: 12px;
        letter-spacing: 0.1em;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .hgt-nav-search {
        width: 100%;
        height: auto;
        display: flex;
        justify-content: flex-start;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .mn-sub {
        width: 100%;
        padding: 4px 0 10px;
        border: 0;
        border-radius: 0;
        background: rgba(248, 245, 239, 0.96);
        box-shadow: inset 0 10px 20px rgba(34, 28, 20, 0.04);
        box-sizing: border-box;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .mn-sub li a,
    body.hgt-my-plan-style-page .main-nav.mobile-on .mn-sub .hgt-menu-button {
        min-height: 44px;
        padding: 12px 20px 12px 46px;
        border-bottom: 0;
        color: #40382e !important;
        font-size: 12px;
        letter-spacing: 0.02em;
        text-transform: none;
    }

    body.hgt-my-plan-style-page .main-nav.mobile-on .hgt-mobile-bars span {
        height: 2px;
        border-radius: 99px;
        background: currentColor;
    }
}

@media (max-width: 767px) {
    body.hgt-profile-style-page .hgt-profile-hero-minimal {
        padding: 104px 0 30px;
    }

    body.hgt-profile-style-page .hgt-profile-hero-minimal h1 {
        font-size: 40px;
    }

    body.hgt-profile-style-page .hgt-profile-readiness-card {
        max-width: none;
    }

    body.hgt-profile-style-page .hgt-profile-panel .hgt-panel-body,
    body.hgt-profile-style-page .hgt-profile-side-card .hgt-panel-body,
    body.hgt-profile-style-page .hgt-profile-ai-card .hgt-panel-body {
        padding: 20px;
    }

    body.hgt-profile-style-page .hgt-profile-panel-head {
        flex-direction: column;
        gap: 10px;
    }

    body.hgt-profile-style-page .hgt-profile-panel-head p {
        max-width: none;
    }

    body.hgt-profile-style-page .hgt-profile-actions .button {
        width: 100%;
    }
}

@media (max-width: 767px) {
    body.hgt-my-plan-style-page .hgt-my-plan-content {
        padding: 96px 0 70px;
    }

    body.hgt-my-plan-style-page .hgt-section-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    body.hgt-my-plan-style-page .hgt-section-head h1 {
        font-size: 40px;
    }

    body.hgt-my-plan-style-page .hgt-minia-side-card,
    body.hgt-my-plan-style-page .hgt-minia-calendar-card,
    body.hgt-my-plan-style-page .hgt-google-calendar-card,
    body.hgt-my-plan-style-page .hgt-my-plan-modal-panel {
        padding: 20px;
    }

    body.hgt-my-plan-style-page #touristBookingCalendar .fc-toolbar-title {
        font-size: 24px;
    }
}

body.activities-page .hgt-activity-hero-stats span,
body.activities-page .hgt-activity-hero-chips span,
body.activities-page .hgt-activity-mini-tags span,
body.activities-page .hgt-tag-row span,
body.activities-page .hgt-booking-mini-proof span,
body.activities-page .hgt-guide-tags em {
    border: 1px solid rgba(38, 72, 63, 0.16);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.05);
    color: var(--hgt-home-forest);
    font-weight: 700;
}

body.activities-page .hgt-activity-hero-stats strong,
body.activities-page .hgt-activity-proof-grid strong,
body.activities-page .hgt-activity-detail-facts strong,
body.activities-page .hgt-activity-logistics-grid strong,
body.activities-page .hgt-stripe-summary b,
body.activities-page .hgt-stripe-total strong,
body.activities-page .hgt-stripe-summary em {
    color: var(--hgt-home-ink);
}

body.activities-page .hgt-activity-search,
body.activities-page .hgt-category-rail,
body.activities-page .hgt-subcategory-rail {
    color: var(--hgt-home-ink);
}

body.activities-page .hgt-search-inline input,
body.activities-page .hgt-related-search-form input,
body.activities-page .hgt-form input,
body.activities-page .hgt-form select,
body.activities-page .hgt-form textarea {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.activities-page .hgt-search-inline input:focus,
body.activities-page .hgt-related-search-form input:focus,
body.activities-page .hgt-form input:focus,
body.activities-page .hgt-form select:focus,
body.activities-page .hgt-form textarea:focus {
    border-color: rgba(184, 138, 69, 0.65);
    box-shadow: 0 0 0 3px rgba(184, 138, 69, 0.14);
}

body.activities-page .hgt-category-rail a {
    border-color: rgba(38, 72, 63, 0.18);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.82);
    color: var(--hgt-home-forest);
    font-weight: 700;
    letter-spacing: 0.08em;
}

body.activities-page .hgt-category-rail a:hover,
body.activities-page .hgt-category-rail a.active {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest);
    color: #fff;
}

body.activities-page .hgt-activity-image-card,
body.activities-page .hgt-activity-list-card,
body.activities-page .hgt-experience-panel,
body.activities-page .hgt-panel,
body.activities-page .hgt-related-search-form,
body.activities-page .hgt-related-card,
body.activities-page .hgt-service-detail-card,
body.activities-page .hgt-activity-logistics-grid article,
body.activities-page .hgt-activity-flow article,
body.activities-page .hgt-activity-proof-grid article,
body.activities-page .hgt-activity-detail-facts div,
body.activities-page .hgt-activity-note-list article,
body.activities-page .hgt-activity-insight-band article,
body.activities-page .hgt-availability-panel,
body.activities-page .hgt-stripe-summary,
body.activities-page .hgt-payment-method-note,
body.activities-page .hgt-booking-resume,
body.activities-page .hgt-related-cart,
body.activities-page .hgt-guide-option {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.activities-page .hgt-activity-image-card {
    box-shadow: 0 16px 42px rgba(52, 40, 24, 0.07);
}

body.activities-page .hgt-private-tour-card {
    border-color: rgba(184, 138, 69, 0.26);
}

body.activities-page .hgt-private-card-signals {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

body.activities-page .hgt-private-card-signals span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 6px 9px;
    border: 1px solid rgba(184, 138, 69, 0.24);
    border-radius: 999px;
    background: rgba(184, 138, 69, 0.08);
    color: var(--hgt-home-clay);
    font-size: 10px;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

body.activities-page .hgt-activity-card-media {
    background: #ece5da;
}

body.activities-page .hgt-activity-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(7, 9, 9, 0) 36%, rgba(7, 9, 9, 0.72) 100%);
    pointer-events: none;
}

body.activities-page .hgt-activity-card-media span {
    z-index: 2;
    background: transparent;
    color: #fff;
    font-weight: 800;
    letter-spacing: 0.12em;
}

body.activities-page .hgt-activity-card-highlights span {
    color: #5e675f;
}

body.activities-page .hgt-activity-card-highlights span + span {
    color: var(--hgt-home-clay);
}

body.activities-page .hgt-activity-price {
    border-color: var(--hgt-home-line);
}

body.activities-page .hgt-activity-price strong,
body.activities-page .hgt-package-price strong,
body.activities-page .hgt-related-card > strong {
    color: var(--hgt-home-ink);
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 800;
    text-transform: none;
    letter-spacing: 0;
}

body.activities-page .hgt-favorite-control {
    border-color: rgba(55, 47, 37, 0.16);
    background: rgba(255, 253, 248, 0.94);
    color: var(--hgt-home-forest);
    box-shadow: 0 12px 24px rgba(52, 40, 24, 0.1);
}

body.activities-page .hgt-favorite-control:hover,
body.activities-page .hgt-favorite-control:focus-visible,
body.activities-page .hgt-favorite-control.is-active {
    border-color: var(--hgt-home-clay);
    background: var(--hgt-home-clay);
    color: #fff;
}

body.activities-page .hgt-activity-photo-rail img,
body.activities-page .hgt-related-card img {
    box-shadow: 0 16px 42px rgba(52, 40, 24, 0.08);
}

body.activities-page .hgt-service-detail-card.is-highlight,
body.activities-page .hgt-activity-proof-grid article:first-child,
body.activities-page .hgt-availability-panel.success,
body.activities-page .hgt-availability-panel.is-available {
    border-color: rgba(38, 72, 63, 0.22);
    background: rgba(38, 72, 63, 0.07);
}

body.activities-page .hgt-service-detail-card.is-highlight h3,
body.activities-page .hgt-activity-proof-grid article:first-child strong,
body.activities-page .hgt-availability-panel.success,
body.activities-page .hgt-availability-panel.is-available {
    color: var(--hgt-home-forest);
}

body.activities-page .hgt-clean-list li::before,
body.activities-page .hgt-activity-flow article::before {
    background: var(--hgt-home-gold);
    color: var(--hgt-home-gold);
}

body.activities-page .hgt-activity-ai-signals {
    border-color: rgba(38, 72, 63, 0.22) !important;
    background: var(--hgt-home-forest) !important;
    color: #fff;
}

body.activities-page .hgt-activity-ai-signals span,
body.activities-page .hgt-activity-signal-row em {
    color: rgba(255, 255, 255, 0.86);
}

body.activities-page .hgt-activity-signal-row em {
    border-color: rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.08);
}

body.activities-page .hgt-guide-option.selected {
    border-color: rgba(184, 138, 69, 0.62);
    background: rgba(184, 138, 69, 0.1);
}

body.activities-page .breadcrumbs {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.88);
}

body.activities-page .breadcrumbs a,
body.activities-page .breadcrumbs span {
    color: var(--hgt-home-muted);
}

body.activities-page .breadcrumbs a:hover {
    color: var(--hgt-home-forest);
}

@media (max-width: 767px) {
    body.activities-page .hgt-activity-visual-hero,
    body.activities-page .hgt-activity-detail-hero {
        background:
            radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
            linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%) !important;
        background-image:
            radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
            linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%) !important;
    }

    body.activities-page .hgt-floating-chat {
        right: 18px;
        bottom: 96px;
        width: 52px;
        height: 52px;
    }
}

body.activities-page .hgt-private-tour-overview,
body.activities-page .hgt-private-tour-itinerary,
body.activities-page .hgt-private-tour-reviews,
body.activities-page .hgt-klook-offers,
body.activities-page .hgt-klook-package-section,
body.activities-page .hgt-klook-package-details,
body.activities-page .hgt-klook-often-booked,
body.activities-page .hgt-klook-location,
body.activities-page .hgt-klook-contact,
body.activities-page .hgt-klook-faqs {
    gap: 26px;
}

body.activities-page .hgt-klook-hidden-flow {
    display: none;
}

body.activities-page .hgt-klook-offer-grid,
body.activities-page .hgt-klook-related-grid,
body.activities-page .hgt-klook-expect-gallery,
body.activities-page .hgt-klook-package-detail-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

body.activities-page .hgt-klook-offer-grid article,
body.activities-page .hgt-klook-related-grid article,
body.activities-page .hgt-klook-package-detail-list article,
body.activities-page .hgt-klook-expect-gallery figure,
body.activities-page .hgt-klook-review-insights article,
body.activities-page .hgt-klook-traveler-reviews article,
body.activities-page .hgt-klook-faq-list details {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.9);
    box-shadow: 0 14px 34px rgba(52, 40, 24, 0.05);
}

body.activities-page .hgt-klook-offer-grid span,
body.activities-page .hgt-klook-related-grid span,
body.activities-page .hgt-klook-package-detail-list span,
body.activities-page .hgt-klook-review-overall span,
body.activities-page .hgt-klook-review-insights span,
body.activities-page .hgt-klook-traveler-reviews span,
body.activities-page .hgt-klook-traveler-reviews em {
    color: var(--hgt-home-gold);
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.activities-page .hgt-klook-offer-grid h3,
body.activities-page .hgt-klook-related-grid h3,
body.activities-page .hgt-klook-package-detail-list h3,
body.activities-page .hgt-klook-review-insights h3,
body.activities-page .hgt-klook-traveler-reviews strong {
    margin: 8px 0;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.18;
}

body.activities-page .hgt-klook-offer-grid p,
body.activities-page .hgt-klook-related-grid p,
body.activities-page .hgt-klook-package-detail-list p,
body.activities-page .hgt-klook-review-insights p,
body.activities-page .hgt-klook-expect-gallery figcaption span,
body.activities-page .hgt-klook-traveler-reviews p,
body.activities-page .hgt-klook-faq-list p {
    margin: 0;
    color: var(--hgt-home-muted);
    line-height: 1.65;
}

body.activities-page .hgt-klook-offer-grid strong,
body.activities-page .hgt-klook-related-grid strong,
body.activities-page .hgt-klook-package-detail-list strong,
body.activities-page .hgt-klook-review-insights strong {
    color: var(--hgt-home-clay);
    font-weight: 800;
}

body.activities-page .hgt-klook-package-detail-list article,
body.activities-page .hgt-klook-review-insights article {
    display: grid;
    gap: 10px;
}

body.activities-page .hgt-klook-package-detail-list article div {
    display: grid;
    gap: 6px;
}

body.activities-page .hgt-klook-package-detail-list em {
    color: var(--hgt-home-muted);
    font-style: normal;
    line-height: 1.55;
}

body.activities-page .hgt-klook-review-insights {
    display: grid;
    gap: 12px;
}

body.activities-page .hgt-klook-related-grid .button {
    width: max-content;
    min-width: 0;
    margin-top: 12px;
}

body.activities-page .hgt-klook-expect-gallery figure {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

body.activities-page .hgt-klook-expect-gallery img {
    width: 100%;
    aspect-ratio: 16 / 10;
    display: block;
    object-fit: cover;
}

body.activities-page .hgt-klook-expect-gallery figcaption {
    display: grid;
    gap: 6px;
    padding: 0 18px 18px;
}

body.activities-page .hgt-klook-expect-gallery figcaption strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
    font-weight: 400;
}

body.activities-page .hgt-klook-review-overall {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    align-items: baseline;
    padding: 18px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.06);
}

body.activities-page .hgt-klook-review-overall strong {
    color: var(--hgt-home-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 44px;
    font-weight: 400;
    line-height: 1;
}

body.activities-page .hgt-klook-review-overall em {
    color: var(--hgt-home-clay);
    font-style: normal;
    font-weight: 800;
}

body.activities-page .hgt-klook-traveler-reviews,
body.activities-page .hgt-klook-faq-list {
    display: grid;
    gap: 12px;
}

body.activities-page .hgt-klook-traveler-reviews article {
    display: grid;
    gap: 10px;
}

body.activities-page .hgt-klook-faq-list summary {
    cursor: pointer;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
}

body.activities-page .hgt-klook-package-section #activity-options {
    display: block;
    width: 100%;
}

body.activities-page .hgt-klook-package-section #activity-options .hgt-panel {
    margin-top: 8px;
}

body.activities-page .hgt-detail-main > .hgt-related-services {
    padding: 0;
    background: transparent;
}

body.activities-page .hgt-detail-main > .hgt-related-services .wrap,
body.activities-page .hgt-detail-main > .hgt-related-services .wrap_float {
    width: 100%;
    max-width: none;
}

body.activities-page .hgt-private-tour-summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(180px, 230px);
    gap: 24px;
    align-items: start;
}

body.activities-page .hgt-private-tour-score {
    display: grid;
    gap: 6px;
    padding: 20px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.06);
}

body.activities-page .hgt-private-tour-score strong {
    color: var(--hgt-home-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 42px;
    font-weight: 400;
    line-height: 1;
}

body.activities-page .hgt-private-tour-score span,
body.activities-page .hgt-private-tour-score em {
    color: var(--hgt-home-muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.4;
}

body.activities-page .hgt-private-tour-score em {
    color: var(--hgt-home-clay);
    font-weight: 800;
}

body.activities-page .hgt-private-tour-badges {
    gap: 8px;
}

body.activities-page .hgt-private-tour-highlights,
body.activities-page .hgt-private-package-grid,
body.activities-page .hgt-private-review-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

body.activities-page .hgt-private-tour-highlights article,
body.activities-page .hgt-private-package-grid article,
body.activities-page .hgt-private-review-grid article {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.9);
    box-shadow: 0 14px 34px rgba(52, 40, 24, 0.05);
}

body.activities-page .hgt-private-tour-highlights article {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}

body.activities-page .hgt-private-tour-highlights article > span {
    width: 11px;
    height: 11px;
    margin-top: 0.45em;
    border-radius: 50%;
    background: var(--hgt-home-gold);
}

body.activities-page .hgt-private-tour-highlights p,
body.activities-page .hgt-private-package-grid p,
body.activities-page .hgt-private-review-grid p {
    margin: 0;
    color: var(--hgt-home-muted);
    line-height: 1.65;
}

body.activities-page .hgt-private-package-grid article {
    display: grid;
    gap: 9px;
}

body.activities-page .hgt-private-package-grid span,
body.activities-page .hgt-private-review-grid span,
body.activities-page .hgt-private-itinerary-list article > span {
    color: var(--hgt-home-gold);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.activities-page .hgt-private-package-grid h3,
body.activities-page .hgt-private-itinerary-list h3 {
    margin: 0;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.18;
}

body.activities-page .hgt-private-package-grid strong {
    color: var(--hgt-home-forest);
    font-size: 13px;
    line-height: 1.4;
}

body.activities-page .hgt-private-package-grid em {
    align-self: end;
    color: var(--hgt-home-clay);
    font-style: normal;
    font-weight: 800;
}

body.activities-page .hgt-private-itinerary-list {
    display: grid;
    gap: 1px;
    overflow: hidden;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-line);
}

body.activities-page .hgt-private-itinerary-list article {
    display: grid;
    grid-template-columns: minmax(94px, 0.22fr) minmax(0, 1fr);
    gap: 18px;
    padding: 18px 20px;
    background: rgba(255, 253, 248, 0.94);
}

body.activities-page .hgt-private-itinerary-list p {
    margin: 7px 0 0;
    color: var(--hgt-home-muted);
    line-height: 1.65;
}

body.activities-page .hgt-private-review-grid strong {
    display: block;
    margin: 8px 0;
    color: var(--hgt-home-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 30px;
    font-weight: 400;
    line-height: 1;
}

/* FAQ page alignment with the Activities storefront theme. */
body.faq-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.faq-page .page-loader {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
}

body.faq-page .hgt-main-nav {
    border-bottom-color: rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.faq-page .hgt-logo-text {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0.045em;
}

body.faq-page .hgt-logo-text:hover {
    color: var(--hgt-home-ink);
}

body.faq-page .hgt-logo-text em,
body.faq-page .hgt-main-nav .hgt-nav-icon,
body.faq-page .hgt-eyebrow {
    color: var(--hgt-home-gold);
}

body.faq-page .hgt-main-nav .inner-nav ul li a,
body.faq-page .hgt-main-nav .hgt-menu-button {
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.faq-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.faq-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.faq-page .hgt-main-nav .hgt-menu-button:hover {
    color: var(--hgt-home-forest) !important;
}

body.faq-page .hgt-main-nav .mn-sub {
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.faq-page .hgt-main-nav .mn-sub li a,
body.faq-page .hgt-main-nav .mn-sub .hgt-menu-button {
    color: #2f281f !important;
}

body.faq-page .hgt-page,
body.faq-page .hgt-section {
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.faq-page .page_head {
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%);
    color: var(--hgt-home-ink);
}

body.faq-page .page_head .title,
body.faq-page .hgt-section-head h2,
body.faq-page .hgt-panel h2,
body.faq-page .hgt-panel h3 {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.faq-page .page_head .subtitle,
body.faq-page .hgt-panel-body p {
    color: var(--hgt-home-muted);
}

body.faq-page .hgt-panel {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.faq-page .hgt-panel-body {
    color: var(--hgt-home-muted);
}

body.faq-page .hgt-panel-body h3 {
    margin-bottom: 0;
    font-size: 22px;
    line-height: 1.25;
}

body.faq-page .hgt-panel-body p {
    margin: 0;
    line-height: 1.75;
}

/* Community page completion and Activities storefront theme alignment. */
body.community-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.community-page .page-loader {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
}

body.community-page .hgt-main-nav {
    border-bottom-color: rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.community-page .hgt-logo-text {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0.045em;
}

body.community-page .hgt-logo-text:hover {
    color: var(--hgt-home-ink);
}

body.community-page .hgt-logo-text em,
body.community-page .hgt-main-nav .hgt-nav-icon,
body.community-page .hgt-eyebrow,
body.community-page .hgt-community-stars {
    color: var(--hgt-home-gold);
}

body.community-page .hgt-main-nav .inner-nav ul li a,
body.community-page .hgt-main-nav .hgt-menu-button {
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.community-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.community-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.community-page .hgt-main-nav .hgt-menu-button:hover {
    color: var(--hgt-home-forest) !important;
}

body.community-page .hgt-main-nav .mn-sub {
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.community-page .hgt-main-nav .mn-sub li a,
body.community-page .hgt-main-nav .mn-sub .hgt-menu-button {
    color: #2f281f !important;
}

body.community-page .hgt-page,
body.community-page .hgt-section {
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.community-page .page_head {
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%);
    color: var(--hgt-home-ink);
}

body.community-page .page_head .title,
body.community-page .hgt-section-head h2,
body.community-page .hgt-panel h2,
body.community-page .hgt-panel h3,
body.community-page .hgt-community-stat strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.community-page .page_head .subtitle,
body.community-page .hgt-section-head p:not(.hgt-eyebrow),
body.community-page .hgt-panel-body p,
body.community-page .hgt-text-muted {
    color: var(--hgt-home-muted) !important;
}

body.community-page .hgt-panel,
body.community-page .hgt-community-stat {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.community-page .hgt-community-main {
    display: grid;
    gap: 26px;
}

body.community-page .hgt-community-overview {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

body.community-page .hgt-community-stat {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
}

body.community-page .hgt-community-stat strong {
    display: block;
    font-size: 34px;
    line-height: 1;
}

body.community-page .hgt-community-stat span,
body.community-page .hgt-community-card-meta span,
body.community-page .hgt-community-response span,
body.community-page .hgt-community-byline span {
    color: var(--hgt-home-forest);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

body.community-page .hgt-community-feed-block {
    display: grid;
    gap: 14px;
}

body.community-page .hgt-community-feed-block .hgt-section-head {
    margin: 8px 0 4px;
}

body.community-page .hgt-community-feed-block .hgt-section-head h2 {
    margin-bottom: 8px;
}

body.community-page .hgt-community-card .hgt-panel-body {
    display: grid;
    gap: 12px;
}

body.community-page .hgt-community-card h3 {
    margin: 0;
    font-size: 24px;
    line-height: 1.22;
}

body.community-page .hgt-community-card p {
    margin: 0;
    line-height: 1.72;
}

body.community-page .hgt-community-card-meta,
body.community-page .hgt-community-byline {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

body.community-page .hgt-community-card-meta span,
body.community-page .hgt-community-byline span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 6px 9px;
    border: 1px solid rgba(38, 72, 63, 0.14);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.05);
}

body.community-page .hgt-community-card-meta .hgt-community-stars {
    border-color: rgba(184, 138, 69, 0.26);
    background: rgba(184, 138, 69, 0.08);
    color: var(--hgt-home-gold);
    letter-spacing: 0.05em;
}

body.community-page .hgt-community-target {
    color: var(--hgt-home-clay) !important;
    font-weight: 800;
}

body.community-page .hgt-community-response {
    display: grid;
    gap: 6px;
    padding: 14px 16px;
    border-left: 3px solid var(--hgt-home-gold);
    background: rgba(184, 138, 69, 0.08);
}

body.community-page .hgt-community-replies {
    display: grid;
    gap: 8px;
    padding-top: 4px;
}

body.community-page .hgt-community-replies article {
    display: grid;
    gap: 5px;
    padding: 12px 14px;
    border-left: 2px solid rgba(38, 72, 63, 0.2);
    background: rgba(38, 72, 63, 0.045);
}

body.community-page .hgt-community-replies strong {
    color: var(--hgt-home-forest);
    font-size: 12px;
}

body.community-page .hgt-community-reply-form {
    padding-top: 4px;
}

body.community-page .hgt-community-sidebar {
    position: sticky;
    top: 96px;
}

body.community-page .hgt-community-checklist {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.community-page .hgt-community-checklist li {
    position: relative;
    padding-left: 22px;
    color: var(--hgt-home-muted);
    line-height: 1.6;
}

body.community-page .hgt-community-checklist li::before {
    position: absolute;
    top: 0.62em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--hgt-home-gold);
    content: "";
}

body.community-page .hgt-community-action-panel .hgt-form {
    gap: 12px;
}

body.community-page .hgt-form label {
    color: var(--hgt-home-ink);
    font-weight: 700;
}

body.community-page .hgt-form input,
body.community-page .hgt-form select,
body.community-page .hgt-form textarea {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.community-page .hgt-form input:focus,
body.community-page .hgt-form select:focus,
body.community-page .hgt-form textarea:focus {
    border-color: rgba(184, 138, 69, 0.65);
    box-shadow: 0 0 0 3px rgba(184, 138, 69, 0.14);
}

body.community-page .button {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest) !important;
    color: #fff !important;
}

body.community-page .button.ghost {
    border-color: rgba(38, 72, 63, 0.3);
    background: rgba(38, 72, 63, 0.06) !important;
    color: var(--hgt-home-forest) !important;
}

body.community-page .button:hover,
body.community-page .button.ghost:hover {
    border-color: #16130f;
    background: #16130f !important;
    color: #fff !important;
}

body.community-page .hgt-community-empty .hgt-panel-body {
    display: grid;
    gap: 8px;
}

/* Insurance page completion and Activities storefront theme alignment. */
body.insurance-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.insurance-page .page-loader {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
}

body.insurance-page .hgt-main-nav {
    border-bottom-color: rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.insurance-page .hgt-logo-text {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0.045em;
}

body.insurance-page .hgt-logo-text:hover {
    color: var(--hgt-home-ink);
}

body.insurance-page .hgt-logo-text em,
body.insurance-page .hgt-main-nav .hgt-nav-icon,
body.insurance-page .hgt-eyebrow {
    color: var(--hgt-home-gold);
}

body.insurance-page .hgt-main-nav .inner-nav ul li a,
body.insurance-page .hgt-main-nav .hgt-menu-button {
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.insurance-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.insurance-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.insurance-page .hgt-main-nav .hgt-menu-button:hover {
    color: var(--hgt-home-forest) !important;
}

body.insurance-page .hgt-main-nav .mn-sub {
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.insurance-page .hgt-main-nav .mn-sub li a,
body.insurance-page .hgt-main-nav .mn-sub .hgt-menu-button {
    color: #2f281f !important;
}

body.insurance-page .hgt-page,
body.insurance-page .hgt-section {
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.insurance-page .hgt-insurance-hero {
    padding: 118px 0 64px;
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%);
    color: var(--hgt-home-ink);
}

body.insurance-page .hgt-insurance-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
    gap: 24px;
    align-items: start;
}

body.insurance-page .hgt-insurance-hero-copy {
    max-width: 760px;
}

body.insurance-page .hgt-insurance-hero h1,
body.insurance-page .hgt-section-head h2,
body.insurance-page .hgt-insurance-card h2,
body.insurance-page .hgt-insurance-card h3,
body.insurance-page .hgt-insurance-guide-card h3,
body.insurance-page .hgt-insurance-empty h3,
body.insurance-page .hgt-insurance-check-panel h2,
body.insurance-page .hgt-insurance-summary-card strong,
body.insurance-page .hgt-insurance-profile-strip strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.insurance-page .hgt-insurance-hero h1 {
    max-width: 720px;
    margin: 0 0 18px;
    font-size: clamp(44px, 5vw, 70px);
    line-height: 1.02;
}

body.insurance-page .hgt-insurance-hero p,
body.insurance-page .hgt-section-head p:not(.hgt-eyebrow),
body.insurance-page .hgt-insurance-card p,
body.insurance-page .hgt-insurance-guide-card p,
body.insurance-page .hgt-insurance-check-panel p,
body.insurance-page .hgt-insurance-empty p {
    color: var(--hgt-home-muted) !important;
}

body.insurance-page .hgt-insurance-summary-card,
body.insurance-page .hgt-insurance-search,
body.insurance-page .hgt-insurance-profile-strip article,
body.insurance-page .hgt-insurance-guide-card,
body.insurance-page .hgt-insurance-card,
body.insurance-page .hgt-insurance-empty,
body.insurance-page .hgt-insurance-check-panel {
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.insurance-page .hgt-insurance-summary-card {
    display: grid;
    gap: 12px;
    padding: 24px;
}

body.insurance-page .hgt-insurance-summary-card > span,
body.insurance-page .hgt-insurance-summary-score small,
body.insurance-page .hgt-insurance-profile-strip span,
body.insurance-page .hgt-insurance-guide-card span,
body.insurance-page .hgt-insurance-facts small,
body.insurance-page .hgt-insurance-handoff span {
    color: var(--hgt-home-forest);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

body.insurance-page .hgt-insurance-summary-card strong {
    font-size: 30px;
    line-height: 1.12;
}

body.insurance-page .hgt-insurance-summary-score {
    display: flex;
    gap: 10px;
    align-items: baseline;
}

body.insurance-page .hgt-insurance-summary-score b {
    color: var(--hgt-home-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 44px;
    font-weight: 400;
    line-height: 1;
}

body.insurance-page .hgt-insurance-search {
    grid-column: 1 / -1;
    margin-top: 6px;
    padding: 20px;
}

body.insurance-page .hgt-insurance-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.insurance-page .hgt-insurance-grid label {
    color: var(--hgt-home-ink);
    font-weight: 800;
}

body.insurance-page .hgt-insurance-grid input,
body.insurance-page .hgt-insurance-grid select {
    min-height: 46px;
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.insurance-page .hgt-insurance-grid input:focus,
body.insurance-page .hgt-insurance-grid select:focus {
    border-color: rgba(184, 138, 69, 0.65);
    box-shadow: 0 0 0 3px rgba(184, 138, 69, 0.14);
}

body.insurance-page .hgt-insurance-search-actions,
body.insurance-page .hgt-insurance-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

body.insurance-page .hgt-insurance-content {
    padding-top: 44px;
}

body.insurance-page .hgt-insurance-profile-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 34px;
}

body.insurance-page .hgt-insurance-profile-strip article {
    min-width: 0;
    padding: 18px;
}

body.insurance-page .hgt-insurance-profile-strip strong {
    display: block;
    margin-bottom: 7px;
    font-size: 22px;
    line-height: 1.15;
}

body.insurance-page .hgt-insurance-guide-grid {
    gap: 12px;
}

body.insurance-page .hgt-insurance-guide-card {
    padding: 22px;
}

body.insurance-page .hgt-insurance-list {
    gap: 18px;
}

body.insurance-page .hgt-insurance-card {
    padding: 24px;
}

body.insurance-page .hgt-insurance-card.is-best-match {
    border-color: rgba(184, 138, 69, 0.34);
    background: rgba(255, 250, 240, 0.96);
}

body.insurance-page .hgt-insurance-card-top {
    align-items: flex-start;
}

body.insurance-page .hgt-insurance-provider {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
}

body.insurance-page .hgt-insurance-provider-mark {
    display: inline-grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 50%;
    background: var(--hgt-home-forest);
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 26px;
    line-height: 1;
}

body.insurance-page .hgt-insurance-score {
    min-width: 108px;
    padding: 14px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.06);
    color: var(--hgt-home-forest);
    text-align: center;
}

body.insurance-page .hgt-insurance-score strong {
    display: block;
    color: var(--hgt-home-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 1;
}

body.insurance-page .hgt-insurance-score span {
    color: var(--hgt-home-forest);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

body.insurance-page .hgt-insurance-tags span {
    border-color: rgba(38, 72, 63, 0.18);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.05);
    color: var(--hgt-home-forest);
    font-weight: 800;
}

body.insurance-page .hgt-insurance-facts {
    gap: 12px;
}

body.insurance-page .hgt-insurance-facts div {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.52);
}

body.insurance-page .hgt-insurance-facts strong {
    color: var(--hgt-home-ink);
    line-height: 1.45;
}

body.insurance-page .hgt-insurance-handoff {
    display: grid;
    gap: 7px;
    padding: 14px 16px;
    border-left: 3px solid var(--hgt-home-gold);
    background: rgba(184, 138, 69, 0.08);
}

body.insurance-page .hgt-insurance-decision-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
    gap: 18px;
    margin-top: 28px;
}

body.insurance-page .hgt-insurance-check-panel {
    padding: 24px;
}

body.insurance-page .hgt-insurance-check-panel.is-muted {
    background: rgba(38, 72, 63, 0.06);
}

body.insurance-page .hgt-insurance-check-panel ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.insurance-page .hgt-insurance-check-panel li {
    position: relative;
    padding-left: 22px;
    color: var(--hgt-home-muted);
    line-height: 1.65;
}

body.insurance-page .hgt-insurance-check-panel li::before {
    position: absolute;
    top: 0.62em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--hgt-home-gold);
    content: "";
}

body.insurance-page .button {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest) !important;
    color: #fff !important;
}

body.insurance-page .button.ghost {
    border-color: rgba(38, 72, 63, 0.3);
    background: rgba(38, 72, 63, 0.06) !important;
    color: var(--hgt-home-forest) !important;
}

body.insurance-page .button:hover,
body.insurance-page .button.ghost:hover {
    border-color: #16130f;
    background: #16130f !important;
    color: #fff !important;
}

/* Blog page completion and Activities storefront theme alignment. */
body.blog-page {
    --hgt-home-ink: #16130f;
    --hgt-home-muted: #746d63;
    --hgt-home-paper: #f8f5ef;
    --hgt-home-panel: #fffdf8;
    --hgt-home-line: rgba(55, 47, 37, 0.16);
    --hgt-home-gold: #b88a45;
    --hgt-home-forest: #26483f;
    --hgt-home-clay: #9d5f48;
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.blog-page .page-loader {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
}

body.blog-page .hgt-main-nav {
    border-bottom-color: rgba(55, 47, 37, 0.18);
    background: rgba(255, 252, 245, 0.99);
    box-shadow: 0 16px 42px rgba(34, 28, 20, 0.12);
    backdrop-filter: blur(18px);
}

body.blog-page .hgt-logo-text {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: 0.045em;
}

body.blog-page .hgt-logo-text:hover {
    color: var(--hgt-home-ink);
}

body.blog-page .hgt-logo-text em,
body.blog-page .hgt-main-nav .hgt-nav-icon,
body.blog-page .hgt-eyebrow,
body.blog-page .hgt-blog-card-footer strong,
body.blog-page .hgt-blog-featured-card span,
body.blog-page .hgt-blog-reader-path span {
    color: var(--hgt-home-gold);
}

body.blog-page .hgt-main-nav .inner-nav ul li a,
body.blog-page .hgt-main-nav .hgt-menu-button {
    color: #211b15 !important;
    font-family: "Open Sans", arial, sans-serif;
    font-weight: 700;
}

body.blog-page .hgt-main-nav .inner-nav > ul > li > a:hover,
body.blog-page .hgt-main-nav .inner-nav > ul > li > a.active,
body.blog-page .hgt-main-nav .hgt-menu-button:hover {
    color: var(--hgt-home-forest) !important;
}

body.blog-page .hgt-main-nav .mn-sub {
    background: rgba(255, 252, 245, 0.98);
    box-shadow: 0 24px 54px rgba(34, 28, 20, 0.16);
}

body.blog-page .hgt-main-nav .mn-sub li a,
body.blog-page .hgt-main-nav .mn-sub .hgt-menu-button {
    color: #2f281f !important;
}

body.blog-page .hgt-page,
body.blog-page .hgt-blog-template-page,
body.blog-page .hgt-blog-discovery,
body.blog-page .hgt-blog-single-template-page,
body.blog-page .hgt-blog-single-related {
    background: var(--hgt-home-paper);
    color: var(--hgt-home-ink);
}

body.blog-page .breadcrumbs {
    border-color: var(--hgt-home-line);
    background: rgba(255, 253, 248, 0.88);
}

body.blog-page .breadcrumbs a,
body.blog-page .breadcrumbs span {
    color: var(--hgt-home-muted);
}

body.blog-page .breadcrumbs a:hover {
    color: var(--hgt-home-forest);
}

body.blog-page .hgt-blog-hero {
    padding: 96px 0 42px;
    background:
        radial-gradient(circle at 16% 8%, rgba(184, 138, 69, 0.16), transparent 34%),
        linear-gradient(180deg, #fffaf2 0%, #f7f2e9 64%, #f8f5ef 100%);
}

body.blog-page .hgt-blog-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.82fr);
    gap: 28px;
    align-items: center;
}

body.blog-page .hgt-blog-hero-copy h1,
body.blog-page .hgt-blog-featured-card h2,
body.blog-page .hgt-blog-section-head h2,
body.blog-page .blog_item_top ._title,
body.blog-page .blog_single-head .title,
body.blog-page .title_wrap .title,
body.blog-page .blog_single-body h2,
body.blog-page .hgt-blog-reader-path h3,
body.blog-page .block_title,
body.blog-page .write_comment .title,
body.blog-page .hgt-blog-template-empty h2 {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.blog-page .hgt-blog-hero-copy h1 {
    max-width: 760px;
    margin: 0;
    font-size: clamp(42px, 6vw, 72px);
    line-height: 1.02;
}

body.blog-page .hgt-blog-hero-copy p,
body.blog-page .hgt-blog-featured-card p,
body.blog-page .hgt-blog-section-head p,
body.blog-page .blog_item_bottom .text,
body.blog-page .blog_single-body p,
body.blog-page .comment_item p,
body.blog-page .hgt-blog-reader-path p,
body.blog-page .hgt-blog-template-empty p,
body.blog-page .hgt-blog-planning-block p {
    color: var(--hgt-home-muted);
    line-height: 1.75;
}

body.blog-page .hgt-blog-hero-copy > p {
    max-width: 660px;
    margin: 18px 0 0;
    font-size: 17px;
}

body.blog-page .hgt-blog-hero-actions,
body.blog-page .hgt-blog-empty-actions,
body.blog-page .hgt-blog-planning-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

body.blog-page .button {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest) !important;
    color: #fff !important;
}

body.blog-page .button.ghost {
    border-color: rgba(38, 72, 63, 0.3);
    background: rgba(38, 72, 63, 0.06) !important;
    color: var(--hgt-home-forest) !important;
}

body.blog-page .button:hover,
body.blog-page .button.ghost:hover {
    border-color: #16130f;
    background: #16130f !important;
    color: #fff !important;
}

body.blog-page .hgt-blog-featured-card,
body.blog-page .blog_item,
body.blog-page .hgt-blog-template-empty,
body.blog-page .hgt-blog-search,
body.blog-page .hgt-blog-category-rail,
body.blog-page .hgt-blog-stats article,
body.blog-page .hgt-blog-reader-path article,
body.blog-page ._block,
body.blog-page .comment_item,
body.blog-page .write_comment {
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.blog-page .hgt-blog-featured-card {
    display: grid;
    overflow: hidden;
    color: var(--hgt-home-ink);
    text-decoration: none !important;
}

body.blog-page .hgt-blog-featured-media img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

body.blog-page .hgt-blog-featured-body {
    display: grid;
    gap: 10px;
    padding: 24px;
}

body.blog-page .hgt-blog-featured-body h2,
body.blog-page .hgt-blog-featured-body p {
    margin: 0;
}

body.blog-page .hgt-blog-featured-card span,
body.blog-page .hgt-blog-card-meta small,
body.blog-page .hgt-blog-stats span,
body.blog-page .hgt-blog-card-footer span,
body.blog-page .hgt-blog-card-footer strong,
body.blog-page .hgt-blog-article-meta span,
body.blog-page .hgt-blog-reader-path span {
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

body.blog-page .hgt-blog-card-meta,
body.blog-page .hgt-blog-card-footer,
body.blog-page .hgt-blog-article-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

body.blog-page .hgt-blog-card-meta small,
body.blog-page .hgt-blog-article-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 6px 9px;
    border: 1px solid rgba(38, 72, 63, 0.14);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.05);
    color: var(--hgt-home-forest);
}

body.blog-page .hgt-blog-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 24px;
}

body.blog-page .hgt-blog-stats article {
    padding: 18px;
}

body.blog-page .hgt-blog-stats strong {
    display: block;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 34px;
    font-weight: 400;
    line-height: 1;
}

body.blog-page .hgt-blog-stats span {
    display: block;
    margin-top: 8px;
    color: var(--hgt-home-forest);
}

body.blog-page .hgt-blog-discovery {
    padding: 42px 0 78px;
}

body.blog-page .hgt-blog-search,
body.blog-page .hgt-blog-category-rail {
    padding: 14px;
}

body.blog-page .hgt-search-inline {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 10px;
}

body.blog-page .hgt-search-inline input {
    min-height: 46px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.blog-page .hgt-search-inline input:focus {
    border-color: rgba(184, 138, 69, 0.65);
    box-shadow: 0 0 0 3px rgba(184, 138, 69, 0.14);
}

body.blog-page .hgt-blog-category-rail {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

body.blog-page .hgt-blog-category-rail a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 13px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.82);
    color: var(--hgt-home-forest);
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

body.blog-page .hgt-blog-category-rail a:hover,
body.blog-page .hgt-blog-category-rail a.active {
    border-color: var(--hgt-home-forest);
    background: var(--hgt-home-forest);
    color: #fff;
}

body.blog-page .hgt-blog-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.52fr);
    gap: 20px;
    align-items: end;
    margin: 34px 0 18px;
}

body.blog-page .hgt-blog-section-head h2 {
    margin: 0;
    font-size: 36px;
    line-height: 1.14;
}

body.blog-page .hgt-blog-section-head p {
    margin: 0;
}

body.blog-page .blog-list {
    gap: 18px;
}

body.blog-page .blog_item {
    overflow: hidden;
    color: var(--hgt-home-ink);
}

body.blog-page .blog_item_top {
    min-height: 270px;
    padding: 24px;
}

body.blog-page .blog_item_top ._title {
    color: #fff;
    font-size: 27px;
    line-height: 1.16;
}

body.blog-page .blog_item_bottom {
    gap: 14px;
    padding: 22px;
}

body.blog-page .hgt-blog-card-footer {
    justify-content: space-between;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid var(--hgt-home-line);
}

body.blog-page .hgt-blog-card-footer span {
    color: var(--hgt-home-muted);
}

body.blog-page .hgt-blog-guide-shelf,
body.blog-page .hgt-blog-editor-picks {
    margin-top: 54px;
}

body.blog-page .hgt-blog-guide-shelf {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    gap: 22px;
}

body.blog-page .hgt-blog-guide-column,
body.blog-page .hgt-blog-editor-picks {
    padding: 26px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.blog-page .hgt-blog-section-head.compact {
    margin: 0 0 18px;
}

body.blog-page .hgt-blog-section-head.compact h2 {
    font-size: 30px;
}

body.blog-page .hgt-blog-destination-list,
body.blog-page .hgt-blog-planning-grid,
body.blog-page .hgt-blog-pick-list {
    display: grid;
    gap: 10px;
}

body.blog-page .hgt-blog-destination-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.blog-page .hgt-blog-destination-list a,
body.blog-page .hgt-blog-planning-grid a {
    display: grid;
    gap: 5px;
    min-width: 0;
    padding: 14px;
    border: 1px solid rgba(38, 72, 63, 0.14);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.04);
    color: var(--hgt-home-ink);
    text-decoration: none;
}

body.blog-page .hgt-blog-destination-list a:hover,
body.blog-page .hgt-blog-planning-grid a:hover {
    border-color: rgba(38, 72, 63, 0.36);
    background: rgba(38, 72, 63, 0.08);
}

body.blog-page .hgt-blog-destination-list strong,
body.blog-page .hgt-blog-planning-grid strong,
body.blog-page .hgt-blog-pick-list strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 21px;
    font-weight: 400;
    line-height: 1.18;
}

body.blog-page .hgt-blog-destination-list span,
body.blog-page .hgt-blog-planning-grid span,
body.blog-page .hgt-blog-pick-list span,
body.blog-page .hgt-blog-pick-list small {
    color: var(--hgt-home-forest);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
}

body.blog-page .hgt-blog-pick-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.blog-page .hgt-blog-pick-list a {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    color: var(--hgt-home-ink);
    text-decoration: none;
}

body.blog-page .hgt-blog-pick-list img {
    width: 112px;
    height: 92px;
    border-radius: 8px;
    object-fit: cover;
}

body.blog-page .hgt-blog-pick-list div {
    display: grid;
    gap: 6px;
}

body.blog-page .tag {
    border-radius: 999px;
    background: var(--hgt-home-forest);
}

body.blog-page .tag.red {
    background: var(--hgt-home-clay);
}

body.blog-page .tag.green {
    background: var(--hgt-home-forest);
}

body.blog-page .tag.blue {
    background: var(--hgt-home-gold);
}

body.blog-detail-page .hgt-blog-single-template-page .page_body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 330px);
    gap: 32px;
    width: min(1170px, calc(100% - 40px));
    margin: 0 auto;
}

body.blog-detail-page .hgt-blog-single-template-page .left_content,
body.blog-detail-page .hgt-blog-single-template-page .right_content {
    width: auto;
}

body.blog-detail-page .blog_single-head {
    padding-bottom: 0;
    border-bottom: 0;
}

body.blog-detail-page .blog_single-head_top {
    position: relative;
    display: flex;
    min-height: 430px;
    overflow: hidden;
    flex-direction: column;
    justify-content: flex-end;
    padding: 34px;
    border-radius: 8px;
    background-position: center;
    background-size: cover;
}

body.blog-detail-page .blog_single-head_top::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(22, 19, 15, 0.76), rgba(22, 19, 15, 0.1));
    content: "";
}

body.blog-detail-page .blog_single-head_top .tags,
body.blog-detail-page .blog_single-head_top .title {
    position: relative;
    z-index: 1;
}

body.blog-detail-page .blog_single-head_top .title {
    max-width: 820px;
    margin: 16px 0 0;
    color: #fff;
    font-size: clamp(38px, 5vw, 64px);
    line-height: 1.04;
}

body.blog-detail-page .blog_single-head_bottom {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
    margin-top: 16px;
    padding: 18px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: rgba(255, 253, 248, 0.94);
}

body.blog-detail-page .blog_single-body {
    gap: 24px;
    margin-top: 32px;
}

body.blog-detail-page .blog_single-body .description {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    line-height: 1.55;
}

body.blog-detail-page .quote {
    border-left-color: var(--hgt-home-gold);
    border-radius: 0 8px 8px 0;
    background: rgba(184, 138, 69, 0.08);
}

body.blog-detail-page .img-block img,
body.blog-detail-page .gallery-block img,
body.blog-detail-page .gallery_block img {
    border-radius: 8px;
}

body.blog-detail-page .hgt-blog-reader-path {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 6px;
}

body.blog-detail-page .hgt-blog-reader-path article {
    padding: 20px;
}

body.blog-detail-page .hgt-blog-reader-path h3 {
    margin: 8px 0;
    font-size: 22px;
    line-height: 1.24;
}

body.blog-detail-page .hgt-blog-reader-path p {
    margin: 0;
}

body.blog-page ._block {
    padding: 24px;
}

body.blog-page ._block li a,
body.blog-page ._block .link,
body.blog-page .popular .item {
    border-bottom-color: var(--hgt-home-line);
    color: var(--hgt-home-muted);
}

body.blog-page ._block li a:hover,
body.blog-page ._block li a.active,
body.blog-page ._block .link:hover {
    color: var(--hgt-home-forest);
}

body.blog-page .hgt-blog-planning-block {
    display: grid;
    gap: 12px;
}

body.blog-page .hgt-blog-planning-links {
    margin-top: 0;
}

body.blog-page .hgt-blog-planning-links a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 11px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 999px;
    background: rgba(38, 72, 63, 0.05);
    color: var(--hgt-home-forest);
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

body.blog-page .comments-block,
body.blog-page .write_comment {
    margin-top: 32px;
}

body.blog-page .write_comment .input,
body.blog-page .write_comment .textarea,
body.blog-page .hgt-comment-select {
    border-color: var(--hgt-home-line);
    border-radius: 8px;
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.blog-page .write_comment .submit {
    border-color: var(--hgt-home-forest);
    border-radius: 999px;
    background: var(--hgt-home-forest);
    color: #fff;
}

body.blog-detail-page .hgt-blog-lp-page {
    background: var(--hgt-home-panel);
    color: var(--hgt-home-ink);
}

body.blog-detail-page .hgt-lp-hero {
    padding: 104px 0 46px;
    background: var(--hgt-home-panel);
}

body.blog-detail-page .hgt-lp-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 34px;
    color: var(--hgt-home-muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.blog-detail-page .hgt-lp-breadcrumb a,
body.blog-detail-page .hgt-lp-section-head a,
body.blog-detail-page .hgt-lp-tip-list a {
    color: var(--hgt-home-forest);
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 4px;
}

body.blog-detail-page .hgt-lp-title-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: end;
}

body.blog-detail-page .hgt-lp-title-row p {
    margin: 0 0 12px;
    color: var(--hgt-home-forest);
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.blog-detail-page .hgt-lp-title-row h1 {
    max-width: 1000px;
    margin: 0;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(54px, 9vw, 118px);
    font-weight: 400;
    line-height: 0.95;
    text-transform: none;
    letter-spacing: -0.01em;
}

body.blog-detail-page .hgt-lp-save-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 16px;
    border: 1px solid var(--hgt-home-line);
    border-radius: 999px;
    background: #fff;
    color: var(--hgt-home-forest);
    font-size: 11px;
    font-weight: 900;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    white-space: nowrap;
}

body.blog-detail-page .hgt-lp-hero-media {
    margin: 44px 0 0;
}

body.blog-detail-page .hgt-lp-hero-media img {
    display: block;
    width: 100%;
    max-height: 640px;
    aspect-ratio: 16 / 8;
    border-radius: 8px;
    object-fit: cover;
}

body.blog-detail-page .hgt-lp-hero-media figcaption {
    margin-top: 10px;
    color: var(--hgt-home-muted);
    font-size: 12px;
    line-height: 1.5;
}

body.blog-detail-page .hgt-lp-main {
    padding: 42px 0 90px;
    background: var(--hgt-home-panel);
}

body.blog-detail-page .hgt-lp-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(288px, 360px);
    gap: clamp(34px, 6vw, 76px);
    align-items: start;
}

body.blog-detail-page .hgt-lp-content {
    display: grid;
    gap: 58px;
    min-width: 0;
}

body.blog-detail-page .hgt-lp-why {
    display: grid;
    grid-template-columns: minmax(190px, 0.38fr) minmax(0, 1fr);
    gap: 34px;
    padding-bottom: 44px;
    border-bottom: 1px solid var(--hgt-home-line);
}

body.blog-detail-page .hgt-lp-why h2,
body.blog-detail-page .hgt-lp-trip-callout h2,
body.blog-detail-page .hgt-lp-section-head h2,
body.blog-detail-page .hgt-lp-guide-card h2,
body.blog-detail-page .hgt-lp-facts-card h2,
body.blog-detail-page .hgt-lp-category-card h2,
body.blog-detail-page .hgt-lp-place-card h3,
body.blog-detail-page .hgt-lp-tip-list h3,
body.blog-detail-page .hgt-lp-beyond-grid h3,
body.blog-detail-page .hgt-lp-comments .title,
body.blog-detail-page .hgt-lp-write-comment .title {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

body.blog-detail-page .hgt-lp-why h2 {
    margin: 0;
    font-size: 34px;
    line-height: 1.12;
}

body.blog-detail-page .hgt-lp-why p {
    margin: 0;
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 26px;
    line-height: 1.45;
}

body.blog-detail-page .hgt-lp-article-body {
    display: grid;
    gap: 22px;
    max-width: 760px;
}

body.blog-detail-page .hgt-lp-article-body p,
body.blog-detail-page .hgt-lp-trip-callout p,
body.blog-detail-page .hgt-lp-place-card p,
body.blog-detail-page .hgt-lp-tip-list p,
body.blog-detail-page .hgt-lp-guide-card p,
body.blog-detail-page .hgt-lp-beyond-grid p {
    margin: 0;
    color: var(--hgt-home-muted);
    font-size: 16px;
    line-height: 1.82;
}

body.blog-detail-page .hgt-lp-article-body p {
    color: #2c2822;
    font-size: 18px;
}

body.blog-detail-page .hgt-lp-trip-callout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 22px;
    align-items: center;
    padding: 28px;
    border: 1px solid rgba(38, 72, 63, 0.18);
    border-radius: 8px;
    background: rgba(38, 72, 63, 0.06);
}

body.blog-detail-page .hgt-lp-trip-callout span,
body.blog-detail-page .hgt-lp-section-head span,
body.blog-detail-page .hgt-lp-place-card small,
body.blog-detail-page .hgt-lp-guide-card > span,
body.blog-detail-page .hgt-lp-facts-card span,
body.blog-detail-page .hgt-lp-related-link-grid span {
    color: var(--hgt-home-gold);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.blog-detail-page .hgt-lp-trip-callout h2,
body.blog-detail-page .hgt-lp-section-head h2 {
    margin: 7px 0 0;
    font-size: 42px;
    line-height: 1.08;
}

body.blog-detail-page .hgt-lp-trip-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

body.blog-detail-page .hgt-lp-section {
    display: grid;
    gap: 22px;
}

body.blog-detail-page .hgt-lp-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

body.blog-detail-page .hgt-lp-place-grid,
body.blog-detail-page .hgt-lp-related-link-grid,
body.blog-detail-page .hgt-lp-beyond-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

body.blog-detail-page .hgt-lp-place-card,
body.blog-detail-page .hgt-lp-related-link-grid a,
body.blog-detail-page .hgt-lp-beyond-grid a {
    min-width: 0;
    color: var(--hgt-home-ink);
    text-decoration: none;
}

body.blog-detail-page .hgt-lp-place-card img,
body.blog-detail-page .hgt-lp-related-link-grid img,
body.blog-detail-page .hgt-lp-beyond-grid img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 8px;
    object-fit: cover;
}

body.blog-detail-page .hgt-lp-place-card h3,
body.blog-detail-page .hgt-lp-beyond-grid h3 {
    margin: 10px 0 8px;
    font-size: 25px;
    line-height: 1.16;
}

body.blog-detail-page .hgt-lp-place-card small {
    display: block;
    margin-top: 12px;
    color: var(--hgt-home-forest);
}

body.blog-detail-page .hgt-lp-tip-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 34px;
    border-top: 1px solid var(--hgt-home-line);
}

body.blog-detail-page .hgt-lp-tip-list article {
    display: grid;
    gap: 10px;
    padding: 24px 0;
    border-bottom: 1px solid var(--hgt-home-line);
}

body.blog-detail-page .hgt-lp-tip-list h3 {
    margin: 0;
    font-size: 26px;
    line-height: 1.18;
}

body.blog-detail-page .hgt-lp-related-link-grid a {
    display: grid;
    gap: 10px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--hgt-home-line);
}

body.blog-detail-page .hgt-lp-related-link-grid strong {
    color: var(--hgt-home-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.18;
}

body.blog-detail-page .hgt-lp-sidebar {
    position: sticky;
    top: 110px;
    display: grid;
    gap: 18px;
}

body.blog-detail-page .hgt-lp-guide-card,
body.blog-detail-page .hgt-lp-facts-card,
body.blog-detail-page .hgt-lp-category-card,
body.blog-detail-page .hgt-lp-comments .comment_item,
body.blog-detail-page .hgt-lp-write-comment {
    border: 1px solid var(--hgt-home-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(52, 40, 24, 0.07);
}

body.blog-detail-page .hgt-lp-guide-card,
body.blog-detail-page .hgt-lp-facts-card,
body.blog-detail-page .hgt-lp-category-card {
    display: grid;
    gap: 14px;
    padding: 24px;
}

body.blog-detail-page .hgt-lp-guide-card h2,
body.blog-detail-page .hgt-lp-facts-card h2,
body.blog-detail-page .hgt-lp-category-card h2 {
    margin: 0;
    font-size: 28px;
    line-height: 1.12;
}

body.blog-detail-page .hgt-lp-facts-card div {
    display: grid;
    gap: 4px;
    padding-top: 13px;
    border-top: 1px solid var(--hgt-home-line);
}

body.blog-detail-page .hgt-lp-facts-card strong {
    color: var(--hgt-home-ink);
    font-size: 15px;
    line-height: 1.5;
}

body.blog-detail-page .hgt-lp-category-card a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid var(--hgt-home-line);
    color: var(--hgt-home-muted);
    text-decoration: none;
}

body.blog-detail-page .hgt-lp-category-card a.active,
body.blog-detail-page .hgt-lp-category-card a:hover {
    color: var(--hgt-home-forest);
}

body.blog-detail-page .hgt-lp-comments {
    display: grid;
    gap: 18px;
    margin-top: 0;
}

body.blog-detail-page .hgt-lp-comments .title_wrap {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
}

body.blog-detail-page .hgt-lp-comments .title {
    margin: 0;
    font-size: 34px;
}

body.blog-detail-page .hgt-lp-write-comment {
    margin-top: -28px;
}

body.blog-detail-page .hgt-lp-beyond {
    padding: 72px 0 92px;
    border-top: 1px solid var(--hgt-home-line);
    background: var(--hgt-home-paper);
}

body.blog-detail-page .hgt-lp-beyond-grid {
    margin-top: 24px;
}

body.blog-detail-page .hgt-lp-beyond-grid .tag {
    display: inline-flex;
    width: fit-content;
    margin-top: 12px;
}

@media (max-width: 1200px) {
    body.activities-page .hgt-private-tour-highlights,
    body.activities-page .hgt-private-package-grid,
    body.activities-page .hgt-private-review-grid,
    body.activities-page .hgt-klook-offer-grid,
    body.activities-page .hgt-klook-related-grid,
    body.activities-page .hgt-klook-package-detail-list,
    body.activities-page .hgt-klook-expect-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.community-page .hgt-community-overview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.insurance-page .hgt-insurance-hero-grid,
    body.insurance-page .hgt-insurance-decision-grid {
        grid-template-columns: 1fr;
    }

    body.insurance-page .hgt-insurance-profile-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.blog-page .hgt-blog-hero-grid,
    body.blog-page .hgt-blog-section-head,
    body.blog-page .hgt-blog-guide-shelf,
    body.blog-page .hgt-blog-pick-list,
    body.blog-detail-page .hgt-blog-single-template-page .page_body {
        grid-template-columns: 1fr;
    }

    body.blog-detail-page .right_content.sidebar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    body.blog-detail-page .hgt-lp-grid,
    body.blog-detail-page .hgt-lp-why,
    body.blog-detail-page .hgt-lp-trip-callout {
        grid-template-columns: 1fr;
    }

    body.blog-detail-page .hgt-lp-sidebar {
        position: static;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.blog-detail-page .hgt-lp-trip-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 767px) {
    body.activities-page .hgt-private-tour-summary,
    body.activities-page .hgt-private-tour-highlights,
    body.activities-page .hgt-private-package-grid,
    body.activities-page .hgt-private-review-grid,
    body.activities-page .hgt-private-itinerary-list article,
    body.activities-page .hgt-klook-offer-grid,
    body.activities-page .hgt-klook-related-grid,
    body.activities-page .hgt-klook-package-detail-list,
    body.activities-page .hgt-klook-expect-gallery {
        grid-template-columns: 1fr;
    }

    body.activities-page .hgt-private-itinerary-list article {
        gap: 8px;
    }

    body.faq-page .hgt-panel-body h3 {
        font-size: 20px;
    }

    body.community-page .hgt-community-overview {
        grid-template-columns: 1fr;
    }

    body.community-page .hgt-community-sidebar {
        position: static;
    }

    body.community-page .hgt-community-card h3 {
        font-size: 21px;
    }

    body.community-page .hgt-community-stat strong {
        font-size: 30px;
    }

    body.insurance-page .hgt-insurance-hero {
        padding: 104px 0 42px;
    }

    body.insurance-page .hgt-insurance-hero h1 {
        font-size: 40px;
    }

    body.insurance-page .hgt-insurance-grid,
    body.insurance-page .hgt-insurance-profile-strip,
    body.insurance-page .hgt-insurance-facts,
    body.insurance-page .hgt-insurance-guide-grid {
        grid-template-columns: 1fr;
    }

    body.insurance-page .hgt-insurance-card-top,
    body.insurance-page .hgt-insurance-provider,
    body.insurance-page .hgt-insurance-card-actions,
    body.insurance-page .hgt-insurance-search-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.insurance-page .hgt-insurance-score {
        width: 100%;
    }

    body.blog-page .hgt-blog-hero {
        padding: 104px 0 40px;
    }

    body.blog-page .hgt-blog-hero-copy h1 {
        font-size: 40px;
    }

    body.blog-page .hgt-blog-stats,
    body.blog-page .hgt-search-inline,
    body.blog-page .hgt-blog-destination-list,
    body.blog-page .hgt-blog-pick-list a,
    body.blog-detail-page .hgt-blog-reader-path,
    body.blog-detail-page .right_content.sidebar {
        grid-template-columns: 1fr;
    }

    body.blog-page .hgt-search-inline .button {
        width: 100%;
        text-align: center;
    }

    body.blog-page .blog_item_top {
        min-height: 240px;
    }

    body.blog-detail-page .blog_single-head_top {
        min-height: 360px;
        padding: 24px;
    }

    body.blog-detail-page .blog_single-head_top .title {
        font-size: 34px;
    }

    body.blog-detail-page .blog_single-head_bottom {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.blog-detail-page .hgt-lp-hero {
        padding: 104px 0 34px;
    }

    body.blog-detail-page .hgt-lp-title-row,
    body.blog-detail-page .hgt-lp-section-head,
    body.blog-detail-page .hgt-lp-place-grid,
    body.blog-detail-page .hgt-lp-tip-list,
    body.blog-detail-page .hgt-lp-related-link-grid,
    body.blog-detail-page .hgt-lp-beyond-grid,
    body.blog-detail-page .hgt-lp-sidebar {
        grid-template-columns: 1fr;
    }

    body.blog-detail-page .hgt-lp-title-row h1 {
        font-size: 46px;
        line-height: 1.02;
    }

    body.blog-detail-page .hgt-lp-hero-media {
        margin-top: 28px;
    }

    body.blog-detail-page .hgt-lp-hero-media img {
        aspect-ratio: 4 / 3;
    }

    body.blog-detail-page .hgt-lp-why p {
        font-size: 21px;
    }

    body.blog-detail-page .hgt-lp-trip-callout,
    body.blog-detail-page .hgt-lp-guide-card,
    body.blog-detail-page .hgt-lp-facts-card,
    body.blog-detail-page .hgt-lp-category-card,
    body.blog-detail-page .hgt-lp-write-comment {
        padding: 20px;
    }

    body.blog-detail-page .hgt-lp-trip-callout h2,
    body.blog-detail-page .hgt-lp-section-head h2 {
        font-size: 31px;
    }
}
