
    .chd-main {
        --gl-cta: #ff0000;
        --gl-cta-dk: #000000;
        --gl-accent: #ff0000;
        --gl-accent-dk: #000000;
        --gl-black: #000000;
        --gl-off-white: #f5f8fb;
        --gl-warm-gray: #eef2f5;
        --gl-border: rgba(0, 0, 0, 0.08);
        --gl-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
        color: var(--gl-black);
        width: 100%;
    }

    @scope(.chd-main) {

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

        #ipawl,
        h1.entry-title {
            display: none
        }

        .gl-container {
            max-width: 1200px;
            margin: 0 auto
        }

        .gl-section {
            padding: 5.5rem 2rem
        }

        .gl-section--alt {
            background: var(--gl-off-white)
        }

        .gl-section--dark {
            background: var(--gl-black)
        }

        .gl-heading,
        .gl-hero h1 {
            font-weight: 800
        }

        .gl-heading {
            color: var(--gl-black);
            line-height: 1.08;
            margin-bottom: .6rem;
            letter-spacing: -.02em
        }

        .gl-heading--white {
            color: #fff
        }

        .gl-body {
            color: rgba(0, 0, 0, .68);
            line-height: 1.8;
            margin-bottom: 1rem;
            font-weight: 400
        }

        .gl-body--light {
            color: rgba(255, 255, 255, .8)
        }

        .gl-section-header {
            text-align: center;
            margin-bottom: 3.5rem
        }

        .gl-section-header p {
            color: rgba(0, 0, 0, .56);
            max-width: 620px;
            margin: .75rem auto 0;
            line-height: 1.8
        }

        .gl-section--dark .gl-section-header p {
            color: rgba(255, 255, 255, .74)
        }

        .gl-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-weight: 700;
            letter-spacing: .12em;
            text-transform: uppercase;
            text-decoration: none !important;
            padding: .95rem 2.25rem;
            border: 1.5px solid transparent;
            min-height: 50px;
            min-width: 220px;
            transition: background .22s, border-color .22s, color .22s, transform .22s, box-shadow .22s
        }

        .gl-btn--primary {
            background: var(--gl-cta) !important;
            color: #fff !important;
            border-color: var(--gl-cta) !important
        }

        .gl-btn--primary:hover {
            background: var(--gl-cta-dk) !important;
            border-color: var(--gl-cta-dk) !important;
            transform: translateY(-1px);
            box-shadow: 0 6px 20px rgba(255, 0, 0, .28)
        }

        .gl-btn--outline {
            border-color: rgba(255, 255, 255, .55) !important;
            color: #fff !important;
            background: 0 0 !important
        }

        .gl-btn--outline:hover {
            border-color: #fff !important;
            background: var(--gl-black) !important
        }

        .gl-btn--ghost {
            border-color: var(--gl-cta) !important;
            color: var(--gl-cta) !important;
            background: 0 0 !important
        }

        .gl-btn--ghost:hover {
            background: var(--gl-cta-dk) !important;
            color: #fff !important;
            border-color: var(--gl-cta-dk) !important
        }

        .gl-btn--white {
            background: #fff !important;
            color: var(--gl-black) !important;
            border-color: #fff !important
        }

        .gl-btn--white:hover {
            background: var(--gl-black) !important;
            color: #fff !important;
            border-color: var(--gl-black) !important;
            transform: translateY(-1px)
        }

        .gl-hero {
            position: relative;
            min-height: 620px;
            display: flex;
            align-items: flex-end;
            background: url('https://service.secureoffersites.com/images/GetLibraryImage?fileNameOrId=840640') center center/cover no-repeat
        }

        .gl-hero::before {
            content: "";
            position: absolute;
            inset: 0;
            background: rgba(0, 0, 0, .62)
        }

        .gl-hero::after {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 5px;
            background: var(--gl-accent)
        }

        .gl-hero-inner {
            position: relative;
            z-index: 1;
            width: 100%;
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 2rem 4rem
        }

        .gl-hero h1 {
            color: #fff;
            line-height: 1.02;
            max-width: 760px;
            margin-bottom: 1.25rem;
            font-size: 2.5rem !important;
        }

        .gl-hero p {
            color: rgba(255, 255, 255, .84);
            max-width: 620px;
            line-height: 1.8;
            margin-bottom: 2.25rem
        }

        .gl-btn-group,
        .gl-callout-btns,
        .gl-hero-btns {
            display: flex;
            gap: .75rem;
            flex-wrap: wrap
        }

        .gl-hero-microcopy {
            display: flex;
            flex-direction: column;
            gap: .4rem;
            color: rgba(255, 255, 255, .7);
            font-size: .88rem;
            margin-top: 1.5rem
        }

        /* Inject clean checkmark via CSS Unicode string instead of text characters */
        .gl-hero-microcopy span::before {
            content: "\2713\00a0";
            color: var(--gl-accent);
            margin-right: .3rem;
            font-weight: 700
        }

        .gl-trust {
            background: var(--gl-accent)
        }

        .gl-trust-inner,
        .gl-trust-item {
            display: flex;
            justify-content: center
        }

        .gl-trust-inner {
            max-width: 1200px;
            margin: 0 auto;
            align-items: stretch;
            flex-wrap: wrap
        }

        .gl-trust-item {
            align-items: center;
            gap: .85rem;
            padding: 1.35rem 2rem;
            color: #fff;
            border-right: 1px solid rgba(255, 255, 255, .18);
            flex: 1;
            min-width: 180px
        }

        .gl-trust-item:last-child {
            border-right: none
        }

        .gl-trust-value {
            font-weight: 700;
            display: block;
            line-height: 1.35;
            letter-spacing: .01em
        }

        .gl-trust-label {
            opacity: .9;
            letter-spacing: .03em;
            display: block;
            font-size: .95rem
        }

        .gl-trust-icon {
            width: 26px;
            height: 26px;
            flex-shrink: 0;
            fill: rgba(255, 255, 255, .94)
        }

        .gl-steps,
        .gl-usp-grid,
        .gl-community-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: 1.25rem
        }

        .gl-usp-card,
        .gl-community-card {
            background: rgba(255, 255, 255, .04);
            border: 1px solid rgba(255, 255, 255, .12);
            padding: 2.25rem;
            transition: background .2s, border-color .2s, transform .2s
        }

        .gl-usp-card {
            background: #fff;
            border: 1px solid var(--gl-border);
            box-shadow: var(--gl-shadow)
        }

        .gl-community-card {
            border-left: 3px solid var(--gl-accent);
            text-align: left
        }

        .gl-usp-card:hover,
        .gl-community-card:hover {
            transform: translateY(-2px)
        }

        .gl-usp-card:hover {
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
            border-color: var(--gl-border)
        }

        .gl-usp-card h3,
        .gl-usp-num,
        .gl-community-card h3 {
            font-weight: 800
        }

        .gl-usp-num {
            color: var(--gl-accent);
            line-height: 1;
            margin-bottom: .85rem
        }

        .gl-usp-card h3 {
            color: #111;
            margin-bottom: .6rem;
            font-size: 1.1rem
        }

        .gl-usp-card ul {
            list-style: none;
            padding: 0;
            margin: 0
        }

        .gl-usp-card ul li {
            font-size: .95rem;
            color: rgba(0, 0, 0, .65);
            padding: .35rem 0;
            border-bottom: 1px solid var(--gl-warm-gray);
            display: flex;
            gap: .5rem;
            align-items: flex-start;
            line-height: 1.45
        }

        .gl-usp-card ul li:last-child {
            border-bottom: none
        }

        /* Inject clean checkmark via CSS escape code instead of broken text rendering */
        .gl-usp-card ul li::before {
            content: "\2713\00a0";
            color: var(--gl-accent);
            font-weight: 700;
            flex-shrink: 0;
            margin-top: .05rem
        }

        .gl-usp-card p,
        .gl-community-card p {
            line-height: 1.8;
            margin: 0
        }

        .gl-group-inner,
        .gl-leader-wrap,
        .gl-split {
            display: flex;
            align-items: center;
            gap: 4.5rem;
            flex-direction: column
        }

        .gl-group-content,
        .gl-leader-info,
        .gl-split-content,
        .gl-split-visual {
            flex: 1;
            min-width: 0
        }

        .gl-img-cover {
            width: 100%;
            display: block;
            object-fit: cover;
            height: 440px;
            background: #d8e4ec
        }

        .gl-img-frame {
            position: relative
        }

        .gl-img-frame::after,
        .gl-img-frame::before {
            content: "";
            position: absolute;
            width: 64px;
            height: 64px;
            z-index: 1;
            pointer-events: none
        }

        .gl-img-frame::before {
            top: -12px;
            left: -12px;
            border-top: 3px solid var(--gl-accent);
            border-left: 3px solid var(--gl-accent)
        }

        .gl-img-frame::after {
            bottom: -12px;
            right: -12px;
            border-bottom: 3px solid var(--gl-black);
            border-right: 3px solid var(--gl-black)
        }

        .gl-amenity-list {
            list-style: none;
            margin: 1.35rem 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: .7rem
        }

        .gl-amenity-list li {
            display: flex;
            align-items: flex-start;
            gap: .7rem;
            color: rgba(0, 0, 0, .68);
            line-height: 1.6
        }

        .gl-amenity-list li svg {
            flex-shrink: 0;
            fill: var(--gl-accent);
            margin-top: 3px
        }

        .gl-amenities-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 1.25rem 2rem;
            max-width: 820px;
            margin: 0 auto
        }

        .gl-amenity {
            display: flex;
            align-items: center;
            gap: .85rem
        }

        .gl-amenity img {
            width: 44px;
            height: 44px;
            object-fit: contain;
            flex-shrink: 0
        }

        .gl-amenity span {
            font-size: .85rem;
            font-weight: 600;
            color: #222;
            line-height: 1.3
        }

        .gl-callout {
            background: var(--gl-accent);
            padding: 5rem 2rem;
            text-align: center;
            position: relative;
            overflow: hidden
        }

        .gl-callout-inner,
        .gl-final-callout-inner {
            position: relative;
            z-index: 1;
            max-width: 1200px;
            margin: 0 auto
        }

        .gl-callout p,
        .gl-final-callout p {
            color: rgba(255, 255, 255, .9);
            max-width: 580px;
            margin: 0 auto 2.25rem;
            line-height: 1.8
        }

        .gl-carousel {
            overflow: hidden;
            position: relative
        }

        .gl-slides {
            display: flex;
            transition: transform .7s cubic-bezier(.4, 0, .2, 1)
        }

        .gl-slide {
            flex: 0 0 100%;
            display: flex;
            gap: 1.5rem;
            align-items: stretch;
            padding: 0 2px
        }

        .gl-review-card {
            flex: 1;
            padding: 2rem;
            display: flex;
            flex-direction: column;
            background: #fff;
            border: 1px solid var(--gl-border);
            box-shadow: var(--gl-shadow)
        }

        .gl-review-stars {
            margin-bottom: 1rem
        }

        .gl-rating-stars,
        .gl-review-stars {
            letter-spacing: .04em;
            color: var(--gl-accent)
        }

        .gl-review-quote {
            color: var(--gl-accent);
            opacity: .32;
            line-height: 1;
            margin-bottom: .25rem;
            font-weight: 800
        }

        .gl-review-text {
            flex: 1;
            color: rgba(0, 0, 0, .72);
            line-height: 1.8;
            font-style: italic
        }

        .gl-review-footer {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-top: 1.5rem;
            padding-top: 1.25rem;
            border-top: 1px solid var(--gl-border)
        }

        .gl-review-author {
            display: flex;
            align-items: center;
            gap: .75rem
        }

        .gl-review-avatar {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: var(--gl-accent);
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 800;
            flex-shrink: 0
        }

        .gl-map-val,
        .gl-rating-label,
        .gl-review-name {
            font-weight: 700;
            color: var(--gl-black)
        }

        .gl-rating-count,
        .gl-review-platform {
            color: rgba(0, 0, 0, .48)
        }

        .gl-dots {
            display: flex;
            justify-content: center;
            gap: .5rem;
            margin-top: 2.5rem
        }

        .gl-dot {
            width: 8px;
            height: 8px;
            background: rgba(0, 0, 0, .18);
            border: 0;
            cursor: pointer;
            padding: 0;
            transition: background .3s, transform .3s;
            border-radius: 50%
        }

        .gl-dot.gl-active {
            background: var(--gl-accent);
            transform: scale(1.3)
        }

        .gl-step h3,
        .gl-step-num {
            font-weight: 800;
            color: var(--gl-black)
        }

        .gl-step-num {
            text-align: left;
            line-height: 1;
            display: block;
            color: var(--gl-accent);
            margin-bottom: .75rem;
            font-size: 2rem
        }

        .gl-step {
            padding: 2rem;
            position: relative
        }

        .gl-step h3 {
            margin-bottom: .4rem;
            font-size: 1rem
        }

        .gl-step p {
            color: rgba(0, 0, 0, .58);
            line-height: 1.75;
            margin: 0;
            font-size: .9rem
        }

        .gl-options {
            display: grid;
            grid-template-columns: 1fr;
            gap: 1rem
        }

        .gl-option-card {
            background: #fff;
            border: 1px solid var(--gl-border);
            padding: 1.5rem
        }

        .gl-option-card h3 {
            color: #111;
            margin-bottom: .4rem;
            font-size: .95rem;
            font-weight: 700
        }

        .gl-option-card p {
            color: rgba(0, 0, 0, .6);
            font-size: .88rem;
            line-height: 1.5;
            margin: 0
        }

        .gl-grid-locations {
            display: grid;
            grid-template-columns: 1fr;
            gap: 2rem;
            margin-top: 3.5rem
        }

        .gl-location-card {
            background: #fff;
            border: 1px solid var(--gl-border);
            border-radius: 8px;
            overflow: hidden;
            box-shadow: var(--gl-shadow);
            display: flex;
            flex-direction: column;
            padding: 1.5rem;
            text-align: center
        }

        .gl-location-img {
            width: 100%;
            height: 200px;
            object-fit: cover;
            border-radius: 4px;
            margin-bottom: 1.25rem
        }

        .gl-location-card h3 {
            margin: 0 0 1rem;
            font-weight: 800;
            color: var(--gl-black)
        }

        .gl-location-info {
            font-size: 0.95rem;
            line-height: 1.6;
            color: rgba(0, 0, 0, 0.7);
            margin-bottom: 1.5rem
        }

        .gl-location-info p {
            margin: 0.4rem 0
        }

        .gl-location-btns {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
            margin-top: auto
        }

        .gl-location-btns .gl-btn {
            width: 100%;
            min-width: 0;
            padding: 0.75rem 1rem;
            min-height: 44px
        }

        .gl-rep {
            background: var(--gl-warm-gray);
            padding: 2.25rem 2rem;
            text-align: center
        }

        .gl-rep-inner {
            max-width: 1200px;
            margin: 0 auto;
            gap: 2rem;
            justify-content: center;
            flex-wrap: wrap
        }

        .gl-rep-badge {
            gap: .6rem;
            font-weight: 700;
            color: rgba(0, 0, 0, .68);
            letter-spacing: .02em
        }

        .gl-rep-divider {
            width: 1px;
            height: 28px;
            background: var(--gl-border)
        }

        .gl-faq-wrap {
            max-width: 820px;
            margin: 0 auto
        }

        .gl-faq-item {
            border-bottom: 1px solid #e8e8e8
        }

        .gl-faq-q {
            width: 100%;
            background: 0 0;
            border: 0;
            padding: 1.4rem 2.5rem 1.4rem 0;
            color: #111;
            text-align: left;
            cursor: pointer;
            position: relative;
            font-family: inherit;
            font-size: .98rem;
            font-weight: 600
        }

        .gl-faq-q::after {
            content: "+";
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            color: var(--gl-accent);
            font-size: 1.4rem;
            font-weight: 400;
            transition: transform .3s
        }

        .gl-faq-item.gl-open .gl-faq-q::after {
            content: "-"
        }

        .gl-faq-a {
            max-height: 0;
            overflow: hidden;
            transition: max-height .4s ease, padding .3s ease
        }

        .gl-faq-item.gl-open .gl-faq-a {
            max-height: 400px;
            padding-bottom: 1.4rem
        }

        .gl-faq-a p {
            color: rgba(0, 0, 0, .62);
            font-size: .93rem;
            line-height: 1.65
        }

        @media (max-width:767px) {
            .gl-btn {
                min-width: 0;
                width: 100%
            }

            .gl-hero-inner {
                padding: 2rem 1.5rem
            }

            .gl-trust-inner {
                flex-direction: column;
                align-items: center
            }

            .gl-trust-item {
                border-right: none;
                border-bottom: 1px solid rgba(255, 255, 255, .15);
                width: 100%;
                padding: 1rem 1.5rem
            }

            .gl-trust-item:last-child {
                border-bottom: none
            }

            .gl-slide {
                gap: 0
            }

            .gl-review-card:nth-child(n+2) {
                display: none
            }
        }

        @media (min-width:640px) {

            .gl-usp-grid,
            .gl-options,
            .gl-steps {
                grid-template-columns: 1fr 1fr
            }

            .gl-grid-locations {
                grid-template-columns: 1fr 1fr
            }

            .gl-amenities-grid {
                grid-template-columns: repeat(3, 1fr)
            }
        }

        @media (min-width:768px) {
            .gl-split {
                flex-direction: row
            }

            .gl-split.gl-reverse {
                flex-direction: row-reverse
            }
        }

        @media (min-width:1024px) {
            .gl-usp-grid {
                grid-template-columns: repeat(3, 1fr)
            }

            .gl-grid-locations {
                grid-template-columns: repeat(4, 1fr)
            }

            .gl-amenities-grid,
            .gl-steps {
                grid-template-columns: repeat(4, 1fr)
            }

            .gl-steps {
                gap: 0
            }

            .gl-step+.gl-step::before {
                content: "";
                position: absolute;
                left: 0;
                top: 20%;
                height: 60%;
                width: 1px;
                background: var(--gl-border)
            }
        }

        @media (max-width:640px) {
            .gl-rep-divider {
                display: none
            }
        }
    }