h1,
h2 {
    font-weight: 900
}

h3,
section .eyebrow {
    margin-bottom: 12px
}

body,
p {
    line-height: 1.6
}

h2,
p {
    margin-bottom: 16px
}

.cpaprx-product-title,
.cpaprx-search-recommended-name,
.cpaprx-search-suggestion-name,
.cpaprx-subcategory-desc {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.brand-track,
.cards-track,
.cpap-reviews-track,
.hero-video {
    will-change: transform
}

.cpx-journey-btn,
.cpx-journey-eyebrow,
.cpx-journey-label,
.cpx-journey-title,
.dlx-page,
body {
    font-family: Montserrat, sans-serif
}

:root {
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-6: 24px;
    --space-8: 32px;
    --space-10: 40px;
    --space-12: 48px;
    --space-14: 56px;
    --space-16: 64px;
    --space-20: 80px;
    --section-pad-tight: clamp(40px, 4vw + 12px, 88px);
    --section-pad: clamp(56px, 6vw + 16px, 120px);
    --section-pad-wide: clamp(72px, 8vw + 24px, 160px)
}

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

section {
    padding-block: var(--section-pad)
}

.hero {
    padding-block: var(--section-pad-wide)
}

section:not(.hero):not(.gx5m_guides_section):not(:first-of-type) {
    border-top: 1px solid #eef2f7
}

section .eyebrow+h2,
section h2+p {
    margin-top: 4px
}

section p.lead {
    margin-bottom: 24px
}

.section--tight {
    padding-block: var(--section-pad-tight) !important
}

.section--spacious {
    padding-block: var(--section-pad-wide) !important
}

.container--narrow {
    max-width: 960px
}

*,
.cpaprx-why-page * {
    margin: 0;
    padding: 0;
    box-sizing: border-box
}

body {
    overflow-x: hidden;
    font-size: 16px;
    color: #243247
}

.blog-inner,
.container,
.cpap-faq-inner,
.cpap-reviews-inner,
.cpx-rx-inner,
.cpx-stats-band .cpx-stats-inner,
.dlx-container,
.features-inner,
.fp-feature .fp-inner,
.second-inner,
.subscribe-inner,
.third-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px
}

h1 {
    font-size: 48px;
    line-height: 1.1;
    margin-bottom: 20px;
    color: #fff
}

h2 {
    font-size: 32px;
    line-height: 1.2;
    color: #0a2b62
}

h3,
h4 {
    font-weight: 800;
    color: #0a2b62
}

h3 {
    font-size: 24px;
    line-height: 1.3
}

.eyebrow,
h4 {
    margin-bottom: 8px
}

h4 {
    font-size: 18px;
    line-height: 1.4
}

p {
    font-size: 16px;
    color: #5a6470
}

.eyebrow {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #6c7b86
}

.btn-cta-dark,
.cta-button,
.hero-button.primary,
.maskfit-cta,
.maskfit-ghost,
.sleeptest-cta,
.sleeptest-cta.secondary,
.travel-cta-btn,
.view-guides-btn {
    background-color: #e94132;
    color: #fff;
    padding: 14px 28px;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: .3s;
    border: none;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: .5px;
    box-shadow: 0 4px 12px rgba(233, 65, 50, .2)
}

.btn-cta-dark:hover,
.cta-button:hover,
.hero-button.primary:hover,
.maskfit-cta:hover,
.maskfit-ghost:hover,
.sleeptest-cta.secondary:hover,
.sleeptest-cta:hover,
.travel-cta-btn:hover,
.view-guides-btn:hover {
    background-color: #d12e1f;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(233, 65, 50, .3)
}

.hero-button.secondary,
.maskfit-ghost,
.sleeptest-cta.secondary {
    background-color: transparent;
    color: #0a2b62;
    border: 2px solid #0a2b62;
    box-shadow: none
}

.hero-button.secondary:hover,
.maskfit-ghost:hover,
.sleeptest-cta.secondary:hover {
    background-color: rgba(10, 43, 98, .1);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(10, 43, 98, .2)
}

ul {
    list-style: none
}

.cpaprx-cta-button {
    background-color: #e94132;
    color: #fff;
    padding: 12px 24px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 14px;
    display: inline-block;
    transition: .3s;
    border: none;
    cursor: pointer
}

.cpaprx-cta-button:hover,
.cpaprx-search-box-overlay .cpaprx-search-submit-btn:hover,
.cpaprx-search-box-overlay button:hover {
    background-color: #d12e1f;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(233, 65, 50, .3)
}

.cpaprx-btn-secondary {
    background-color: transparent;
    color: #0a2b62;
    border: 2px solid #0a2b62
}

.cpaprx-btn-secondary:hover {
    background-color: #0a2b62;
    color: #fff
}

.cpaprx-top-header {
    background-color: #0a2b62;
    color: #fff;
    font-size: 14px;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    position: relative;
    z-index: 1003
}

.cpaprx-bottom-header.hidden,
.cpaprx-top-header.hidden {
    transform: translateY(-100%);
    opacity: 0;
    height: 0;
    overflow: hidden
}

.cpaprx-top-header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0
}

.cpaprx-promo-carousel {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center
}

.cpaprx-promo-carousel .cpaprx-carousel-btn {
    order: 1
}

.cpaprx-promo-carousel .cpaprx-promo-slider {
    order: 2;
    flex: 1
}

.cpaprx-promo-carousel .cpaprx-carousel-btn+.cpaprx-carousel-btn {
    margin-left: 6px
}

.cpaprx-carousel-btn {
    background: 0 0;
    border: none;
    color: #fff;
    cursor: pointer;
    padding: 4px 8px;
    font-size: 16px;
    opacity: .7;
    transition: opacity .3s
}

.cpaprx-carousel-btn:hover,
.jk3n_guide_card:hover::before,
.pv2k_image_circle:hover::before,
.yh3p_gallery_item:hover::before {
    opacity: 1
}

.cpaprx-promo-slider {
    flex: 1;
    overflow: hidden;
    position: relative
}

.cpaprx-promo-items {
    display: flex;
    transition: transform .5s
}

.cpaprx-promo-item {
    min-width: 100%;
    text-align: left;
    font-weight: 500
}

.cpaprx-promo-item a {
    color: #fff;
    text-decoration: none;
    border-bottom: 1px solid #fff;
    padding-bottom: 1px
}

.cpaprx-top-header-right {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap
}

.cpaprx-top-header-cta,
.cpaprx-top-header-email {
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    gap: 8px
}

.cpaprx-top-header-right a {
    color: #fff;
    text-decoration: none;
    transition: opacity .3s;
    font-weight: 400;
    white-space: nowrap
}

.cpaprx-top-header-email:hover,
.cpaprx-top-header-right a:hover {
    opacity: .8
}

.cpaprx-top-header-email {
    align-items: center;
    font-size: 14px;
    transition: opacity .3s
}

.cpaprx-top-header-email i {
    font-size: 14px
}

.cpaprx-top-header-cta {
    background: 0 0;
    border: 1px solid #fff;
    padding: 8px 14px;
    border-radius: 999px;
    font-weight: 800 !important;
    font-size: 13px;
    align-items: center;
    transition: transform .2s, background-color .2s
}

.cpaprx-top-header-cta:hover {
    background: #d12e1f
}

@media (max-width:479px) {

    .cpaprx-top-header,
    .cpaprx-top-header-email i {
        font-size: 12px
    }

    .cpaprx-top-header-content {
        padding: 8px 0;
        flex-direction: column;
        gap: 8px
    }

    .cpaprx-promo-carousel {
        width: 100%;
        justify-content: center
    }

    .cpaprx-carousel-btn {
        font-size: 14px;
        padding: 2px 6px
    }

    .cpaprx-promo-item {
        font-size: 11px;
        text-align: center
    }

    .cpaprx-top-header-right {
        width: 100%;
        justify-content: center;
        gap: 12px;
        font-size: 11px;
        flex-wrap: wrap
    }

    .cpaprx-top-header-right a {
        font-size: 11px
    }

    .cpaprx-top-header-email {
        font-size: 11px;
        gap: 6px
    }

    .cpaprx-top-header-email span {
        display: none
    }

    .cpaprx-top-header-cta {
        padding: 6px 10px;
        font-size: 11px;
        gap: 4px
    }
}

@media (min-width:480px) and (max-width:767px) {

    .cpaprx-top-header,
    .cpaprx-top-header-email i {
        font-size: 13px
    }

    .cpaprx-top-header-content {
        padding: 8px 0;
        flex-direction: column;
        gap: 10px
    }

    .cpaprx-promo-carousel {
        width: 100%
    }

    .cpaprx-carousel-btn {
        font-size: 15px;
        padding: 3px 7px
    }

    .cpaprx-promo-item,
    .cpaprx-top-header-right a {
        font-size: 12px
    }

    .cpaprx-top-header-right {
        width: 100%;
        justify-content: center;
        gap: 16px;
        flex-wrap: wrap
    }

    .cpaprx-top-header-cta,
    .cpaprx-top-header-email {
        font-size: 12px;
        gap: 6px
    }

    .cpaprx-top-header-email span {
        display: inline
    }

    .cpaprx-top-header-cta {
        padding: 7px 12px
    }
}

@media (min-width:768px) and (max-width:991px) {
    .cpaprx-top-header-content {
        padding: 9px 0
    }

    .cpaprx-top-header-right {
        gap: 18px;
        flex-wrap: wrap
    }

    .cpaprx-top-header-email,
    .cpaprx-top-header-right a {
        font-size: 13px
    }

    .cpaprx-top-header-cta {
        padding: 7px 12px;
        font-size: 12px
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .cpaprx-top-header-right {
        gap: 20px;
        flex-wrap: wrap
    }

    .cpaprx-top-header-email {
        font-size: 13px
    }
}

@media (min-width:1200px) and (max-width:1399px) {
    .cpaprx-top-header-content {
        padding: 10px 0
    }

    .cpaprx-top-header-email {
        font-size: 14px
    }
}

@media (min-width:1400px) {

    .cpaprx-top-header,
    .cpaprx-top-header-email {
        font-size: 15px
    }

    .cpaprx-top-header-content {
        padding: 12px 0
    }

    .cpaprx-top-header-right {
        gap: 28px
    }
}

@media (max-width:767px) and (orientation:landscape) {
    .cpaprx-top-header-content {
        flex-direction: row;
        padding: 6px 0
    }

    .cpaprx-top-header-right {
        width: auto;
        gap: 12px
    }

    .cpaprx-promo-carousel {
        width: auto
    }
}

@media (-webkit-min-device-pixel-ratio:2),
(min-resolution:192dpi) {
    .cpaprx-top-header {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale
    }
}

@media (min-width:1920px) {
    .cpaprx-top-header {
        font-size: 16px
    }

    .cpaprx-top-header-right {
        gap: 32px
    }

    .cpaprx-top-header-cta {
        padding: 9px 16px;
        font-size: 14px
    }
}

.cpaprx-main-navbar {
    display: flex;
    gap: 20px
}

.cpap-reviews-wrapper,
.cpaprx-cart-wrapper,
.cpaprx-dropdown-help,
.cpaprx-dropdown-resources,
.dropdown-help,
.dropdown-resources,
.fp-slider-outer {
    position: relative
}

.cpaprx-dropdown-help>a,
.cpaprx-dropdown-resources>a {
    display: flex;
    align-items: center;
    gap: 4px
}

.cpaprx-dropdown-menu-help,
.cpaprx-dropdown-menu-resources {
    position: absolute;
    top: 100%;
    right: 0;
    background-color: #fff;
    min-width: 180px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .15);
    border-radius: 8px;
    padding: 12px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: .3s;
    z-index: 2000
}

.cpaprx-dropdown-help:hover .cpaprx-dropdown-menu-help,
.cpaprx-dropdown-resources:hover .cpaprx-dropdown-menu-resources {
    opacity: 1;
    visibility: visible;
    transform: translateY(0)
}

.cpaprx-dropdown-menu-help a,
.cpaprx-dropdown-menu-resources a {
    display: block;
    padding: 8px 20px;
    color: #333;
    font-size: 14px;
    transition: background-color .2s
}

.cpaprx-cart-btn:hover,
.cpaprx-dropdown-menu-help a:hover,
.cpaprx-dropdown-menu-resources a:hover,
.cpaprx-mobile-nav-close:hover,
.cpaprx-nav-item>a:hover,
.cpaprx-phone-link:hover,
.cpaprx-search-close:hover,
.cpaprx-sign-in-btn:hover {
    background-color: #f5f5f5;
    color: #e94132
}

.cpaprx-upper-middle-header {
    background-color: #fff;
    position: relative;
    z-index: 1002;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    border-bottom: 1px solid #f0f0f0
}

.cpaprx-upper-middle-header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    box-shadow: 0 4px 16px rgba(0, 0, 0, .08);
    transition: .4s cubic-bezier(.4, 0, .2, 1)
}

.cpaprx-upper-middle-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    gap: 32px
}

.cpaprx-logo {
    display: flex;
    align-items: center;
    flex-shrink: 0
}

.cpaprx-logo img {
    height: 50px;
    width: auto
}

.cpaprx-search-bar-wrapper {
    flex: 1;
    max-width: 600px
}

.cpaprx-search-bar-cpap {
    position: relative;
    width: 70%
}

.cpaprx-search-bar-cpap input {
    width: 100%;
    padding: 12px 50px 12px 20px;
    font-size: 15px;
    border: 2px solid #e0e0e0;
    border-radius: 50px;
    outline: 0;
    transition: .3s;
    font-family: inherit
}

.cpaprx-search-bar-cpap input:focus,
.cpaprx-search-box-overlay input:focus {
    border-color: #e94132;
    box-shadow: 0 0 0 4px rgba(233, 65, 50, .1)
}

.cpaprx-search-bar-cpap button {
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
    background-color: #e94132;
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    cursor: pointer;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .3s
}

.cpaprx-phone-link,
.cpaprx-sign-in-btn {
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap
}

.cpaprx-search-bar-cpap button:hover {
    background-color: #d12e1f
}

.cpaprx-header-actions {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-shrink: 0
}

.cpaprx-phone-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #1a1a1a;
    font-size: 15px;
    padding: 8px 12px;
    transition: .2s
}

.cpaprx-cart-btn,
.cpaprx-sign-in-btn {
    transition: .2s;
    align-items: center;
    display: flex;
    color: #1a1a1a
}

.cpaprx-phone-icon,
.cpx-badge i {
    font-size: 18px
}

.cpaprx-sign-in-btn {
    font-size: 15px;
    padding: 8px 16px;
    gap: 6px
}

.cpaprx-cart-btn {
    background: 0 0;
    border: none;
    cursor: pointer;
    font-size: 22px;
    padding: 8px;
    border-radius: 6px;
    justify-content: center
}

.cpaprx-cart-badge {
    background-color: #e94132;
    color: #fff;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    font-size: 11px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -5px;
    right: -5px
}

.cpaprx-mobile-menu-toggle {
    display: none;
    flex-direction: column;
    gap: 4px;
    cursor: pointer;
    padding: 8px;
    border-radius: 6px;
    transition: background-color .2s;
    background: 0 0;
    border: none
}

.cpaprx-mobile-menu-toggle:hover {
    background-color: #f5f5f5
}

.cpaprx-mobile-menu-toggle span {
    width: 24px;
    height: 2.5px;
    background-color: #1a1a1a;
    border-radius: 3px;
    transition: .3s
}

.cpaprx-mobile-menu-toggle.active span:first-child {
    transform: rotate(45deg) translate(6px, 6px)
}

.cpaprx-mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0
}

.cpaprx-mobile-menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px)
}

.cpaprx-lower-middle-header {
    background-color: #fff;
    position: relative;
    z-index: 1001;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06)
}

.cpaprx-lower-middle-header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    transition: .4s cubic-bezier(.4, 0, .2, 1)
}

.cpaprx-lower-middle-content {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    justify-content: center;
    align-items: center
}

.cpaprx-nav-desktop {
    display: flex;
    align-items: center;
    gap: 0
}

.cpaprx-nav-item {
    position: static
}

.cpaprx-nav-item>a {
    color: #1a1a1a;
    text-decoration: none;
    font-size: 12.5px;
    font-weight: 600;
    padding: 16px 18px;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: .2s;
    white-space: nowrap
}

.cpaprx-dropdown-arrow {
    font-size: 10px;
    transition: transform .2s
}

.cpaprx-nav-item:hover .cpaprx-dropdown-arrow,
.e9k5_faq_item.active .r8m2_faq_question i {
    transform: rotate(180deg)
}

.cpaprx-mega-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    max-height: 50vh;
    background-color: #fff;
    box-shadow: 0 8px 32px rgba(0, 0, 0, .12);
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s cubic-bezier(.4, 0, .2, 1), visibility .3s cubic-bezier(.4, 0, .2, 1), margin-top .3s cubic-bezier(.4, 0, .2, 1);
    margin-top: 16px;
    border-radius: 0 0 12px 12px;
    overflow-y: auto;
    overflow-x: hidden;
    border: 1px solid #f0f0f0;
    z-index: 2000;
    scroll-behavior: smooth
}

.cpaprx-mega-dropdown::-webkit-scrollbar {
    width: 6px
}

.cpaprx-mega-dropdown::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px
}

.cpaprx-mega-dropdown::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 10px
}

.cpaprx-mega-dropdown::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8
}

.cpaprx-nav-item:hover .cpaprx-mega-dropdown {
    opacity: 1;
    visibility: visible;
    margin-top: 0
}

.cpaprx-mega-dropdown-content {
    max-width: 1320px;
    margin: 0 auto;
    padding: 20px 24px 16px
}

.cpaprx-mega-dropdown-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) 360px;
    gap: 24px;
    align-items: start
}

.cpaprx-subcategories {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    align-items: start;
    align-content: start
}

.cpaprx-subcategory-items {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border-radius: 8px;
    transition: .2s;
    cursor: pointer;
    text-decoration: none;
    color: inherit
}

.cpaprx-subcategory-items:hover {
    background-color: #f8f9fa;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .08)
}

.cpaprx-subcategory-items.cpaprx-subcategory-item-featured {
    position: relative;
    overflow: hidden;
    transform: scale(1.04);
    background: linear-gradient(145deg, #d4dff0 0, #c5d4ed 40%, #b8cae8 100%);
    border: 3px solid #0a2b62;
    border-left: 6px solid #e94132;
    border-radius: 12px;
    padding: 20px 20px 20px 22px;
    box-shadow: 0 0 0 1px rgba(233, 65, 50, .2), 0 0 24px rgba(233, 65, 50, .25), 0 8px 32px rgba(10, 43, 98, .35), inset 0 2px 0 rgba(255, 255, 255, .8)
}

.cpaprx-subcategory-items.cpaprx-subcategory-item-featured::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 75%;
    background: linear-gradient(165deg, rgba(255, 255, 255, .6) 0, rgba(255, 255, 255, .25) 35%, transparent 75%);
    border-radius: 12px 12px 0 0;
    pointer-events: none
}

.cpaprx-subcategory-items.cpaprx-subcategory-item-featured::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 55%;
    height: 55%;
    background: radial-gradient(ellipse 85% 75% at 100% 100%, rgba(233, 65, 50, .18) 0, transparent 60%);
    pointer-events: none
}

.cpaprx-subcategory-featured-corner-image {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100px;
    height: 100px;
    object-fit: contain;
    object-position: bottom right;
    opacity: .9;
    pointer-events: none
}

.cpaprx-subcategory-items.cpaprx-subcategory-item-featured .cpaprx-subcategory-title {
    color: #0a2b62;
    font-weight: 800;
    font-size: 16px;
    position: relative;
    z-index: 1
}

.cpaprx-subcategory-items.cpaprx-subcategory-item-featured .cpaprx-subcategory-desc {
    color: #1a202c;
    font-size: 12px;
    position: relative;
    z-index: 1
}

.cpaprx-subcategory-items.cpaprx-subcategory-item-featured .cpaprx-subcategory-image {
    box-shadow: 0 5px 18px rgba(10, 43, 98, .3);
    border: 1px solid rgba(10, 43, 98, .2);
    position: relative;
    z-index: 1
}

.cpaprx-subcategory-items.cpaprx-subcategory-item-featured:hover {
    background: linear-gradient(145deg, #c5d4ed 0, #b0c4e8 50%, #b8cae8 100%);
    box-shadow: 0 0 0 2px rgba(233, 65, 50, .35), 0 0 32px rgba(233, 65, 50, .35), 0 12px 40px rgba(10, 43, 98, .4), inset 0 2px 0 rgba(255, 255, 255, .8)
}

.cpaprx-subcategory-recommended-tag {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    display: inline-block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    color: #fff;
    background: #e94132;
    border: 2px solid #fff;
    padding: 7px 16px;
    border-radius: 6px;
    text-transform: uppercase;
    box-shadow: 0 4px 14px rgba(233, 65, 50, .5), 0 0 0 1px rgba(233, 65, 50, .3)
}

.cpaprx-product-images,
.cpaprx-subcategory-image {
    width: 60px;
    height: 60px;
    object-fit: contain;
    border-radius: 6px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
    flex-shrink: 0
}

.cpaprx-distribution-text,
.cpaprx-doctor-content,
.cpaprx-education-text,
.cpaprx-feature-content,
.cpaprx-subcategory-info,
.k9r4_step_content {
    flex: 1
}

.cpaprx-subcategory-title {
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 3px;
    font-size: 14px
}

.cpaprx-subcategory-desc {
    font-size: 12px;
    color: #666;
    line-height: 1.3;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis
}

.cpaprx-featured-products {
    border-left: 1px solid #e0e0e0;
    padding-left: 20px;
    width: 100%;
    align-self: start
}

.cpaprx-featured-products-title {
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 10px;
    font-size: 15px
}

.cpaprx-product-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: stretch
}

.cpaprx-product-item {
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr);
    gap: 10px;
    padding: 8px 0;
    border-radius: 8px;
    align-items: start
}

.cpaprx-product-info {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    align-items: flex-start
}

.cpaprx-product-title {
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 4px;
    font-size: 13px;
    line-height: 1.3;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis
}

.cpaprx-product-price {
    color: #e94132;
    font-weight: 700;
    font-size: 15px;
    margin-bottom: 6px
}

.cpaprx-product-actions {
    display: flex;
    gap: 6px;
    flex-wrap: wrap
}

.cpaprx-product-actions .cpaprx-cta-button {
    padding: 6px 12px;
    font-size: 11px
}

.cpaprx-mega-dropdown-footer {
    margin-top: 16px;
    padding: 16px 0 12px;
    border-top: 1px solid #e0e0e0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(to bottom, rgba(245, 247, 250, .3), transparent)
}

.cpaprx-dropdown-features {
    display: flex;
    gap: 28px;
    flex-wrap: wrap
}

.cpaprx-feature-item,
.cpaprx-view-all-link {
    color: #0a2b62;
    gap: 8px;
    transition: .2s;
    border-radius: 6px;
    background: rgba(255, 255, 255, .8);
    display: flex
}

.cpaprx-feature-item {
    align-items: center;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 10px
}

.cpaprx-feature-item:hover {
    background: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .05)
}

.cpaprx-feature-icon,
.s2l4_stat_item {
    text-align: center
}

.cpaprx-view-all-link {
    font-weight: 700;
    text-decoration: none;
    align-items: center;
    padding: 8px 16px
}

.cpaprx-view-all-link:hover {
    color: #e94132;
    background: #fff;
    transform: translateX(4px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .05)
}

.cpaprx-bottom-header {
    background-color: #e94132;
    color: #fff;
    text-align: center;
    padding: 14px 0;
    font-size: 15px;
    font-weight: 600;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    position: relative;
    z-index: 999
}

.cpaprx-bottom-header a {
    color: #fff;
    text-decoration: none;
    margin-left: 8px;
    border-bottom: 2px solid #fff;
    padding-bottom: 2px;
    font-weight: 700;
    transition: opacity .2s
}

.cpaprx-bottom-header a:hover {
    opacity: .9
}

.cpaprx-search-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: #fff;
    z-index: 3000;
    transform: translateY(-100%);
    transition: transform .4s cubic-bezier(.4, 0, .2, 1);
    box-shadow: 0 8px 32px rgba(0, 0, 0, .12);
    overflow-y: scroll
}

.cpaprx-search-overlay.active {
    transform: translateY(0)
}

.cpaprx-search-overlay-content {
    max-width: 1320px;
    margin: 0 auto;
    padding: 24px 20px
}

.cpaprx-search-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px
}

.cpaprx-search-header h2 {
    color: #0a2b62;
    font-size: 20px;
    font-weight: 700
}

.cpaprx-search-close {
    font-size: 32px;
    cursor: pointer;
    color: #666;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: .2s;
    background: 0 0;
    border: none
}

.cpaprx-search-box-overlay {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 14px;
    padding-bottom: 14px;
    border-bottom: 2px solid #0a2b62
}

.cpaprx-search-box-overlay .cpaprx-search-input-icon,
.fp-cards.hidden {
    display: none
}

.cpaprx-search-box-overlay input {
    flex: 1;
    padding: 12px 20px;
    font-size: 15px;
    border: 2px solid #e0e0e0;
    border-radius: 50px;
    outline: 0;
    transition: .3s;
    font-family: inherit
}

.cpaprx-search-box-overlay .cpaprx-search-submit-btn,
.cpaprx-search-box-overlay button {
    padding: 12px 28px;
    background-color: #e94132;
    color: #fff;
    border: none;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s;
    font-family: inherit
}

@media (min-width:768px) {
    .cpaprx-search-box-overlay {
        flex-direction: row;
        align-items: center;
        margin-bottom: 16px;
        padding-bottom: 16px
    }

    .cpaprx-search-box-overlay .cpaprx-search-input-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #666;
        font-size: 18px;
        padding-left: 4px;
        flex-shrink: 0
    }

    .cpaprx-search-box-overlay input {
        margin-bottom: 0
    }

    .cpaprx-search-box-overlay .cpaprx-search-submit-btn,
    .cpaprx-search-box-overlay button {
        flex-shrink: 0
    }
}

.cpaprx-search-quick-top {
    margin-bottom: 14px
}

.cpaprx-search-quick-top-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #666;
    margin-bottom: 8px
}

.cpaprx-search-quick-top-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.cpaprx-search-quick-top-link {
    display: inline-block;
    padding: 8px 14px;
    background-color: #0a2b62;
    color: #fff !important;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    transition: background-color .2s, transform .15s
}

.cpaprx-search-quick-top-link:hover {
    background-color: #0d3a7d;
    color: #fff !important
}

.cpaprx-search-overlay-body {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 0;
    min-height: 160px
}

.cpaprx-search-results-col {
    min-height: 100px
}

.cpaprx-search-results-placeholder .cpaprx-search-placeholder-text {
    color: #666;
    font-size: 14px
}

.cpaprx-search-results-empty,
.cpaprx-search-results-loading {
    color: #666;
    font-size: 15px
}

.cpaprx-search-results-loading {
    display: flex;
    align-items: center;
    gap: 10px
}

.cpaprx-search-spinner {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid #e0e0e0;
    border-top-color: #e94132;
    border-radius: 50%;
    animation: .7s linear infinite cpaprx-spin
}

@keyframes cpaprx-spin {
    to {
        transform: rotate(360deg)
    }
}

.cpaprx-search-suggestions-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    max-height: 320px;
    overflow-y: auto;
    overflow-x: hidden
}

@media (min-width:520px) {
    .cpaprx-search-suggestions-list {
        grid-template-columns: repeat(2, 1fr)
    }
}

.cpaprx-search-suggestion-item {
    margin: 0;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden
}

.cpaprx-search-suggestion-item a:focus,
.cpaprx-search-suggestion-item.highlighted {
    background-color: rgba(233, 65, 50, .08);
    border-color: rgba(233, 65, 50, .3);
    outline: 0
}

.cpaprx-search-suggestion-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    text-decoration: none;
    color: inherit;
    transition: background-color .15s, border-color .15s
}

.cpaprx-search-recommended-link:hover,
.cpaprx-search-suggestion-link:hover {
    background-color: rgba(233, 65, 50, .06)
}

.cpaprx-search-suggestion-img {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    border-radius: 6px;
    overflow: hidden;
    background: #f5f5f5
}

.cpaprx-search-recommended-img img,
.cpaprx-search-suggestion-img img,
.wn8k_profile_image_holder img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.cpaprx-search-suggestion-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    flex: 1
}

.cpaprx-search-suggestion-brand {
    font-size: 11px;
    font-weight: 600;
    color: #0a2b62
}

.cpaprx-search-suggestion-name {
    font-size: 13px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.3;
    display: -webkit-box;
    overflow: hidden
}

.cpaprx-search-suggestion-name .cpaprx-search-highlight {
    background-color: rgba(10, 43, 98, .15);
    padding: 0 2px;
    border-radius: 2px
}

.cpaprx-search-recommended-price,
.cpaprx-search-suggestion-price {
    font-size: 13px;
    font-weight: 700;
    color: #e94132
}

.cpaprx-search-recommended-col {
    border-left: none;
    padding-top: 0
}

@media (min-width:900px) {
    .cpaprx-search-overlay-body {
        grid-template-columns: 1fr 260px
    }

    .cpaprx-search-recommended-col {
        border-left: 1px solid #e0e0e0;
        padding-left: 16px
    }
}

.cpaprx-search-recommended-title {
    color: #0a2b62;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 10px
}

.cpaprx-search-recommended-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.cpaprx-search-recommended-item {
    margin-bottom: 6px
}

.cpaprx-search-recommended-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
    text-decoration: none;
    color: inherit;
    border-radius: 8px;
    transition: background-color .15s
}

.cpaprx-search-recommended-img {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 6px;
    overflow: hidden;
    background: #f5f5f5
}

.cpaprx-search-recommended-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0
}

.cpaprx-search-recommended-name {
    font-size: 12px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.3;
    display: -webkit-box;
    overflow: hidden
}

.cpaprx-search-recommended-loading {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #666;
    font-size: 14px
}

.cpaprx-search-recommended-loading .cpaprx-search-spinner {
    width: 18px;
    height: 18px
}

@media (max-width:768px) {

    .cpaprx-search-close,
    .cpaprx-search-recommended-img,
    .cpaprx-search-suggestion-img {
        width: 44px;
        height: 44px
    }

    .cpaprx-search-overlay-content {
        padding: 16px 12px
    }

    .cpaprx-search-header,
    .cpaprx-search-quick-top {
        margin-bottom: 12px
    }

    .cpaprx-search-header h2 {
        font-size: 18px
    }

    .cpaprx-search-close {
        font-size: 24px
    }

    .cpaprx-search-box-overlay {
        margin-bottom: 12px;
        padding-bottom: 12px
    }

    .cpaprx-search-box-overlay input {
        padding: 12px 16px;
        font-size: 16px
    }

    .cpaprx-search-box-overlay .cpaprx-search-submit-btn,
    .cpaprx-search-box-overlay button {
        padding: 12px 24px;
        font-size: 14px
    }

    .cpaprx-search-quick-top-label {
        font-size: 11px;
        margin-bottom: 6px
    }

    .cpaprx-search-quick-top-links {
        gap: 6px
    }

    .cpaprx-search-quick-top-link {
        padding: 10px 14px;
        font-size: 12px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center
    }

    .cpaprx-search-overlay-body {
        gap: 14px;
        min-height: 120px
    }

    .cpaprx-search-suggestions-list {
        max-height: 280px
    }

    .cpaprx-search-suggestion-link {
        padding: 10px 12px
    }

    .cpaprx-search-suggestion-name,
    .cpaprx-search-suggestion-price {
        font-size: 12px
    }

    .cpaprx-search-recommended-title {
        font-size: 13px;
        margin-bottom: 8px
    }

    .cpaprx-search-recommended-link {
        padding: 8px 0
    }
}

.cpaprx-mobile-nav {
    position: fixed;
    top: 0;
    right: -100%;
    width: 320px;
    max-width: 90%;
    height: 100vh;
    background-color: #fff;
    box-shadow: -4px 0 24px rgba(0, 0, 0, .15);
    z-index: 3001;
    transition: right .3s cubic-bezier(.4, 0, .2, 1);
    overflow-y: auto;
    padding: 24px
}

.card,
.fp-thumb,
.hero,
.hero-image-wrapper,
.hero-video-wrapper,
.slider-wrapper {
    overflow: hidden
}

.cpaprx-mobile-nav.active {
    right: 0
}

.cpaprx-mobile-nav-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 32px;
    padding-bottom: 16px;
    border-bottom: 2px solid #f0f0f0
}

.cpaprx-mobile-nav-close {
    font-size: 28px;
    cursor: pointer;
    color: #666;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: 0 0;
    border: none;
    transition: .2s
}

.cpaprx-mobile-nav-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .5);
    z-index: 3000;
    opacity: 0;
    transition: opacity .3s
}

.hero-image-bg,
.hero-video {
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%
}

.cpaprx-mobile-nav-overlay.active {
    display: block;
    opacity: 1
}

.cpaprx-mobile-nav-item {
    border-bottom: 1px solid #f0f0f0
}

.cpaprx-mobile-nav-item>a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    width: 100%
}

.cpaprx-mobile-dropdown-content {
    display: none;
    padding-left: 16px;
    padding-bottom: 12px
}

.cpaprx-mobile-dropdown-content.active,
.dropdown-help:hover .dropdown-menu-help,
.dropdown-resources:hover .dropdown-menu-resources,
.hero-media,
.pfq-panel.active {
    display: block
}

.cpaprx-mobile-dropdown-content a {
    display: block;
    padding: 10px 0;
    color: #666;
    text-decoration: none;
    font-size: 14px
}

.cpaprx-mobile-cta {
    margin-top: 24px
}

.cpaprx-mobile-cta .cpaprx-cta-button {
    width: 100%;
    text-align: center
}

.hero {
    position: relative;
    padding: 100px 0;
    color: #243247;
    background: #fff
}

.hero-video-wrapper {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
    display: block
}

.hero-video {
    position: absolute;
    object-fit: cover;
    -o-object-fit: cover
}

.hero-video-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(6, 10, 20, .2) 0, rgba(6, 10, 20, .25) 50%, rgba(6, 10, 20, .35) 100%);
    pointer-events: none
}

.hero-image-wrapper {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none
}

.hero-image-bg {
    position: absolute;
    object-fit: cover;
    object-position: center
}

.hero-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 520px;
    gap: 48px;
    align-items: center
}

.hero-content .eyebrow {
    color: #cbd5db;
    font-size: 15px;
    margin-bottom: 10px;
    font-weight: 500
}

.hero-content h1 {
    color: #fff;
    font-size: 58px;
    line-height: 1.02;
    margin: 0 0 22px;
    font-weight: 800;
    letter-spacing: -1px;
    text-shadow: 0 6px 24px rgba(0, 0, 0, .28)
}

.hero-content p {
    color: rgba(255, 255, 255, .92);
    font-size: 18px;
    margin-bottom: 22px;
    max-width: 520px
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 28px;
    font-weight: 700;
    color: #ffd6d1;
    font-size: 15px
}

.hero-badge i {
    color: #ffd6d1;
    font-size: 20px;
    background: rgba(255, 255, 255, .06);
    padding: 6px;
    border-radius: 50%
}

.hero-buttons {
    display: flex;
    gap: 16px;
    flex-wrap: wrap
}

.hero-button.primary {
    background-color: #e94132;
    color: #fff;
    padding: 14px 30px;
    border-radius: 28px;
    font-weight: 700;
    text-decoration: none;
    display: inline-block;
    transition: transform .18s, box-shadow .18s
}

.hero-button.primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .18)
}

.hero-button.secondary {
    background: 0 0;
    color: #fff;
    border: 2px solid rgba(255, 255, 255, .14);
    padding: 12px 26px;
    border-radius: 28px;
    font-weight: 700;
    text-decoration: none;
    display: inline-block
}

.second-section {
    background: #fbfdff;
    padding: 64px 0 80px;
    color: #243247
}

.second-grid {
    display: flex;
    gap: 24px;
    align-items: flex-start
}

.sticky-panel {
    flex: 0 0 320px;
    background: #0a2b62;
    color: #fff;
    padding: 35px;
    border-radius: 12px;
    position: sticky;
    top: 120px;
    height: fit-content;
    box-shadow: 0 12px 40px rgba(10, 30, 60, .12);
    display: flex;
    flex-direction: column;
    gap: 12px
}

.card,
.nav-btn,
.third-section {
    background: #fff
}

.card,
.cpx-journey-grid,
.cpx-journey-item,
.fp-tabs,
.fp-tabs-wrap {
    position: relative
}

.sticky-panel h3 {
    font-size: 20px;
    line-height: 1.08;
    font-weight: 800;
    margin-bottom: 6px;
    color: #fff
}

.sticky-panel p {
    color: rgba(255, 255, 255, .9);
    font-size: 14px;
    margin-bottom: 10px
}

.nav-btns {
    display: flex;
    gap: 10px;
    margin-top: 6px
}

.nav-btn {
    color: #0a2b62;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border: none;
    font-size: 16px;
    box-shadow: 0 8px 24px rgba(10, 30, 60, .14);
    transition: transform .14s, box-shadow .14s
}

.brand-card,
.card {
    border-radius: 12px;
    text-decoration: none
}

.nav-btn:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 36px rgba(10, 30, 60, .18)
}

.sticky-meta {
    margin-top: 12px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center
}

.sticky-meta .tag {
    background: rgba(255, 255, 255, .08);
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 13px;
    color: rgba(255, 255, 255, .95);
    font-weight: 700
}

.slider-wrapper {
    flex: 1;
    min-height: 220px;
    width: 100%
}

.cards-track {
    display: flex;
    gap: 18px;
    align-items: stretch;
    transition: transform .6s cubic-bezier(.2, .9, .2, 1)
}

.card {
    min-width: 220px;
    flex: 0 0 220px;
    min-height: 320px;
    padding: 16px;
    box-shadow: 0 8px 30px rgba(20, 30, 40, .06);
    text-align: center;
    transition: transform .28s, box-shadow .28s;
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: inherit;
    cursor: pointer
}

.card:hover {
    transform: translateY(-8px)
}

.card img {
    width: 100%;
    height: 160px;
    object-fit: cover;
    border-radius: 8px;
    display: block
}

.card h4,
.feature-card h4 {
    font-size: 15px;
    color: #0a2b62;
    margin: 0;
    font-weight: 800
}

.card p {
    color: #6b7280;
    font-size: 13px;
    margin: 0;
    flex: 1
}

.card .shop-now,
.cpx-journey-icon {
    border-radius: 999px;
    align-items: center
}

.card .shop-now {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 14px;
    display: inline-flex;
    justify-content: center;
    gap: 8px;
    background: rgba(233, 65, 50, .95);
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    padding: 10px 14px;
    transform: translateY(10px);
    opacity: 0;
    transition: transform .28s cubic-bezier(.2, .9, .2, 1), opacity .22s;
    pointer-events: none;
    box-shadow: 0 10px 30px rgba(233, 65, 50, .14)
}

.card:focus .shop-now,
.card:focus-within .shop-now,
.card:hover .shop-now {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto
}

.card:focus {
    outline: rgba(233, 65, 50, .12) solid 3px;
    outline-offset: 4px
}

.cards-footer {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding-top: 14px;
    padding-bottom: 8px
}

.cards-footer .dot {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: rgba(10, 40, 80, .12);
    cursor: pointer;
    transition: transform .18s, background .18s, box-shadow .18s;
    box-shadow: none
}

.cards-footer .dot.active {
    background: #e94132;
    transform: scale(1.2);
    box-shadow: 0 6px 18px rgba(233, 65, 50, .18)
}

.third-section {
    padding: 80px 0;
    color: #243247
}

.cpx-journey-icons {
    background: #f8f9fc;
    padding: 72px 0
}

.cpx-journey-inner,
.masktypes-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center
}

.cpx-journey-head {
    margin-bottom: 40px
}

.cpx-journey-eyebrow {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #0a2b62;
    margin: 0 0 8px
}

.cpx-journey-title {
    font-size: 26px;
    font-weight: 800;
    color: #0a2b62;
    margin: 0
}

.cpx-journey-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 32px;
    margin-bottom: 40px
}

.cpx-journey-grid::before {
    content: '';
    position: absolute;
    left: 5%;
    right: 5%;
    top: 35%;
    height: 2px;
    background: linear-gradient(90deg, rgba(10, 43, 98, .08), rgba(10, 43, 98, .18), rgba(10, 43, 98, .08));
    z-index: 0
}

.cpx-journey-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    z-index: 1
}

.cpx-journey-icon {
    width: 80px;
    height: 80px;
    display: flex;
    justify-content: center;
    background: #fff;
    border: 1px solid rgba(10, 43, 98, .08);
    box-shadow: 0 10px 24px rgba(10, 43, 98, .08);
    color: #0a2b62;
    font-size: 34px;
    transition: transform .22s, box-shadow .22s, background-color .22s, color .22s
}

.cpx-journey-label {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #0a2b62;
    margin: 0;
    transition: color .22s
}

.cpx-journey-item:hover .cpx-journey-icon {
    transform: translateY(-4px) scale(1.03);
    box-shadow: 0 16px 32px rgba(10, 43, 98, .14);
    background: linear-gradient(135deg, #0a2b62, #102f6e);
    color: #fff
}

.cpx-journey-item:hover .cpx-journey-label,
.jk3n_guide_card:hover .nx8r_arrow_icon i,
.r4t8_breadcrumb a:hover {
    color: #e94132
}

.cpx-journey-cta {
    margin-top: 8px
}

.cpx-journey-btn {
    display: inline-block;
    padding: 14px 36px;
    border-radius: 999px;
    background-color: #e94132;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(233, 65, 50, .35);
    transition: transform .18s, box-shadow .18s, background-color .18s
}

.cpx-journey-btn:hover {
    background-color: #c93427;
    transform: translateY(-1px);
    box-shadow: 0 16px 36px rgba(233, 65, 50, .45)
}

.cpx-journey-btn:focus-visible {
    outline: #0a2b62 solid 2px;
    outline-offset: 2px
}

.brand-slider-wrapper {
    overflow: hidden;
    width: 100%;
    position: relative
}

.brand-track {
    display: flex;
    gap: 18px;
    align-items: center;
    transition: transform linear
}

.brand-card {
    background: #fff;
    min-width: 200px;
    flex: 0 0 200px;
    min-height: 120px;
    padding: 12px 16px;
    border: 1px solid #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .28s, box-shadow .28s;
    color: inherit
}

.brand-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(20, 30, 40, .1)
}

@media (max-width:1024px) {
    .cpaprx-mega-dropdown-grid {
        grid-template-columns: 1fr;
        gap: 18px
    }

    .cpaprx-featured-products {
        border-left: none;
        border-top: 1px solid #e0e0e0;
        padding-left: 0;
        padding-top: 20px
    }

    .cpaprx-mega-dropdown-content {
        padding: 20px 20px 16px
    }

    .cpaprx-subcategories {
        gap: 12px
    }

    .cpaprx-dropdown-features {
        gap: 24px
    }

    .cpaprx-mega-dropdown-footer {
        padding: 16px 0 12px
    }

    .cpx-journey-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 24px 32px
    }

    .cpx-journey-grid::before {
        top: auto;
        bottom: 0
    }

    .upper-middle-content {
        gap: 20px
    }

    .search-bar-cpap-wrapper {
        max-width: 400px
    }

    .search-bar-cpap {
        width: 100%
    }
}

.brand-card img {
    max-width: 100%;
    max-height: 70px;
    object-fit: contain;
    display: block
}

.fp-feature .fp-head,
.third-section .section-title {
    text-align: center;
    margin-bottom: 18px
}

.third-section .section-title h2 {
    font-size: 20px;
    color: #0a2b62;
    font-weight: 800;
    margin: 0 0 12px;
    letter-spacing: .2px
}

.features-section {
    background: #fff;
    padding: 60px 0;
    color: #243247
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    align-items: stretch
}

.feature-card {
    background: #fff;
    border-radius: 12px;
    padding: 22px;
    text-align: center;
    box-shadow: 0 12px 30px rgba(20, 30, 40, .06);
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    justify-content: center;
    min-height: 130px
}

.feature-card .icon {
    font-size: 34px;
    color: #e94132;
    background: rgba(233, 65, 50, .06);
    width: 64px;
    height: 64px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px
}

.feature-card p {
    color: #6b7280;
    font-size: 14px;
    margin: 0
}

@media (max-width:1100px) {
    .card {
        min-width: 200px;
        flex: 0 0 200px;
        min-height: 300px
    }

    .card .shop-now {
        left: 12px;
        right: 12px;
        bottom: 12px;
        padding: 9px 12px;
        font-size: 13px
    }

    .brand-card {
        min-width: 180px;
        flex: 0 0 180px;
        min-height: 110px
    }

    .brand-card img {
        max-height: 60px
    }

    .features-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 18px
    }
}

@media (max-width:900px) {
    .cpaprx-search-overlay {
        max-height: 100vh;
        overflow-y: auto
    }

    .cpaprx-search-overlay-body,
    .cpaprx-subcategories {
        grid-template-columns: 1fr
    }

    .cpaprx-search-recommended-col {
        border-left: none;
        border-top: 1px solid #e0e0e0;
        padding-left: 0;
        padding-top: 14px
    }

    .cpaprx-nav-desktop,
    .cta-button,
    .nav-desktop,
    .phone-link span:not(.phone-icon),
    .sign-in-btn span:not(:first-child) {
        display: none
    }

    .cpaprx-mobile-menu-toggle,
    .mobile-menu-toggle {
        display: flex
    }

    .cpaprx-search-bar-cpap {
        width: 100%
    }

    .features-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px
    }

    .feature-card {
        padding: 18px
    }

    .third-section .section-title h2 {
        font-size: 18px
    }

    .upper-middle-content {
        flex-wrap: wrap;
        gap: 16px
    }

    .logo {
        order: 1
    }

    .search-bar-cpap-wrapper {
        order: 3;
        flex: 1 1 100%;
        max-width: 100%;
        margin-top: 10px
    }

    .header-actions {
        order: 2;
        margin-left: auto
    }

    .hero-grid {
        grid-template-columns: 1fr;
        gap: 24px
    }

    .hero-media {
        order: 2;
        display: none
    }

    .hero-content {
        order: 1;
        text-align: left
    }

    .hero-content h1 {
        font-size: 36px;
        color: #fff;
        text-shadow: none
    }

    .hero-content p {
        color: #fff
    }

    .hero-video-overlay {
        background: linear-gradient(180deg, rgba(6, 10, 20, .48) 0, rgba(6, 10, 20, .72) 100%)
    }

    .second-grid {
        flex-direction: column
    }

    .sticky-panel {
        position: relative;
        top: 0;
        margin-bottom: 24px
    }
}

@media (max-width:640px) {
    .card {
        min-width: 170px;
        flex: 0 0 170px;
        min-height: 240px
    }

    .card img {
        height: 120px
    }

    .card .shop-now {
        bottom: 10px;
        left: 10px;
        right: 10px;
        font-size: 12px;
        padding: 8px 10px
    }

    .cards-footer .dot {
        width: 9px;
        height: 9px
    }

    .cpx-journey-icons {
        padding: 56px 0
    }

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

    .cpx-journey-grid::before {
        display: none
    }

    .cpx-journey-icon {
        width: 70px;
        height: 70px;
        font-size: 28px
    }

    .cpx-journey-label {
        font-size: 13px
    }

    .cpx-journey-btn {
        width: 100%;
        max-width: 360px
    }

    .brand-card {
        min-width: 140px;
        flex: 0 0 140px;
        min-height: 90px
    }

    .brand-card img {
        max-height: 48px
    }

    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px
    }

    .feature-card {
        padding: 14px;
        min-height: 110px
    }

    .feature-card .icon {
        width: 54px;
        height: 54px;
        font-size: 28px
    }
}

@media (max-width:420px) {
    .features-grid {
        grid-template-columns: 1fr;
        gap: 12px
    }

    .features-inner {
        padding: 0 12px
    }

    .feature-card {
        flex-direction: row;
        align-items: center;
        gap: 14px;
        text-align: left;
        padding: 12px
    }

    .feature-card .icon {
        width: 46px;
        height: 46px;
        font-size: 20px;
        border-radius: 10px
    }

    .feature-card h4 {
        font-size: 15px
    }

    .feature-card p {
        font-size: 13px
    }
}

.fp-feature {
    background: #fbfdff;
    padding: 64px 0 48px;
    color: #243247
}

.fp-feature .fp-head .eyebrow {
    color: #6c7b86;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 6px
}

.fp-feature .fp-head h2 {
    color: #0a2b62;
    font-size: 32px;
    margin: 0 0 6px;
    font-weight: 800
}

.cpap-faq-head p.cpap-lead,
.cpap-reviews-head p.cpap-lead,
.fp-feature .fp-head p.lead {
    color: #5a6470;
    font-size: 15px;
    margin: 0 auto;
    max-width: 900px
}

.fp-tabs-wrap {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 30px
}

.fp-tabs {
    display: flex;
    gap: 12px;
    background: 0 0;
    padding: 6px;
    border-radius: 34px;
    z-index: 2
}

.fp-tab {
    padding: 10px 20px;
    border-radius: 28px;
    background: 0 0;
    color: #0a2b62;
    font-weight: 800;
    border: 1px solid rgba(10, 40, 90, .06);
    cursor: pointer;
    transition: .18s;
    font-size: 14px
}

.fp-tab:focus {
    outline: rgba(10, 40, 90, .08) solid 3px;
    outline-offset: 3px
}

.fp-tab.active {
    background: linear-gradient(180deg, #0a2b62, #083058);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 14px 34px rgba(10, 30, 60, .1);
    border-color: transparent
}

.fp-indicator {
    position: absolute;
    height: 6px;
    background: linear-gradient(90deg, #0a2b62 0, #0a2b62 70%, #e94132 100%);
    border-radius: 6px;
    bottom: -8px;
    left: 0;
    width: 0;
    transition: transform .22s cubic-bezier(.2, .9, .2, 1), width .22s, opacity .22s;
    opacity: .95;
    pointer-events: none
}

.fp-cards-wrap {
    margin-top: 6px
}

.fp-bottom-cta {
    text-align: center;
    margin-top: 8px
}

.fp-view-all-btn {
    display: inline-block;
    padding: 12px 26px;
    border-radius: 28px
}

.fp-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: start
}

.fp-card {
    background: #fff;
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 14px 34px rgba(15, 25, 40, .04);
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-decoration: none;
    color: inherit;
    transition: transform .18s, box-shadow .18s;
    position: relative;
    border: 1px solid #f3f6fb;
    min-height: 460px;
    justify-content: space-between
}

.fp-price-wrap,
.fp-thumb {
    display: flex;
    align-items: center
}

.fp-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 28px 54px rgba(15, 25, 40, .1)
}

.mask-card:hover,
.maskfit-step:hover {
    transform: translateY(-6px)
}

.fp-badges {
    position: absolute;
    left: 16px;
    top: 16px;
    display: flex;
    gap: 8px;
    z-index: 4
}

.fp-badge {
    background: #e94132;
    color: #fff;
    font-weight: 800;
    font-size: 12px;
    padding: 6px 8px;
    border-radius: 8px;
    box-shadow: 0 6px 18px rgba(233, 65, 50, .08);
    white-space: nowrap
}

.fp-badge.ghost {
    background: rgba(10, 40, 80, .06);
    color: #0a2b62;
    box-shadow: none;
    font-weight: 700
}

.fp-thumb {
    height: 220px;
    border-radius: 10px;
    justify-content: center
}

.cpap-rv-product .cpap-thumb img,
.dlx-thumb img,
.fp-thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block
}

.fp-title {
    font-size: 16px;
    font-weight: 800;
    color: #0a2b62;
    margin: 0;
    line-height: 1.2;
    min-height: 48px
}

.fp-sub {
    color: #58656f;
    font-size: 13px;
    margin: 0;
    min-height: 36px
}

.fp-price-wrap {
    justify-content: space-between;
    gap: 8px;
    margin-top: 4px
}

.dlx-price,
.fp-price {
    color: #e94132;
    font-weight: 900;
    font-size: 18px
}

.dlx-old,
.fp-old {
    color: #98a0aa;
    text-decoration: line-through;
    font-weight: 700;
    font-size: 13px
}

.cpx-badge,
.cpx-insurance-right a,
.cpx-rx-cta .cpx-btn,
.fp-cta,
.mask-card .learn {
    text-decoration: none
}

.fp-cta {
    margin-top: 12px;
    display: block;
    text-align: center;
    background: #0a2b62;
    color: #fff;
    padding: 12px;
    border-radius: 12px;
    font-weight: 800
}

@media (max-width:1100px) {
    .fp-cards {
        grid-template-columns: repeat(3, 1fr)
    }

    .fp-thumb {
        height: 180px
    }

    .fp-card {
        min-height: 420px
    }
}

@media (max-width:800px) {
    .fp-cards {
        grid-template-columns: repeat(2, 1fr)
    }

    .fp-card {
        min-height: 400px
    }
}

.fp-slider-arrow {
    display: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid rgba(10, 43, 98, .2);
    background: #fff;
    color: #0a2b62;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .08);
    transition: background .2s, color .2s, box-shadow .2s;
    -webkit-tap-highlight-color: transparent
}

.fp-slider-arrow:hover {
    background: #0a2b62;
    color: #fff;
    box-shadow: 0 6px 16px rgba(10, 43, 98, .25)
}

.fp-slider-prev {
    left: 4px
}

.fp-slider-next {
    right: 4px
}

@media (max-width:768px) {
    .cpaprx-promo-carousel {
        justify-content: flex-start
    }

    .cpaprx-upper-middle-content {
        flex-wrap: wrap;
        gap: 16px
    }

    .cpaprx-search-bar-wrapper {
        order: 3;
        max-width: 100%;
        flex: 0 0 100%
    }

    .cpaprx-mega-dropdown-footer {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start
    }

    .cpaprx-dropdown-features {
        flex-direction: column;
        gap: 16px
    }

    .fp-slider-outer {
        padding-left: 48px;
        padding-right: 48px;
        margin-left: -12px;
        margin-right: -12px
    }

    .fp-slider-arrow {
        display: flex
    }

    .fp-cards-wrap {
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        margin: 0 -4px
    }

    .fp-cards-wrap::-webkit-scrollbar {
        display: none
    }

    .fp-feature .fp-cards {
        display: flex !important;
        flex-wrap: nowrap;
        grid-template-columns: unset;
        gap: 16px;
        padding: 4px 4px 12px;
        scroll-snap-type: x mandatory
    }

    .fp-feature .fp-cards.hidden {
        display: none !important
    }

    .fp-feature .fp-card {
        flex: 0 0 280px;
        min-width: 280px;
        max-width: 280px;
        scroll-snap-align: start;
        scroll-snap-stop: always
    }

    .fp-feature .fp-thumb {
        height: 160px
    }
}

@media (max-width:768px) {
    .hero {
        padding: 40px 0
    }

    .hero-content h1 {
        font-size: 32px
    }

    .hero-content p {
        font-size: 16px
    }

    .hero-buttons {
        flex-direction: column;
        align-items: flex-start
    }

    .hero-button.primary,
    .hero-button.secondary {
        width: 100%;
        text-align: center
    }

    .carousel-btn,
    .top-header-right {
        display: none
    }

    .promo-carousel {
        justify-content: center
    }
}

.subscribe-section {
    background: #fbfdff;
    padding: 64px 0 72px;
    color: #243247
}

.subscribe-grid {
    display: grid;
    grid-template-columns: 520px 1fr;
    gap: 80px;
    align-items: center
}

.subscribe-image {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(10, 30, 60, .06);
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px
}

.subscribe-image img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover
}

.maskfit-content .eyebrow,
.subscribe-content .eyebrow {
    color: #6c7b86;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: .6px
}

.subscribe-content h2 {
    color: #0a2b62;
    font-size: 32px;
    margin: 0 0 14px;
    font-weight: 800;
    line-height: 1.06
}

.subscribe-content p.lead {
    color: #5a6470;
    font-size: 16px;
    margin-bottom: 20px;
    max-width: 680px
}

.subscribe-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 24px;
    margin-bottom: 24px
}

.subscribe-list li {
    list-style: none;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    color: #3f4a57;
    font-size: 14px
}

.subscribe-list li .icon {
    min-width: 36px;
    min-height: 36px;
    border-radius: 10px;
    background: rgba(10, 40, 90, .06);
    color: #0a2b62;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0
}

.subscribe-cta-row {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    margin-top: 6px;
    flex-direction: column
}

.sleeptest-note,
.subscribe-note {
    color: #6b7280;
    font-size: 13px
}

.blog-section,
.maskfit-steps-section,
.sleeptest-section {
    background: #fff;
    padding: 72px 0;
    color: #243247
}

.sleeptest-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 420px 1fr;
    gap: 48px;
    align-items: center
}

.maskfit-aside,
.sleeptest-image {
    display: flex;
    align-items: center;
    justify-content: center
}

.sleeptest-image .frame {
    width: 360px;
    height: 360px;
    border-radius: 12px;
    padding: 14px;
    background: linear-gradient(180deg, #f7f9fc, #fff);
    box-shadow: 0 18px 44px rgba(10, 30, 60, .06);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(10, 40, 90, .06)
}

.sleeptest-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
    display: block
}

.sleeptest-content .eyebrow {
    color: #6c7b86;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .6px;
    margin-bottom: 10px
}

.cpx-rx-head .cpx-eyebrow,
.dlx-eyebrow {
    letter-spacing: .5px;
    text-transform: uppercase
}

.sleeptest-content h2 {
    color: #0a2b62;
    font-size: 32px;
    line-height: 1.04;
    margin: 0 0 14px;
    font-weight: 800
}

.sleeptest-content p.lead {
    color: #5a6470;
    font-size: 15px;
    margin-bottom: 18px;
    max-width: 720px
}

.sleeptest-steps {
    list-style: none;
    padding-left: 0;
    margin: 0 0 20px;
    color: #3f4a57;
    font-size: 14px
}

.sleeptest-steps li {
    margin-bottom: 10px;
    display: flex;
    gap: 12px;
    align-items: flex-start
}

.sleeptest-steps .num {
    min-width: 30px;
    height: 30px;
    border-radius: 999px;
    background: rgba(233, 65, 50, .08);
    color: #e94132;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    flex-shrink: 0;
    margin-top: 2px
}

.sleeptest-cta-row {
    display: flex;
    gap: 18px;
    align-items: center;
    margin-top: 6px;
    flex-wrap: wrap
}

.sleeptest-features {
    display: flex;
    gap: 18px;
    margin-top: 18px;
    flex-wrap: wrap;
    color: #3f4a57;
    font-size: 13px
}

.sleeptest-features .item {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: rgba(10, 40, 90, .04);
    padding: 8px 12px;
    border-radius: 999px;
    font-weight: 700;
    color: #0a2b62
}

.cpap-reviews-section,
.cpx-rx-steps,
.masktypes-section {
    background: #fbfdff;
    padding: 72px 0;
    color: #243247
}

.masktypes-title {
    margin-bottom: 36px
}

.masktypes-title h2 {
    font-size: 32px;
    color: #0a2b62;
    font-weight: 800;
    margin: 0 0 8px
}

.masktypes-title p {
    color: #5a6470;
    font-size: 14px;
    margin: 0 auto;
    max-width: 820px;
    font-weight: 700;
    text-transform: uppercase
}

.masktypes-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    align-items: start
}

.mask-card {
    background: #fff;
    border-radius: 12px;
    padding: 22px;
    box-shadow: 0 12px 30px rgba(20, 30, 40, .06);
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: flex-start;
    transition: transform .18s, box-shadow .18s;
    border: 1px solid #f3f6fb;
    min-height: 260px
}

.mask-card:hover {
    box-shadow: 0 26px 46px rgba(20, 30, 40, .1)
}

.mask-avatar {
    width: 120px;
    height: 120px;
    border-radius: 999px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #fff, #f7fbff);
    border: 4px solid rgba(10, 40, 90, .04);
    box-shadow: 0 10px 28px rgba(10, 30, 60, .06);
    margin-bottom: 4px;
    flex-shrink: 0
}

.cpap-review-media video,
.mask-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.mask-card h3 {
    font-size: 16px;
    color: #0a2b62;
    font-weight: 800;
    margin: 0
}

.mask-card .sub {
    font-size: 13px;
    color: #1f2b36;
    font-weight: 700;
    margin-top: 6px
}

.mask-card p {
    color: #5a6470;
    font-size: 14px;
    margin: 6px 0 0;
    line-height: 1.45;
    flex: 1
}

.mask-card .learn {
    margin-top: 12px;
    align-self: stretch;
    display: inline-flex;
    justify-content: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 999px;
    font-weight: 800;
    color: #0a2b62;
    border: 2px solid rgba(10, 40, 90, .06);
    background: 0 0
}

.mask-card .learn:hover {
    background: rgba(10, 40, 90, .04);
    transform: translateY(-2px)
}

.maskfit-steps-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 520px;
    gap: 40px;
    align-items: center
}

.maskfit-content h2 {
    color: #0a2b62;
    font-size: 32px;
    line-height: 1.06;
    margin: 0 0 12px;
    font-weight: 800
}

.maskfit-content p.lead {
    color: #5a6470;
    font-size: 15px;
    margin-bottom: 18px;
    max-width: 680px
}

.maskfit-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: 8px
}

.maskfit-step {
    background: linear-gradient(180deg, #fff, #fbfdff);
    border: 1px solid #f3f6fb;
    border-radius: 12px;
    padding: 16px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    box-shadow: 0 10px 28px rgba(10, 30, 60, .04);
    transition: transform .16s
}

.maskfit-step .step-icon {
    min-width: 52px;
    height: 52px;
    border-radius: 10px;
    background: rgba(10, 40, 90, .06);
    color: #0a2b62;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 800;
    flex-shrink: 0
}

.maskfit-step h4 {
    margin: 0;
    font-size: 15px;
    color: #0a2b62;
    font-weight: 800
}

.maskfit-step p {
    margin: 6px 0 0;
    color: #5a6470;
    font-size: 14px;
    line-height: 1.45
}

.maskfit-aside .img-frame {
    width: 100%;
    max-width: 460px;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 20px 48px rgba(10, 30, 60, .08);
    border: 1px solid rgba(10, 40, 90, .04);
    background: linear-gradient(180deg, #fff, #f7fbff)
}

.maskfit-aside img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block
}

.maskfit-cta-row {
    margin-top: 20px;
    display: flex;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap
}

.cpap-guide-library {
    background: linear-gradient(135deg, #0a2b62 0, #1a4a8a 100%);
    border-radius: 20px;
    padding: 60px 80px;
    max-width: 1320px;
    margin: 0 auto;
    position: relative;
    overflow: hidden
}

.cpap-guide-library::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 40%;
    height: 100%;
    background: linear-gradient(135deg, rgba(233, 65, 50, .1) 0, transparent 100%);
    pointer-events: none
}

.guide-container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px
}

.guide-content {
    flex: 1;
    max-width: 750px
}

.guide-content h1 {
    color: #fff;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 20px
}

.guide-content p {
    color: rgba(255, 255, 255, .95);
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 24px
}

.guides-available {
    color: rgba(255, 255, 255, .85);
    font-size: 14px;
    font-weight: 600;
    margin-top: 8px
}

.guides-available strong {
    color: #fff;
    font-weight: 800
}

.guide-cta {
    flex-shrink: 0;
    align-self: center
}

@media (max-width:1024px) {
    .cpap-guide-library {
        padding: 50px 60px
    }

    .guide-content h1 {
        font-size: 36px
    }
}

@media (max-width:768px) {
    .cpap-guide-library {
        padding: 40px
    }

    .guide-container {
        flex-direction: column;
        gap: 30px
    }

    .guide-content h1 {
        font-size: 32px
    }

    .guide-content p {
        font-size: 15px
    }

    .guide-cta {
        align-self: flex-start
    }

    .view-guides-btn {
        width: 100%;
        text-align: center
    }
}

.travel-ready-section {
    background: #fff;
    max-width: 1320px;
    margin: 0 auto;
    padding: 80px 0
}

.travel-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center
}

.travel-content {
    padding-right: 20px
}

.travel-content h2 {
    color: #0a2b62;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 24px
}

.travel-content p {
    color: #5a6470;
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 10px
}

.travel-image {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(10, 30, 60, .15)
}

.travel-image img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: 16px
}

@media (max-width:1024px) {
    .travel-container {
        gap: 40px
    }

    .travel-content h2 {
        font-size: 40px
    }

    .travel-content p {
        font-size: 15px
    }
}

@media (max-width:768px) {
    .travel-ready-section {
        padding: 60px 0
    }

    .travel-container {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .travel-content {
        padding-right: 0;
        order: 2
    }

    .travel-image {
        order: 1
    }

    .travel-content h2 {
        font-size: 36px
    }

    .travel-cta-btn {
        width: 100%;
        justify-content: center
    }
}

.blog-head,
.cpap-faq-head,
.cpap-reviews-head,
.cpx-rx-head {
    text-align: center;
    margin-bottom: 28px
}

.cpap-reviews-head .cpap-eyebrow {
    color: #6c7b86;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 8px;
    text-transform: uppercase
}

.cpap-reviews-head h2 {
    color: #0a2b62;
    font-size: 32px;
    font-weight: 800;
    margin: 0 0 6px
}

.cpap-reviews-viewport {
    overflow: hidden
}

.cpap-reviews-track {
    display: flex;
    gap: 28px;
    align-items: stretch;
    transition: transform .6s cubic-bezier(.2, .9, .2, 1);
    padding: 0
}

.cpap-review-card {
    background: #000;
    flex: 0 0 360px;
    min-width: 0;
    aspect-ratio: 9/16;
    border-radius: 18px;
    overflow: hidden;
    position: relative;
    border: 1px solid #eef2f7
}

.cpap-review-media {
    position: absolute;
    inset: 0
}

.cpap-review-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(6, 10, 20, .22) 0, rgba(6, 10, 20, .5) 100%);
    pointer-events: none
}

.cpap-rv-play {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .92);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0a2b62;
    font-size: 26px;
    font-weight: 900;
    box-shadow: 0 12px 34px rgba(10, 30, 60, .22);
    cursor: pointer;
    transition: transform .18s, box-shadow .18s;
    z-index: 3;
    border: none
}

.cpap-rv-btn,
.cpap-rv-product {
    position: absolute;
    background: #fff
}

.cpap-rv-play:hover {
    transform: translate(-50%, -50%) scale(1.06);
    box-shadow: 0 18px 44px rgba(10, 30, 60, .28)
}

.cpap-rv-play.paused i,
.cpap-rv-play.playing i {
    display: inline-block
}

.cpap-rv-product {
    left: 18px;
    right: 18px;
    bottom: 16px;
    border-radius: 16px;
    padding: 12px 14px;
    box-shadow: 0 18px 44px rgba(15, 20, 40, .18);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    z-index: 2;
    border: 1px solid #eef2f7
}

.cpap-rv-product .cpap-left {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0
}

.cpap-rv-product .cpap-thumb {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    overflow: hidden;
    background: #f7f9fc;
    border: 1px solid #eef2f7;
    flex-shrink: 0
}

.cpap-rv-product .cpap-meta {
    min-width: 0
}

.cpap-rv-product .cpap-title {
    color: #0a2b62;
    font-weight: 800;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 340px
}

.cpap-rv-product .cpap-cta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    flex-shrink: 0;
    min-width: fit-content
}

.cpap-faq-question,
.cpap-rv-btn {
    cursor: pointer;
    align-items: center
}

.cpap-rv-product .cpap-price {
    color: #e94132;
    font-weight: 900;
    font-size: 14px
}

.cpap-rv-product .cpap-shop {
    color: #0a2b62;
    font-weight: 800;
    font-size: 13px;
    text-decoration: none;
    border-bottom: 2px solid rgba(10, 43, 98, .15);
    white-space: nowrap;
    display: inline-block
}

.cpap-rv-product .cpap-shop:hover {
    color: #e94132;
    border-bottom-color: #e94132
}

.cpap-rv-btn {
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid #eef2f7;
    display: inline-flex;
    justify-content: center;
    color: #0a2b62;
    box-shadow: 0 10px 28px rgba(10, 30, 60, .16);
    transition: transform .16s, box-shadow .16s;
    z-index: 10
}

.jk3n_guide_card,
.uh9v_card_image {
    transform: translateZ(0);
    will-change: transform
}

.cpap-faq-item,
.cpx-stat {
    border: 1px solid #f3f6fb
}

.cpap-rv-btn:hover {
    transform: translateY(-50%) translateY(-2px);
    box-shadow: 0 16px 40px rgba(10, 30, 60, .22)
}

.cpap-rv-btn.cpap-prev {
    left: -25px
}

.cpap-rv-btn.cpap-next {
    right: -25px
}

.cpap-rv-btn:disabled {
    opacity: .5;
    cursor: not-allowed
}

@media (max-width:1100px) {
    .cpap-review-card {
        flex: 0 0 320px;
        min-width: 320px
    }
}

@media (max-width:820px) {
    .cpap-review-card {
        flex: 0 0 280px;
        min-width: 280px
    }

    .cpap-rv-btn.cpap-prev {
        left: 0
    }

    .cpap-rv-btn.cpap-next {
        right: 0
    }
}

.cpap-faq-section {
    background: #fbfdff;
    padding: 80px 0
}

.cpap-faq-head .cpap-eyebrow {
    color: #6c7b86;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 8px
}

.cpap-faq-head h2 {
    color: #0a2b62;
    font-weight: 800;
    font-size: 32px;
    margin: 0 0 6px
}

.cpap-faq-grid {
    display: flex;
    gap: 22px;
    align-items: start
}

.cpap-faq-column {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 16px
}

.cpap-faq-item {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(20, 30, 40, .06);
    overflow: hidden;
    transition: box-shadow .2s
}

.cpap-faq-item:hover {
    box-shadow: 0 12px 30px rgba(20, 30, 40, .1)
}

.cpap-faq-question {
    width: 100%;
    text-align: left;
    background: 0 0;
    border: none;
    padding: 16px 18px;
    display: flex;
    justify-content: space-between;
    gap: 14px;
    color: #0a2b62;
    font-weight: 800;
    font-size: 15px
}

.blog-cta,
.cpx-rx-cta,
.cpx-stats-grid,
.dlx-hero {
    text-align: center
}

.cpap-faq-question:focus {
    outline: rgba(10, 40, 90, .08) solid 3px;
    outline-offset: 2px
}

.cpap-faq-chevron {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(10, 40, 90, .06);
    color: #0a2b62;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform .18s, background .18s;
    flex-shrink: 0
}

.cpap-faq-item.cpap-open .cpap-faq-chevron {
    transform: rotate(180deg);
    background: rgba(233, 65, 50, .12);
    color: #e94132
}

.cpap-faq-answer {
    padding: 0 18px;
    max-height: 0;
    overflow: hidden;
    color: #5a6470;
    font-size: 14px;
    line-height: 1.5;
    transition: max-height .3s, padding .3s
}

.cpap-faq-item.cpap-open .cpap-faq-answer {
    max-height: 200px;
    padding: 20px 18px 16px
}

.cpx-stats-band {
    background: #fff;
    border-top: 1px solid #eef2f7;
    border-bottom: 1px solid #eef2f7;
    padding: 48px 0;
    color: #243247
}

.cpx-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px
}

.cpx-stat {
    background: linear-gradient(180deg, #fff, #fbfdff);
    border-radius: 14px;
    padding: 22px;
    box-shadow: 0 10px 26px rgba(15, 25, 40, .04)
}

.blog-card,
.cpx-rx-card {
    box-shadow: 0 12px 30px rgba(20, 30, 40, .06)
}

.cpx-stat .cpx-kpi {
    color: #0a2b62;
    font-size: 28px;
    font-weight: 900;
    line-height: 1
}

.cpx-stat .cpx-label {
    color: #5a6470;
    font-size: 14px;
    margin-top: 6px
}

.cpx-rx-head .cpx-eyebrow {
    color: #6c7b86;
    font-size: 14px;
    font-weight: 700
}

.cpx-rx-head h2 {
    color: #0a2b62;
    font-size: 32px;
    font-weight: 800;
    margin: 6px 0 0
}

.cpx-rx-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    align-items: stretch
}

.cpx-rx-card {
    background: #fff;
    border: 1px solid #f3f6fb;
    border-radius: 14px;
    padding: 20px
}

.cpx-rx-icon {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: rgba(10, 40, 90, .06);
    color: #0a2b62;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 12px
}

.cpx-insurance-inner,
.cpx-insurance-left {
    display: flex;
    gap: 18px;
    align-items: center
}

.cpx-rx-card h3 {
    font-size: 16px;
    color: #0a2b62;
    font-weight: 800;
    margin: 0 0 6px
}

.cpx-rx-card p {
    color: #5a6470;
    font-size: 14px;
    margin: 0
}

.cpx-rx-cta {
    margin-top: 20px
}

.cpx-rx-cta .cpx-btn {
    background: #e94132;
    color: #fff;
    padding: 12px 22px;
    border-radius: 28px;
    font-weight: 800;
    display: inline-block
}

.cpx-app-waitlist button:hover,
.cpx-footer-news button:hover,
.cpx-insurance-right a:hover,
.cpx-rx-cta .cpx-btn:hover {
    background: #d12e1f;
    transform: translateY(-2px)
}

.cpx-insurance-banner {
    background: linear-gradient(90deg, #0a2b62 0, #1a4a8a 100%);
    color: #fff;
    padding: 36px 0
}

.cpx-insurance-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    justify-content: space-between;
    flex-wrap: wrap
}

.cpx-insurance-left {
    flex-wrap: wrap
}

.cpx-insurance-pill {
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .18);
    padding: 10px 14px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 800;
    white-space: nowrap
}

.cpx-insurance-right a {
    background: #e94132;
    color: #fff;
    padding: 12px 18px;
    border-radius: 999px;
    font-weight: 800
}

@media (max-width:740px) {
    .cpx-insurance-inner {
        flex-direction: column;
        align-items: flex-start
    }
}

.cpx-app-coming {
    background: linear-gradient(135deg, #0a2b62 0, #1a4a8a 100%);
    color: #fff;
    padding: 80px 0;
    position: relative;
    overflow: hidden
}

.cpx-app-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 460px;
    gap: 48px;
    align-items: center
}

.cpx-app-copy .cpx-eyebrow {
    color: rgba(255, 255, 255, .85);
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .6px;
    text-transform: uppercase
}

.cpx-app-copy h2 {
    font-size: 34px;
    font-weight: 800;
    line-height: 1.1;
    margin: 6px 0 10px;
    color: #fff
}

.cpx-app-copy p {
    color: rgba(255, 255, 255, .95);
    font-size: 16px;
    margin: 0 0 14px;
    max-width: 760px
}

.cpx-app-badges {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: 10px 0 14px
}

.cpx-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 12px;
    padding: 10px 14px;
    color: rgba(255, 255, 255, .8);
    font-weight: 800;
    cursor: default
}

.cpx-badge small {
    font-weight: 700;
    opacity: .85
}

.cpx-app-waitlist {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 8px
}

.cpx-app-waitlist input {
    flex: 1 1 280px;
    min-width: 220px;
    max-width: 520px;
    padding: 14px 16px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, .25);
    background: rgba(255, 255, 255, .08);
    color: #fff;
    outline: 0
}

.cpx-app-waitlist input::placeholder {
    color: rgba(255, 255, 255, .8)
}

.cpx-app-waitlist button {
    background: #e94132;
    border: none;
    color: #fff;
    padding: 14px 18px;
    border-radius: 12px;
    font-weight: 800;
    cursor: pointer
}

.cpx-app-waitlist button:disabled {
    opacity: .8;
    cursor: not-allowed;
    transform: none
}

.cpx-app-waitlist-msg {
    margin-top: 12px;
    padding: 12px 16px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    max-width: 520px
}

.cpx-app-waitlist-msg--success {
    background: rgba(34, 197, 94, .2);
    color: #bbf7d0;
    border: 1px solid rgba(34, 197, 94, .4)
}

.cpx-app-waitlist-msg--error {
    background: rgba(239, 68, 68, .2);
    color: #fecaca;
    border: 1px solid rgba(239, 68, 68, .4)
}

.cpx-app-visual img {
    width: 100%;
    height: auto;
    max-height: 550px;
    display: block;
    object-fit: contain
}

.cpx-footer {
    background: #0a2b62;
    color: #fff;
    border-top: 4px solid #e94132
}

.cpx-footer-top {
    max-width: 1320px;
    margin: 0 auto;
    padding: 48px 24px;
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 26px
}

.cpx-footer-brand h3 {
    font-size: 22px;
    font-weight: 900;
    margin: 0 0 8px
}

.cpx-footer-brand p {
    color: rgba(255, 255, 255, .9);
    font-size: 14px;
    margin: 0 0 14px
}

.cpx-footer-news {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.cpx-footer-news input {
    flex: 1 1 240px;
    min-width: 200px;
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, .2);
    background: rgba(255, 255, 255, .06);
    color: #fff;
    outline: 0
}

.cpx-footer-news input::placeholder {
    color: rgba(255, 255, 255, .85)
}

.cpx-footer-news button {
    background: #e94132;
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 12px 16px;
    font-weight: 800;
    cursor: pointer
}

.blog-card,
.cpx-footer-social a {
    background: #fff;
    text-decoration: none
}

.cpx-footer-col h4 {
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .4px;
    text-transform: uppercase;
    margin: 6px 0 12px;
    color: #fff
}

.cpx-footer-links {
    list-style: none;
    padding: 0;
    margin: 0
}

.cpx-footer-links li {
    margin: 8px 0
}

.cpx-footer-links a {
    color: rgba(255, 255, 255, .92);
    text-decoration: none;
    font-size: 14px
}

.cpx-footer-links a:hover {
    color: #ffd6d1
}

.cpx-footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, .16);
    padding: 16px 24px
}

.cpx-footer-bottom-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap
}

.cpx-footer-legal {
    color: rgba(255, 255, 255, .85);
    font-size: 13px
}

.cpx-footer-social {
    display: flex;
    gap: 10px;
    align-items: center
}

.cpx-footer-social a {
    width: 36px;
    height: 36px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0a2b62;
    border: 1px solid rgba(255, 255, 255, .5)
}

.cpx-footer-social a:hover {
    transform: translateY(-2px)
}

.cpx-footer-pay {
    display: flex;
    gap: 10px;
    align-items: center;
    color: rgba(255, 255, 255, .9)
}

.cpx-footer-pay .cpx-pay {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 13px
}

@media (max-width:980px) {
    .sleeptest-inner {
        grid-template-columns: 1fr;
        gap: 28px;
        text-align: left
    }

    .sleeptest-image {
        order: 1;
        justify-content: flex-start
    }

    .maskfit-content,
    .sleeptest-content {
        order: 2
    }

    .sleeptest-image .frame {
        width: 260px;
        height: 260px
    }

    .sleeptest-content h2 {
        font-size: 32px
    }

    .masktypes-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px
    }

    .mask-avatar {
        width: 100px;
        height: 100px
    }

    .masktypes-title h2 {
        font-size: 24px
    }

    .maskfit-steps-inner {
        grid-template-columns: 1fr;
        gap: 28px
    }

    .cpx-footer-top,
    .maskfit-steps {
        grid-template-columns: 1fr 1fr
    }

    .maskfit-content h2 {
        font-size: 30px
    }

    .maskfit-aside {
        order: 1
    }

    .maskfit-aside .img-frame {
        max-width: 360px
    }

    .cpx-app-inner {
        grid-template-columns: 1fr
    }

    .cpx-app-copy h2 {
        font-size: 28px
    }
}

.blog-head .eyebrow {
    color: #6c7b86;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .6px;
    margin-bottom: 8px
}

.blog-meta .left,
.blog-meta .right {
    display: inline-flex;
    font-size: 13px
}

.blog-head h2 {
    color: #0a2b62;
    font-size: 32px;
    font-weight: 800;
    margin: 0 0 8px
}

.blog-head p.lead {
    color: #5a6470;
    font-size: 15px;
    margin: 0 auto;
    max-width: 880px
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    align-items: stretch
}

.blog-card {
    border: 1px solid #f3f6fb;
    border-radius: 14px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform .18s, box-shadow .18s;
    color: inherit
}

.blog-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 54px rgba(15, 25, 40, .1)
}

.blog-thumb {
    position: relative;
    aspect-ratio: 16/9;
    overflow: hidden;
    background: #f7f9fc
}

.blog-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1);
    transition: transform .28s
}

.blog-card:hover .blog-thumb img {
    transform: scale(1.06)
}

.blog-tag {
    position: absolute;
    left: 12px;
    top: 12px;
    background: #e94132;
    color: #fff;
    font-weight: 800;
    font-size: 12px;
    padding: 6px 8px;
    border-radius: 999px;
    box-shadow: 0 8px 22px rgba(233, 65, 50, .18)
}

.blog-body {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1
}

.blog-title {
    font-size: 16px;
    font-weight: 800;
    color: #0a2b62;
    margin: 0;
    line-height: 1.25
}

.blog-excerpt {
    color: #5a6470;
    font-size: 14px;
    margin: 0;
    line-height: 1.6;
    flex: 1
}

.blog-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 4px
}

.blog-meta .right,
.dlx-btn {
    align-items: center;
    text-decoration: none
}

.blog-meta .left {
    gap: 10px;
    color: #6c7b86;
    font-weight: 600
}

.blog-meta .right {
    gap: 8px;
    color: #0a2b62;
    font-weight: 800;
    border-bottom: 2px solid rgba(10, 43, 98, .15)
}

.blog-meta .right i {
    font-size: 12px;
    transition: transform .16s
}

.blog-card:hover .blog-meta .right i {
    transform: translateX(2px)
}

.blog-cta {
    margin-top: 22px
}

@media (max-width:1100px) {
    .blog-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

.main-navbar {
    display: flex;
    gap: 20px;
    padding: 15px 30px
}

.dropdown-menu-help,
.dropdown-menu-resources {
    display: none;
    position: absolute;
    background-color: #fff;
    min-width: 180px;
    box-shadow: 0 8px 16px rgba(0, 0, 0, .15);
    border-radius: 6px;
    top: 100%;
    left: 0
}

.main-navbar a {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    position: relative;
    padding: 8px 10px
}

.main-navbar i {
    margin-left: 6px;
    font-size: 12px
}

.dropdown-menu-resources {
    z-index: 9999999 !important
}

.dropdown-menu-help a,
.dropdown-menu-resources a {
    color: #063a6b;
    padding: 10px 15px;
    display: block;
    text-decoration: none;
    font-size: 14px
}

.dropdown-menu-help a:hover,
.dropdown-menu-resources a:hover {
    background-color: #f0f0f0
}

.dropdown-menu-help {
    z-index: 999999999 !important
}

.dlx-page {
    color: #243247
}

.dlx-eyebrow {
    color: #6c7b86;
    font-weight: 700;
    font-size: 14px
}

.dlx-title-xl {
    color: #0a2b62;
    font-weight: 900;
    font-size: 42px;
    line-height: 1.15
}

.dlx-title-lg {
    color: #0a2b62;
    font-weight: 800;
    font-size: 32px;
    line-height: 1.2
}

.dlx-lead {
    color: #5a6470;
    font-size: 16px;
    line-height: 1.7
}

.dlx-btn {
    appearance: none;
    border: none;
    cursor: pointer;
    display: inline-flex;
    justify-content: center;
    gap: 8px;
    font-weight: 800;
    border-radius: 28px;
    padding: 12px 22px;
    transition: .18s
}

.dlx-btn-primary {
    background: #0a2b62;
    color: #fff
}

.dlx-btn-primary:hover {
    background: #0a2b62;
    transform: translateY(-2px)
}

.dlx-btn-ghost {
    background: 0 0;
    color: #e94132;
    border: 2px solid #e94132;
    cursor: default
}

.dlx-hero {
    background: linear-gradient(180deg, #fff 0, #f7fbff 100%);
    padding: 120px 0 100px
}

.dlx-bundle-copy h3,
.dlx-hero .dlx-title-xl {
    margin: 0 0 10px
}

.dlx-hero .dlx-lead {
    max-width: 860px;
    margin: 0 auto
}

.dlx-features {
    background: #fff;
    padding: 28px 0;
    border-top: 1px solid #f0f2f6;
    border-bottom: 1px solid #f0f2f6
}

.dlx-features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: center
}

.dlx-feature {
    display: flex;
    align-items: center;
    gap: 14px;
    justify-content: center;
    padding: 10px 12px
}

.dlx-feature .ico {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: rgba(10, 43, 98, .06);
    color: #0a2b62;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px
}

.dlx-feature .txt,
.dlx-tab {
    color: #0a2b62;
    font-size: 14px;
    font-weight: 800
}

@media (max-width:900px) {

    .cpx-rx-grid,
    .subscribe-grid,
    .subscribe-list {
        grid-template-columns: 1fr
    }

    .subscribe-grid {
        gap: 20px
    }

    .subscribe-image {
        order: 2
    }

    .subscribe-content {
        order: 1
    }

    .cpap-faq-head h2,
    .cpx-rx-head h2,
    .subscribe-content h2 {
        font-size: 28px
    }

    .cpap-faq-grid {
        flex-direction: column;
        gap: 16px
    }

    .cpx-stats-grid,
    .dlx-features-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

.dlx-featured {
    background: #fff;
    padding: 64px 0
}

.dlx-featured-head {
    text-align: center;
    margin-bottom: 20px
}

.dlx-tabs-wrap {
    display: flex;
    justify-content: center;
    margin: 16px 0 28px;
    position: relative
}

.dlx-tabs {
    display: flex;
    gap: 10px;
    padding: 6px;
    border-radius: 999px;
    background: #f5f7fb;
    border: 1px solid #eef2f7
}

.dlx-tab {
    background: 0 0;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 24px;
    transition: .18s
}

.dlx-card,
.dlx-thumb {
    background: #fff;
    overflow: hidden
}

.dlx-tab:hover {
    background: #e9eef6
}

.dlx-tab.dlx-active {
    background: linear-gradient(180deg, #0a2b62, #083058);
    color: #fff;
    box-shadow: 0 10px 24px rgba(10, 40, 80, .18);
    transform: translateY(-2px)
}

.dlx-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    align-items: start
}

@media (max-width:980px) {
    .dlx-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:560px) {

    .cpx-footer-top,
    .dlx-grid {
        grid-template-columns: 1fr
    }
}

.dlx-card {
    border: 1px solid #f0f3f7;
    border-radius: 14px;
    box-shadow: 0 14px 34px rgba(15, 25, 40, .04);
    display: flex;
    flex-direction: column;
    transition: transform .18s, box-shadow .18s
}

.dlx-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 48px rgba(15, 25, 40, .1)
}

.dlx-thumb {
    position: relative;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center
}

.dlx-badge,
.dlx-timechip {
    position: absolute;
    top: 10px;
    color: #fff;
    padding: 6px 8px;
    border-radius: 8px
}

.dlx-badge {
    left: 10px;
    background: #1f9d55;
    font-weight: 800;
    font-size: 12px;
    box-shadow: 0 8px 24px rgba(31, 157, 85, .22)
}

.dlx-timechip {
    right: 10px;
    background: rgba(10, 43, 98, .85);
    font-weight: 700;
    font-size: 11px
}

.dlx-body {
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 8px
}

.dlx-title {
    color: #0a2b62;
    font-weight: 800;
    font-size: 15px;
    line-height: 1.3;
    min-height: 40px
}

.dlx-bundle-price,
.dlx-timer {
    font-weight: 900;
    font-size: 28px
}

.dlx-price-row {
    display: flex;
    align-items: end;
    gap: 8px
}

.dlx-stars {
    color: #f6b400;
    font-size: 28px;
    letter-spacing: 1px;
    text-align: left
}

.dlx-flash,
.dlx-newsletter,
.dlx-trusted,
.pfq-header {
    text-align: center
}

.dlx-quick {
    margin-top: 10px
}

.dlx-quick .dlx-btn {
    width: 100%;
    border-radius: 10px;
    padding: 10px 14px
}

.dlx-bundle {
    background: #fbfdff;
    padding: 64px 0
}

.dlx-bundle-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center
}

.dlx-bundle-card {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 18px 44px rgba(10, 30, 60, .06)
}

.dlx-bundle-media {
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #fff, #f7fbff)
}

.dlx-bundle-media img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.dlx-bundle-copy ul {
    margin: 10px 0 14px 18px;
    color: #5a6470
}

.dlx-bundle-price {
    color: #0a2b62
}

@media (max-width:980px) {
    .dlx-bundle-inner {
        grid-template-columns: 1fr
    }

    .dlx-bundle-media {
        height: 240px
    }
}

.dlx-flash {
    background: #fff;
    padding: 52px 0 18px
}

.dlx-timer {
    display: flex;
    gap: 18px;
    justify-content: center;
    align-items: flex-start;
    color: #0a2b62;
    margin: 10px 0 20px
}

.dlx-timer .unit {
    display: flex;
    flex-direction: column;
    align-items: center
}

.dlx-timer .lbl {
    font-size: 12px;
    color: #6b7280;
    font-weight: 700;
    margin-top: 6px
}

.dlx-banner {
    background: #edf5ff;
    border-top: 1px solid #dce9ff;
    border-bottom: 1px solid #dce9ff;
    padding: 22px 0
}

.dlx-banner-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px
}

.dlx-banner p {
    margin: 0;
    color: #0a2b62;
    font-weight: 800
}

@media (max-width:640px) {

    .maskfit-steps,
    .masktypes-grid {
        grid-template-columns: 1fr
    }

    .mask-card {
        flex-direction: row;
        gap: 16px;
        align-items: center;
        text-align: left;
        min-height: 110px;
        padding: 12px
    }

    .mask-avatar {
        width: 84px;
        height: 84px;
        margin-bottom: 0
    }

    .mask-card h3 {
        font-size: 15px
    }

    .mask-card p,
    .masktypes-title p {
        display: none
    }

    .mask-card .sub {
        font-size: 13px;
        color: #5a6470;
        font-weight: 700
    }

    .mask-card .learn {
        padding: 8px 12px;
        font-size: 13px
    }

    .maskfit-steps-inner {
        padding: 0 16px
    }

    .maskfit-content h2 {
        font-size: 24px
    }

    .maskfit-cta-row {
        flex-direction: column;
        align-items: stretch
    }

    .maskfit-cta,
    .maskfit-ghost {
        width: 100%;
        text-align: center
    }

    .blog-head h2 {
        font-size: 26px
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 16px
    }

    .dlx-banner-inner {
        flex-direction: column;
        align-items: flex-start
    }
}

.dlx-trusted {
    background: #fff;
    padding: 48px 0 26px
}

.dlx-logos {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    align-items: center;
    justify-content: center
}

.dlx-logo {
    width: 54px;
    height: 54px;
    border-radius: 12px;
    background: #f1f5f9;
    border: 1px solid #eef2f7;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #94a3b8
}

.dlx-newsletter {
    background: #fff;
    padding: 58px 0 80px
}

.dlx-news-form {
    margin-top: 16px;
    display: flex;
    gap: 10px;
    justify-content: center
}

.dlx-news-form input {
    width: 260px;
    padding: 12px 14px;
    border: 2px solid #e0e6ef;
    border-radius: 10px;
    outline: 0;
    transition: box-shadow .18s, border .18s;
    font-family: inherit
}

.dlx-news-form input:focus {
    border-color: #0a2b62;
    box-shadow: 0 0 0 4px rgba(10, 43, 98, .08)
}

@media (max-width:520px) {
    .cpap-review-card {
        flex: 0 0 100%;
        min-width: 100%
    }

    .cpap-rv-btn {
        display: inline-flex
    }

    .cpap-rv-btn.cpap-prev {
        left: 5px
    }

    .cpap-rv-btn.cpap-next {
        right: 5px
    }

    .cpx-stats-grid,
    .dlx-features-grid {
        grid-template-columns: 1fr
    }

    .dlx-news-form {
        flex-direction: column;
        align-items: stretch;
        padding: 0 18px
    }

    .dlx-news-form .dlx-btn,
    .dlx-news-form input {
        width: 100%
    }
}

.pfq-section {
    background: var(--gray-50);
    padding: 4rem 0
}

.pfq-container {
    width: min(100% - 32px, 1320px);
    margin: 0 auto
}

.pfq-header {
    margin-bottom: 1.75rem
}

.pfq-title {
    font-size: 2rem;
    font-weight: 800;
    color: var(--gray-900);
    margin-bottom: .25rem;
    letter-spacing: -.02em
}

.pfq-subtitle {
    color: var(--gray-600);
    font-size: 1.05rem
}

.pfq-tabs-wrapper {
    position: relative;
    margin: 1rem auto 2rem
}

.pfq-tabs-nav {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: .75rem;
    background: #fff;
    padding: .75rem;
    border-radius: calc(var(--border-radius) + 4px);
    box-shadow: var(--shadow-md)
}

.pfq-tab-btn {
    display: grid;
    grid-template-columns: 32px 1fr;
    align-items: center;
    gap: .75rem;
    padding: .95rem 1rem;
    background: linear-gradient(180deg, #fff, #fafafa);
    border: 2px solid var(--gray-200);
    border-radius: 16px;
    color: var(--gray-800);
    cursor: pointer;
    transition: .25s;
    text-align: left
}

.pfq-tab-btn i {
    font-size: 1.1rem;
    color: var(--primary-color)
}

.pfq-tab-text strong {
    display: block;
    font-weight: 800;
    line-height: 1.15
}

.pfq-tab-text small {
    display: block;
    color: var(--gray-500);
    font-weight: 600
}

.pfq-panel-head h3,
.pfq-question {
    color: var(--gray-900);
    font-weight: 800
}

.pfq-tab-btn:hover {
    border-color: var(--primary-color);
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm)
}

.pfq-tab-btn.active {
    background: linear-gradient(135deg, var(--primary-color), #0d3270);
    color: #fff;
    border-color: transparent;
    box-shadow: var(--shadow-lg)
}

.cpaprx-testimonial-section .cpaprx-section-heading,
.pfq-tab-btn.active i,
.pfq-tab-btn.active small {
    color: #fff
}

.pfq-tab-indicator {
    position: absolute;
    height: 3px;
    background: var(--primary-color);
    border-radius: 999px;
    bottom: -8px;
    left: 0;
    width: 0;
    box-shadow: 0 2px 12px rgba(15, 58, 130, .35);
    transition: left .25s, width .25s
}

.pfq-panels {
    margin-top: 1rem
}

.pfq-panel[hidden] {
    display: none !important
}

.pfq-panel-head {
    margin-bottom: 1rem
}

.pfq-panel-head h3 {
    font-size: 1.35rem;
    margin-bottom: .25rem
}

.pfq-panel-head p {
    color: var(--gray-600)
}

.bfaq-accordion,
.pfq-accordion {
    display: flex;
    flex-direction: column;
    gap: .75rem
}

.pfq-item {
    background: #fff;
    border: 1px solid var(--gray-200);
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: border-color .2s, box-shadow .2s
}

.pfq-item.open {
    border-color: var(--primary-color);
    box-shadow: var(--shadow-md)
}

.pfq-accordion-toggle {
    width: 100%;
    background: 0 0;
    border: none;
    padding: 1.1rem 1.25rem;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 1rem;
    cursor: pointer
}

.pfq-question {
    text-align: left;
    letter-spacing: -.01em
}

.pfq-icon {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--gray-100);
    color: var(--gray-700);
    transition: transform .2s, background .2s, color .2s
}

.pfq-item.open .pfq-icon {
    background: rgba(15, 58, 130, .1);
    color: var(--primary-color);
    transform: rotate(180deg)
}

.pfq-accordion-content {
    padding: 0 1.25rem;
    max-height: 0;
    overflow: hidden;
    background: #fff;
    transition: max-height .25s, padding .25s
}

.pfq-item.open .pfq-accordion-content {
    padding: .25rem 1.25rem 1.25rem
}

.pfq-accordion-content p {
    color: var(--gray-700);
    line-height: 1.7
}

.bfaq-section {
    background: linear-gradient(135deg, #f8fafc 0, #f1f5f9 100%);
    padding: 4rem 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif
}

.bfaq-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px
}

.bfaq-header,
.cpaprx-section-title {
    text-align: center;
    margin-bottom: 3rem
}

.bfaq-title {
    font-size: 2.5rem;
    font-weight: 800;
    color: #1e293b;
    margin-bottom: .5rem;
    letter-spacing: -.02em
}

.bfaq-subtitle {
    font-size: 1.125rem;
    color: #64748b;
    max-width: 500px;
    margin: 0 auto
}

.bfaq-category-nav {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 3rem;
    flex-wrap: wrap
}

.bfaq-nav-btn {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 1rem 1.5rem;
    background: #fff;
    border: 2px solid #e2e8f0;
    border-radius: 12px;
    color: #475569;
    font-weight: 600;
    cursor: pointer;
    transition: .3s;
    font-size: 1rem
}

.bfaq-nav-btn:hover {
    border-color: #0a2b62;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, .15)
}

.bfaq-nav-btn.active {
    background: #0a2b62;
    border-color: #0a2b62;
    color: #fff;
    box-shadow: 0 8px 20px rgba(59, 130, 246, .25)
}

.bfaq-nav-btn i {
    font-size: 1.1rem;
    transition: transform .3s
}

.bfaq-nav-btn.active i,
.h9k4_video_card:hover .j7m2_video_thumbnail img,
.pv2k_image_circle:hover img,
.yh3p_gallery_item:hover img {
    transform: scale(1.1)
}

.bfaq-content {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(15, 58, 130, .08);
    overflow: hidden
}

.bfaq-panel {
    display: none;
    padding: 2rem
}

.bfaq-panel.active {
    display: block;
    animation: .5s fadeIn
}

.bfaq-item {
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
    transition: .3s
}

.bfaq-item:hover {
    border-color: #cbd5e1;
    box-shadow: 0 4px 12px rgba(15, 58, 130, .05)
}

.bfaq-item.open {
    border-color: #0a2b62;
    box-shadow: 0 8px 20px rgba(59, 130, 246, .1)
}

.bfaq-question {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem;
    background: 0 0;
    border: none;
    cursor: pointer;
    text-align: left;
    transition: background-color .3s
}

.bfaq-question:hover {
    background: #f8fafc
}

.bfaq-question span {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1e293b;
    flex: 1
}

.bfaq-question i {
    color: #64748b;
    transition: .3s;
    font-size: .9rem
}

.bfaq-item.open .bfaq-question i {
    transform: rotate(180deg);
    color: #0a2b62
}

.bfaq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height .4s cubic-bezier(.4, 0, .2, 1)
}

.bfaq-item.open .bfaq-answer {
    max-height: 500px
}

.bfaq-answer p {
    padding: 0 1.5rem 1.5rem;
    color: #475569;
    line-height: 1.7;
    margin: 0;
    font-size: 1.05rem
}

.bfaq-nav-btn:focus-visible,
.bfaq-question:focus-visible {
    outline: #0a2b62 solid 2px;
    outline-offset: 2px
}

@media (prefers-reduced-motion:reduce) {
    * {
        animation-duration: 0s !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0s !important;
        scroll-behavior: auto !important
    }

    .bfaq-answer,
    .bfaq-item,
    .bfaq-nav-btn,
    .pfq-accordion-content,
    .pfq-tab-indicator {
        transition: none
    }

    .bfaq-panel.active {
        animation: none
    }
}

.cpaprx-why-page {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #fff
}

.cpaprx-container,
.mq3p_container_fluid,
.vb3n_container_zone,
.x7b9_container_main {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 20px
}

.cpaprx-hero-section {
    background: linear-gradient(135deg, #0a2b62 0, #1a3d8f 100%);
    color: #fff;
    padding: 100px 0;
    text-align: center;
    position: relative;
    overflow: hidden
}

.cpaprx-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M1200 120L0 16.48 0 0 1200 0 1200 120z" fill="%23ffffff" opacity="0.05"/></svg>') 0 0/cover
}

.cpaprx-hero-content {
    position: relative;
    z-index: 2
}

.cpaprx-hero-title {
    font-size: 3.5rem;
    font-weight: 800;
    margin-bottom: 1.5rem;
    letter-spacing: -.02em
}

.cpaprx-hero-subtitle {
    font-size: 1.25rem;
    max-width: 700px;
    margin: 0 auto 2rem;
    opacity: .9;
    color: #fff
}

.cpaprx-hero-btn {
    display: inline-block;
    background-color: #e94132;
    color: #fff;
    padding: 14px 32px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    font-size: 1.1rem;
    transition: .3s;
    box-shadow: 0 4px 15px rgba(233, 65, 50, .3)
}

.cpaprx-hero-btn:hover,
.hero-button:hover {
    background-color: #d63426;
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(233, 65, 50, .4)
}

.cpaprx-section {
    padding: 80px 0
}

.cpaprx-section-heading {
    font-size: 32px;
    font-weight: 800;
    color: #0a2b62;
    margin-bottom: 1rem;
    letter-spacing: -.02em
}

.cpaprx-section-desc {
    font-size: 1.2rem;
    color: #64748b;
    max-width: 700px;
    margin: 0 auto
}

.cpaprx-distribution-section,
.cpaprx-doctor-section,
.cpaprx-education-section,
.cpaprx-security-section {
    background-color: #fff
}

.cpaprx-doctor-card {
    display: flex;
    align-items: center;
    gap: 4rem;
    background: #fff;
    border-radius: 20px;
    padding: 3rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .08)
}

.cpaprx-doctor-image {
    flex: 0 0 300px;
    border-radius: 15px;
    overflow: hidden
}

.cpaprx-distribution-img,
.cpaprx-doctor-img,
.cpaprx-education-img,
.x4f9_hero_image img,
.x4f9_image_wrapper img {
    width: 100%;
    height: auto;
    display: block
}

.cpaprx-distribution-heading,
.cpaprx-doctor-heading,
.cpaprx-education-heading,
.cpaprx-pricing-heading {
    font-size: 2rem;
    color: #0a2b62;
    margin-bottom: 1.5rem;
    font-weight: 800
}

.cpaprx-doctor-text {
    font-size: 1.1rem;
    color: #475569;
    margin-bottom: 1.5rem;
    line-height: 1.7
}

.cpaprx-doctor-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin-top: 2rem
}

.cpaprx-highlight-item {
    display: flex;
    align-items: center;
    gap: .75rem;
    font-weight: 600;
    color: #0a2b62
}

.cpaprx-highlight-icon {
    color: #e94132;
    font-size: 1.2rem
}

.cpaprx-benefits-section,
.cpaprx-pricing-section {
    background: linear-gradient(135deg, #f8fafc 0, #f1f5f9 100%)
}

.cpaprx-benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 2rem
}

.cpaprx-benefit-card {
    background: #fff;
    border-radius: 20px;
    padding: 2.5rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, .05);
    transition: transform .3s, box-shadow .3s;
    text-align: center;
    border-top: 4px solid #0a2b62;
    position: relative;
    overflow: hidden
}

.cpaprx-benefit-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #0a2b62, #e94132)
}

.cpaprx-benefit-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, .1)
}

.cpaprx-benefit-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #0a2b62, #1a3d8f);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: #fff;
    font-size: 2rem;
    transition: .3s
}

.cpaprx-benefit-card:hover .cpaprx-benefit-icon {
    transform: scale(1.1);
    background: linear-gradient(135deg, #e94132, #ff6b5b)
}

.cpaprx-benefit-title,
.cpaprx-security-title {
    font-size: 1.5rem;
    color: #0a2b62;
    margin-bottom: 1rem;
    font-weight: 700
}

.cpaprx-benefit-desc,
.cpaprx-security-desc {
    color: #64748b;
    line-height: 1.6
}

.cpaprx-distribution-content,
.cpaprx-education-content {
    display: flex;
    align-items: center;
    gap: 4rem
}

.cpaprx-distribution-desc {
    color: #475569;
    margin-bottom: 2rem;
    font-size: 1.1rem;
    line-height: 1.7
}

.cpaprx-distribution-features {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem
}

.cpaprx-feature-item {
    display: flex;
    align-items: center;
    gap: 1rem
}

.cpaprx-feature-icon {
    width: 50px;
    height: 50px;
    background: #0a2b62;
    border-radius: 12px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.2rem;
    flex-shrink: 0
}

.cpaprx-feature-title {
    font-size: 1.25rem;
    color: #0a2b62;
    margin-bottom: .5rem;
    font-weight: 700
}

.cpaprx-feature-desc {
    color: #64748b
}

.cpaprx-distribution-image,
.cpaprx-education-image {
    flex: 0 0 500px;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .1)
}

.cpaprx-testimonial-section {
    background: linear-gradient(135deg, #0a2b62 0, #1a3d8f 100%);
    color: #fff;
    text-align: center
}

.cpaprx-testimonial-section .cpaprx-section-desc {
    color: rgba(255, 255, 255, .8)
}

.cpaprx-testimonial-card {
    max-width: 800px;
    margin: 0 auto;
    background: rgba(255, 255, 255, .1);
    backdrop-filter: blur(10px);
    border-radius: 20px;
    padding: 3rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .2)
}

.cpaprx-testimonial-text {
    font-size: 1.3rem;
    font-style: italic;
    line-height: 1.7;
    margin-bottom: 2rem;
    position: relative
}

.cpaprx-testimonial-text:after,
.cpaprx-testimonial-text:before {
    content: '"';
    font-size: 4rem;
    color: rgba(255, 255, 255, .3);
    position: absolute
}

.cpaprx-testimonial-text:before {
    top: -20px;
    left: -10px
}

.cpaprx-testimonial-text:after {
    bottom: -40px;
    right: -10px
}

.cpaprx-testimonial-author {
    font-weight: 700;
    font-size: 1.1rem
}

.cpaprx-testimonial-role {
    color: rgba(255, 255, 255, .7);
    font-size: 1rem
}

.cpaprx-education-desc {
    color: #64748b;
    margin-bottom: 2rem;
    font-size: 1.1rem;
    line-height: 1.7
}

.cpaprx-social-links {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem
}

.cpaprx-social-link {
    width: 50px;
    height: 50px;
    background: #0a2b62;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.2rem;
    transition: .3s;
    text-decoration: none
}

.cpaprx-price-guarantee,
.cpaprx-security-card {
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, .05)
}

.cpaprx-social-link:hover {
    background: #e94132;
    transform: translateY(-3px)
}

.cpaprx-pricing-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto
}

.cpaprx-pricing-desc {
    color: #64748b;
    font-size: 1.1rem;
    margin-bottom: 2rem;
    line-height: 1.7
}

.cpaprx-price-guarantee {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem 2rem;
    margin-bottom: 2rem
}

.cpaprx-guarantee-icon {
    color: #e94132;
    font-size: 2rem
}

.cpaprx-guarantee-text {
    text-align: left
}

.cpaprx-guarantee-title {
    font-size: 1.3rem;
    color: #0a2b62;
    margin-bottom: .5rem;
    font-weight: 700
}

.cpaprx-guarantee-desc {
    margin: 0;
    font-size: 1rem;
    color: #64748b
}

.cpaprx-security-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem
}

.cpaprx-security-card {
    padding: 2.5rem;
    text-align: center;
    border-top: 4px solid #0a2b62
}

.cpaprx-security-icon {
    width: 70px;
    height: 70px;
    background: #0a2b62;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: #fff;
    font-size: 1.7rem
}

.cpaprx-cta-section {
    background: linear-gradient(135deg, #e94132 0, #ff6b5b 100%);
    color: #fff;
    text-align: center;
    padding: 80px 0
}

.cpaprx-cta-heading {
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 1.5rem;
    color: #fff
}

.cpaprx-cta-desc {
    font-size: 1.2rem;
    max-width: 600px;
    margin: 0 auto 2rem;
    opacity: .9;
    color: #fff
}

.cpaprx-cta-buttons {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap
}

.cpaprx-cta-btn {
    display: inline-block;
    padding: 14px 32px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    font-size: 1.1rem;
    transition: .3s
}

.cpaprx-cta-btn-primary,
.cpaprx-cta-btn-secondary:hover {
    background-color: #fff;
    color: #e94132
}

.cpaprx-cta-btn-secondary {
    background-color: transparent;
    color: #fff;
    border: 2px solid #fff
}

.cpaprx-cta-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(255, 255, 255, .3)
}

@media (max-width:1024px) {

    .cpaprx-benefits-grid,
    .pfq-tabs-nav {
        grid-template-columns: repeat(2, 1fr)
    }

    .cpaprx-distribution-content,
    .cpaprx-doctor-card,
    .cpaprx-education-content {
        flex-direction: column;
        gap: 2rem
    }

    .cpaprx-distribution-image,
    .cpaprx-doctor-image,
    .cpaprx-education-image {
        flex: 1;
        width: 100%;
        max-width: 500px;
        margin: 0 auto
    }

    .cpaprx-hero-title {
        font-size: 2.8rem
    }
}

@media (max-width:768px) {
    .pfq-title {
        font-size: 1.75rem
    }

    .pfq-tab-btn {
        padding: .85rem .9rem
    }

    .bfaq-section {
        padding: 2rem 0
    }

    .bfaq-title,
    .cpaprx-section-heading {
        font-size: 2rem
    }

    .bfaq-category-nav {
        gap: .5rem;
        margin-bottom: 2rem
    }

    .bfaq-nav-btn {
        padding: .75rem 1rem;
        font-size: .9rem
    }

    .bfaq-panel {
        padding: 1.5rem
    }

    .bfaq-question {
        padding: 1.25rem
    }

    .bfaq-question span {
        font-size: 1rem
    }

    .bfaq-answer p {
        padding: 0 1.25rem 1.25rem
    }

    .cpaprx-section {
        padding: 60px 0
    }

    .cpaprx-hero-section {
        padding: 80px 0
    }

    .cpaprx-hero-title {
        font-size: 2.2rem
    }

    .cpaprx-hero-subtitle,
    .cpaprx-testimonial-text {
        font-size: 1.1rem
    }

    .cpaprx-benefit-card,
    .cpaprx-doctor-card,
    .cpaprx-security-card,
    .cpaprx-testimonial-card {
        padding: 2rem
    }

    .cpaprx-benefits-grid {
        grid-template-columns: 1fr
    }
}

@media (max-width:480px) {
    .cpaprx-search-overlay-content {
        padding: 12px 10px
    }

    .cpaprx-search-quick-top-links {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 6px
    }

    .cpaprx-search-quick-top-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        min-height: 44px
    }

    .cpaprx-top-header-right {
        gap: 80px
    }

    .cpaprx-header-actions {
        gap: 0
    }

    .cpaprx-phone-link span:last-child,
    .cpaprx-sign-in-btn span:last-child {
        display: none
    }

    .cpaprx-product-actions {
        flex-direction: column
    }

    .fp-cards,
    .pfq-tabs-nav {
        grid-template-columns: 1fr
    }

    .fp-feature .fp-thumb,
    .fp-thumb {
        height: 140px
    }

    .fp-head h2 {
        font-size: 22px
    }

    .fp-tab {
        padding: 8px 12px
    }

    .fp-slider-outer {
        padding-left: 44px;
        padding-right: 44px
    }

    .fp-slider-arrow {
        width: 40px;
        height: 40px;
        font-size: 14px
    }

    .fp-slider-prev {
        left: 2px
    }

    .fp-slider-next {
        right: 2px
    }

    .fp-feature .fp-card {
        flex: 0 0 260px;
        min-width: 260px;
        max-width: 260px
    }

    .hero-content h1,
    .travel-content h2 {
        font-size: 28px
    }

    .hero-content p {
        font-size: 15px
    }

    .container {
        padding: 0 16px
    }

    .upper-middle-content {
        padding: 12px 0
    }

    .logo img {
        height: 40px
    }

    .header-actions {
        gap: 12px
    }

    .phone-link,
    .sign-in-btn {
        padding: 6px 8px
    }

    .cart-btn {
        padding: 6px
    }

    .sleeptest-image .frame {
        width: 220px;
        height: 220px
    }

    .guide-content h1,
    .sleeptest-content h2 {
        font-size: 26px
    }

    .guides-available,
    .sleeptest-steps {
        font-size: 13px
    }

    .sleeptest-cta-row {
        flex-direction: column;
        align-items: stretch
    }

    .sleeptest-cta {
        width: 100%;
        text-align: center
    }

    .sleeptest-cta.secondary {
        width: 100%
    }

    .cpap-guide-library {
        padding: 30px 24px;
        border-radius: 16px
    }

    .guide-content p {
        font-size: 14px
    }

    .view-guides-btn {
        padding: 14px 28px;
        font-size: 14px
    }

    .travel-ready-section {
        padding: 40px 0
    }

    .travel-container {
        padding: 0 16px;
        gap: 30px
    }

    .travel-content p {
        font-size: 14px;
        margin-bottom: 24px
    }

    .travel-cta-btn {
        padding: 14px 24px;
        font-size: 14px
    }

    .pfq-icon {
        width: 32px;
        height: 32px
    }

    .bfaq-category-nav,
    .cpaprx-cta-buttons {
        flex-direction: column;
        align-items: center
    }

    .bfaq-nav-btn {
        width: 100%;
        max-width: 280px;
        justify-content: center
    }

    .bfaq-container {
        padding: 0 15px
    }

    .cpaprx-hero-title {
        font-size: 1.8rem
    }

    .cpaprx-section-heading {
        font-size: 1.7rem
    }

    .cpaprx-distribution-heading,
    .cpaprx-doctor-heading,
    .cpaprx-education-heading,
    .cpaprx-pricing-heading {
        font-size: 1.5rem
    }

    .cpaprx-cta-heading {
        font-size: 2rem
    }

    .cpaprx-cta-btn {
        width: 100%;
        max-width: 250px
    }
}

.kw9x_main_wrapper {
    width: 100%;
    padding: 0
}

.zt7p_hero_banner {
    background: linear-gradient(135deg, #0a2b62 0, #0d3570 50%, #164a8a 100%);
    padding: 80px 0;
    position: relative;
    overflow: hidden;
    margin-bottom: 100px;
    z-index: 1
}

.k3m2_hero_guide::before,
.zt7p_hero_banner::before {
    content: '';
    position: absolute;
    top: -30%;
    right: -15%;
    width: 800px;
    height: 800px;
    background: radial-gradient(circle, rgba(233, 65, 50, .12) 0, transparent 65%);
    border-radius: 50%;
    animation: 20s ease-in-out infinite float
}

.zt7p_hero_banner::after {
    content: '';
    position: absolute;
    bottom: -40%;
    left: -10%;
    width: 700px;
    height: 700px;
    background: radial-gradient(circle, rgba(255, 255, 255, .06) 0, transparent 60%);
    border-radius: 50%;
    animation: 25s ease-in-out infinite reverse float
}

.qx7n_decorative_shape {
    position: absolute;
    border-radius: 50%;
    opacity: .08;
    animation: 8s ease-in-out infinite pulse
}

.qx7n_decorative_shape:first-child {
    top: 20%;
    left: 10%;
    width: 60px;
    height: 60px;
    background: #e94132;
    animation-delay: 0s
}

.qx7n_decorative_shape:nth-child(2) {
    top: 60%;
    right: 15%;
    width: 40px;
    height: 40px;
    background: #fff;
    animation-delay: 2s
}

.qx7n_decorative_shape:nth-child(3) {
    bottom: 25%;
    left: 25%;
    width: 80px;
    height: 80px;
    background: #e94132;
    animation-delay: 4s
}

@keyframes pulse {

    0%,
    100% {
        transform: scale(1);
        opacity: .08
    }

    50% {
        transform: scale(1.3);
        opacity: .15
    }
}

.mh5k_hero_content {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 80px;
    align-items: start;
    position: relative;
    z-index: 10
}

.qr8j_text_container {
    color: #fff;
    animation: .8s ease-out slideInLeft
}

.ln2v_welcome_text {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 15px;
    color: rgba(255, 255, 255, .85);
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 12px
}

.ln2v_welcome_text::before {
    content: '';
    width: 50px;
    height: 2px;
    background: linear-gradient(90deg, #e94132 0, transparent 100%)
}

.mv3p_primary_btn,
.wp9t_highlight_text,
.wp9t_highlight_text::before {
    background: linear-gradient(135deg, #e94132 0, #ff6b5e 100%)
}

.df6m_main_title {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 30px;
    letter-spacing: -1.5px
}

.wp9t_highlight_text {
    color: #fff;
    padding: 5px 15px;
    border-radius: 12px;
    display: inline-block;
    position: relative
}

.wp9t_highlight_text::before {
    content: '';
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    border-radius: 15px;
    opacity: .3;
    filter: blur(8px);
    z-index: -1
}

.tb4x_description {
    font-size: 16px;
    line-height: 2;
    color: rgba(255, 255, 255, .9);
    max-width: 680px;
    margin-bottom: 40px
}

.hs8k_cta_group {
    display: flex;
    gap: 20px;
    align-items: center
}

.mv3p_primary_btn,
.tj6r_secondary_btn {
    display: inline-flex;
    padding: 16px 38px;
    color: #fff;
    font-size: 16px;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    font-weight: 600;
    text-decoration: none
}

.mv3p_primary_btn {
    align-items: center;
    gap: 12px;
    border-radius: 50px;
    box-shadow: 0 8px 30px rgba(233, 65, 50, .35);
    border: none;
    cursor: pointer
}

.mv3p_primary_btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 50px rgba(233, 65, 50, .5)
}

.mv3p_primary_btn i,
.ws3n_action_button i,
.zr2k_cta_button i {
    transition: transform .3s
}

.mv3p_primary_btn:hover i,
.ws3n_action_button:hover i,
.zr2k_cta_button:hover i {
    transform: translateX(5px)
}

.tj6r_secondary_btn {
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .1);
    border-radius: 50px;
    border: 2px solid rgba(255, 255, 255, .3);
    backdrop-filter: blur(10px)
}

.k8m2_secondary_btn:hover,
.tj6r_secondary_btn:hover {
    background: rgba(255, 255, 255, .2);
    border-color: rgba(255, 255, 255, .5);
    transform: translateY(-3px)
}

.xn7h_image_cluster {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    padding: 20px;
    animation: 1s ease-out .2s both slideInRight
}

.pv2k_image_circle {
    width: 100%;
    aspect-ratio: 1;
    border-radius: 30px;
    overflow: hidden;
    border: 4px solid rgba(255, 255, 255, .15);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .4);
    transition: .6s cubic-bezier(.4, 0, .2, 1);
    position: relative
}

.pv2k_image_circle::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(233, 65, 50, .2) 0, rgba(10, 43, 98, .2) 100%);
    opacity: 0;
    transition: opacity .4s;
    z-index: 1
}

.pv2k_image_circle:hover {
    transform: translateY(-15px) scale(1.05);
    border-color: #e94132;
    box-shadow: 0 25px 70px rgba(233, 65, 50, .5)
}

.pv2k_image_circle img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1)
}

.pv2k_image_circle:nth-child(3) {
    grid-column: 1/-1;
    max-width: 70%;
    margin: 0 auto
}

.kf8t_section_header {
    text-align: center;
    margin-bottom: 70px;
    position: relative;
    z-index: 2;
    animation: .8s ease-out .4s both fadeInUp
}

.kf8t_section_header::before {
    content: '';
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: linear-gradient(135deg, #e94132 0, #ff6b5e 100%);
    border-radius: 2px
}

.qj3m_section_title {
    font-size: 32px;
    font-weight: 800;
    color: #0a2b62;
    margin-bottom: 20px;
    letter-spacing: -1px
}

.xr9p_section_subtitle {
    font-size: 16px;
    color: #5a6c7d;
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.7
}

.gx5m_guides_section {
    padding: 0 0 120px;
    position: relative;
    z-index: 2
}

.d5f2_features_grid,
.ry8p_cards_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px
}

.jk3n_guide_card {
    position: relative;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .08);
    transition: .6s cubic-bezier(.34, 1.56, .64, 1);
    cursor: pointer;
    background: #fff;
    height: 360px;
    text-decoration: none;
    display: block;
    animation: .6s ease-out both fadeInUp
}

.jk3n_guide_card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(10, 43, 98, .92) 0, rgba(233, 65, 50, .92) 100%);
    opacity: 0;
    transition: opacity .6s cubic-bezier(.4, 0, .2, 1);
    z-index: 2
}

.jk3n_guide_card:hover {
    transform: translateY(-12px);
    box-shadow: 0 30px 80px rgba(10, 43, 98, .25)
}

.uh9v_card_image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s cubic-bezier(.4, 0, .2, 1)
}

.bc7k_card_title,
.fm2w_card_overlay {
    transition: .6s cubic-bezier(.4, 0, .2, 1)
}

.jk3n_guide_card:hover .uh9v_card_image {
    transform: scale(1.12) rotate(2deg)
}

.fm2w_card_overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 35px;
    background: linear-gradient(to top, rgba(10, 43, 98, .98) 0, rgba(10, 43, 98, .7) 70%, transparent 100%);
    z-index: 3
}

.jk3n_guide_card:hover .fm2w_card_overlay {
    background: 0 0;
    bottom: 50%;
    transform: translateY(50%);
    padding: 50px 40px
}

.bc7k_card_title {
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px
}

.jk3n_guide_card:hover .bc7k_card_title {
    font-size: 26px;
    text-align: left !important;
    margin-bottom: 20px
}

.nx8r_arrow_icon {
    width: 38px;
    height: 38px;
    background: #e94132;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .6s cubic-bezier(.68, -.55, .27, 1.55);
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(233, 65, 50, .4)
}

.jk3n_guide_card:hover .nx8r_arrow_icon {
    background: #fff;
    transform: rotate(45deg) scale(1.4);
    box-shadow: 0 8px 25px rgba(255, 255, 255, .3)
}

.nx8r_arrow_icon i {
    font-size: 16px;
    color: #fff;
    transition: color .4s
}

.tv5m_card_description {
    font-size: 15px;
    color: rgba(255, 255, 255, .95);
    line-height: 1.8;
    opacity: 0;
    transform: translateY(30px);
    transition: .6s cubic-bezier(.4, 0, .2, 1) .1s;
    text-align: left
}

.jk3n_guide_card:hover .tv5m_card_description {
    opacity: 1;
    transform: translateY(0)
}

.zp4h_category_badge {
    position: absolute;
    top: 25px;
    left: 25px;
    background: linear-gradient(135deg, #e94132 0, #ff6b5e 100%);
    color: #fff;
    padding: 10px 24px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    z-index: 4;
    box-shadow: 0 6px 20px rgba(233, 65, 50, .4);
    opacity: 0;
    transform: translateX(-30px);
    transition: .6s cubic-bezier(.68, -.55, .27, 1.55)
}

.jk3n_guide_card:hover .zp4h_category_badge {
    opacity: 1;
    transform: translateX(0)
}

@media (max-width:1200px) {
    .vb3n_container_zone {
        max-width: 1140px
    }

    .df6m_main_title {
        font-size: 50px
    }

    .ry8p_cards_grid {
        gap: 35px
    }
}

@media (max-width:992px) {
    .vb3n_container_zone {
        max-width: 960px
    }

    .zt7p_hero_banner {
        padding: 80px 0;
        margin-bottom: 80px
    }

    .mh5k_hero_content {
        grid-template-columns: 1fr;
        gap: 60px
    }

    .xn7h_image_cluster {
        max-width: 600px;
        margin: 0 auto
    }

    .df6m_main_title {
        font-size: 46px
    }

    .tb4x_description {
        font-size: 17px
    }

    .qj3m_section_title {
        font-size: 36px
    }

    .ry8p_cards_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 35px
    }

    .jk3n_guide_card {
        height: 340px
    }
}

.k8s4_text_content p,
.r4t8_breadcrumb {
    margin-bottom: 20px
}

@keyframes fadeIn {
    from {
        transform: translateY(10px);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(50px)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

.jk3n_guide_card:first-child {
    animation-delay: .1s
}

.jk3n_guide_card:nth-child(2),
.qf5m_vision_card {
    animation-delay: .2s
}

.jk3n_guide_card:nth-child(3) {
    animation-delay: .3s
}

.jk3n_guide_card:nth-child(4) {
    animation-delay: .4s
}

.jk3n_guide_card:nth-child(5) {
    animation-delay: .5s
}

.jk3n_guide_card:nth-child(6) {
    animation-delay: .6s
}

.jk3n_guide_card:nth-child(7) {
    animation-delay: .7s
}

.jk3n_guide_card:nth-child(8) {
    animation-delay: .8s
}

.jk3n_guide_card:nth-child(9) {
    animation-delay: .9s
}

.k3m2_hero_guide {
    background: linear-gradient(135deg, #0a2b62 0, #0d3570 50%, #164a8a 100%);
    padding: 100px 0 80px;
    position: relative;
    overflow: hidden
}

.p9f2_hero_content {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 60px;
    align-items: center;
    position: relative;
    z-index: 10
}

.r4t8_breadcrumb {
    font-size: 14px;
    color: rgba(255, 255, 255, .8);
    display: flex;
    align-items: center;
    gap: 10px
}

.r4t8_breadcrumb a {
    color: rgba(255, 255, 255, .9);
    text-decoration: none;
    transition: color .3s
}

.h5j9_guide_title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 25px;
    letter-spacing: -1px;
    color: #fff
}

.m7v1_guide_subtitle {
    font-size: 20px;
    line-height: 1.6;
    color: rgba(255, 255, 255, .9);
    margin-bottom: 40px
}

.d8k3_hero_stats {
    display: flex;
    gap: 40px;
    margin-top: 30px;
    flex-wrap: wrap
}

.n6p7_stat_number {
    font-size: 32px;
    font-weight: 700;
    color: #e94132;
    margin-bottom: 5px
}

.q9r3_stat_label {
    font-size: 14px;
    color: rgba(255, 255, 255, .8);
    text-transform: uppercase;
    letter-spacing: 1px
}

.x4f9_hero_image {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 25px 80px rgba(0, 0, 0, .4);
    transform: perspective(1000px) rotateY(-5deg) rotateX(5deg);
    transition: transform .6s cubic-bezier(.4, 0, .2, 1)
}

.h9k4_video_card,
.s8k9_feature_card {
    transition: transform .3s, box-shadow .3s
}

.x4f9_hero_image:hover {
    transform: perspective(1000px) rotateY(0) rotateX(0)
}

.f4g8_intro_section,
.f8k3_buying_section,
.h4f7_types_section,
.z5f8_table_section {
    padding: 100px 0;
    background: #fff
}

.t5h2_section_container {
    max-width: 1320px;
    margin: 0 auto
}

.v7k9_section_header {
    text-align: center;
    margin-bottom: 60px
}

.l3m4_section_title {
    font-size: 36px;
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 15px
}

.b9j8_section_subtitle {
    font-size: 18px;
    color: #5a6c7d;
    max-width: 600px;
    margin: 0 auto
}

.p2r6_content_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center
}

.k8s4_text_content {
    font-size: 16px;
    line-height: 1.8;
    color: #4a5568
}

.x4f9_image_wrapper {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .1)
}

.g7h3_features_section,
.q4h8_faq_section,
.y8t3_videos_section {
    padding: 100px 0;
    background: #f8f9fc
}

.s8k9_feature_card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .08)
}

.h9k4_video_card:hover,
.s8k9_feature_card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .15)
}

.m3j7_feature_icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #e94132 0, #ff6b5e 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px
}

.h9k4_video_card,
.t9k4_table_container {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .08);
    overflow: hidden
}

.m3j7_feature_icon i {
    font-size: 32px;
    color: #fff
}

.r9t4_feature_title {
    font-size: 20px;
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 15px
}

.p5k8_feature_desc {
    font-size: 15px;
    color: #5a6c7d;
    line-height: 1.6
}

.r7m3_table {
    width: 100%;
    border-collapse: collapse
}

.r7m3_table thead {
    background: linear-gradient(135deg, #0a2b62 0, #0d3570 100%)
}

.r7m3_table th {
    padding: 20px 25px;
    text-align: left;
    color: #fff;
    font-weight: 600;
    font-size: 18px
}

.r7m3_table tbody tr {
    border-bottom: 1px solid #e2e8f0;
    transition: background-color .3s
}

.r7m3_table tbody tr:hover,
.r8m2_faq_question:hover {
    background: #f8f9fc
}

.r7m3_table tbody tr:last-child {
    border-bottom: none
}

.r7m3_table td {
    padding: 25px;
    vertical-align: top
}

.r7m3_table td:first-child {
    font-weight: 600;
    color: #0a2b62;
    width: 25%
}

.r7m3_table td:last-child {
    color: #4a5568;
    line-height: 1.6
}

.tq6m_gallery_grid,
.v5f7_videos_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px
}

.h9k4_video_card {
    cursor: pointer
}

.p8f3_play_button,
.t4k9_video_modal {
    align-items: center;
    transition: .3s;
    display: flex
}

.j7m2_video_thumbnail {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden
}

.j7m2_video_thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s
}

.p8f3_play_button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    background: rgba(233, 65, 50, .9);
    border-radius: 50%;
    justify-content: center;
    color: #fff;
    font-size: 20px
}

.h9k4_video_card:hover .p8f3_play_button {
    background: #e94132;
    transform: translate(-50%, -50%) scale(1.1)
}

.k9r4_video_content {
    padding: 25px
}

.l5m8_video_title {
    font-size: 18px;
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 10px;
    line-height: 1.4
}

.b3f7_video_desc {
    font-size: 14px;
    color: #5a6c7d;
    line-height: 1.6;
    margin-bottom: 15px
}

.n8k2_video_meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
    color: #8a9bad
}

.t4k9_video_modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .9);
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden
}

.t4k9_video_modal.active {
    opacity: 1;
    visibility: visible
}

.m7f3_modal_content {
    position: relative;
    width: 90%;
    max-width: 900px;
    background: #000;
    border-radius: 12px;
    overflow: hidden;
    transform: scale(.8);
    transition: transform .3s
}

.t4k9_video_modal.active .m7f3_modal_content {
    transform: scale(1)
}

.r9d2_modal_iframe {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    position: relative
}

.r9d2_modal_iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none
}

.p5h8_modal_close {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, .2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    transition: .3s;
    z-index: 10
}

.p5h8_modal_close:hover {
    background: #e94132;
    transform: rotate(90deg)
}

.j8d3_types_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px
}

.v9s2_type_card {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .08);
    transition: transform .3s, box-shadow .3s
}

.v9s2_type_card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 50px rgba(0, 0, 0, .15)
}

.k7m4_type_image {
    width: 100%;
    height: 200px;
    object-fit: cover
}

.b8f2_type_title {
    font-size: 22px;
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 15px
}

.n5k7_type_desc {
    font-size: 15px;
    color: #5a6c7d;
    line-height: 1.6;
    margin-bottom: 20px
}

.p8f3_step_number,
.x3m8_type_cta {
    background: linear-gradient(135deg, #e94132 0, #ff6b5e 100%);
    color: #fff
}

.q9r4_type_features {
    list-style: none;
    margin-bottom: 25px
}

.q9r4_type_features li {
    padding: 6px 0;
    color: #4a5568;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    line-height: 1.4
}

.q9r4_type_features li i {
    color: #e94132;
    font-size: 12px;
    margin-top: 4px;
    flex-shrink: 0
}

.x3m8_type_cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 25px;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 14px;
    transition: .3s;
    margin-top: auto;
    width: fit-content
}

.x3m8_type_cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(233, 65, 50, .3)
}

@media (max-width:1200px) {
    .j8d3_types_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px
    }

    .d5f2_features_grid,
    .v5f7_videos_grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:768px) {
    .zt7p_hero_banner {
        padding: 60px 0;
        margin-bottom: 60px
    }

    .df6m_main_title {
        font-size: 38px
    }

    .ln2v_welcome_text,
    .xr9p_section_subtitle {
        font-size: 16px
    }

    .tb4x_description {
        font-size: 16px;
        line-height: 1.8
    }

    .hs8k_cta_group {
        flex-direction: column;
        gap: 15px
    }

    .mv3p_primary_btn,
    .tj6r_secondary_btn {
        width: 100%;
        justify-content: center
    }

    .xn7h_image_cluster {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px
    }

    .pv2k_image_circle:nth-child(3) {
        max-width: 100%
    }

    .gx5m_guides_section {
        padding: 0 0 80px
    }

    .kf8t_section_header {
        margin-bottom: 50px
    }

    .qj3m_section_title {
        font-size: 32px
    }

    .jk3n_guide_card {
        height: 320px
    }

    .b8f2_type_title,
    .bc7k_card_title {
        font-size: 20px
    }

    .jk3n_guide_card:hover .bc7k_card_title {
        font-size: 23px
    }

    .fm2w_card_overlay {
        padding: 28px
    }

    .j8d3_types_grid {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .l3p9_type_content {
        padding: 20px
    }
}

.l3p9_type_content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    height: calc(100% - 200px);
    min-height: 300px
}

.d7j2_steps_container {
    max-width: 900px;
    margin: 0 auto
}

.s4m9_step_item {
    display: flex;
    gap: 40px;
    margin-bottom: 60px;
    align-items: flex-start
}

.s4m9_step_item:last-child {
    margin-bottom: 0
}

.p8f3_step_number {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 700;
    flex-shrink: 0
}

.l5m8_step_title {
    font-size: 24px;
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 15px
}

.b3f7_step_desc {
    font-size: 16px;
    color: #5a6c7d;
    line-height: 1.7;
    margin-bottom: 20px
}

.n8k2_step_tips {
    background: #f8f9fc;
    padding: 20px;
    border-radius: 12px;
    border-left: 4px solid #e94132
}

.n8k2_step_tips h4 {
    font-size: 16px;
    font-weight: 600;
    color: #0a2b62;
    margin-bottom: 10px
}

.n8k2_step_tips ul {
    list-style: none;
    padding-left: 0
}

.n8k2_step_tips li {
    padding: 5px 0;
    color: #4a5568;
    display: flex;
    align-items: flex-start;
    gap: 10px
}

.n8k2_step_tips li i {
    color: #e94132;
    font-size: 12px;
    margin-top: 6px;
    flex-shrink: 0
}

.w7f3_faq_container {
    max-width: 800px;
    margin: 0 auto
}

.e9k5_faq_item {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    margin-bottom: 20px;
    overflow: hidden;
    transition: .3s
}

.e9k5_faq_item:hover {
    border-color: #e94132
}

.r8m2_faq_question {
    padding: 25px 30px;
    font-size: 18px;
    font-weight: 600;
    color: #0a2b62;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background-color .3s
}

.r8m2_faq_question i {
    color: #e94132;
    transition: transform .3s
}

.t7f4_faq_answer {
    padding: 0 30px;
    max-height: 0;
    overflow: hidden;
    transition: .3s;
    font-size: 15px;
    color: #5a6c7d;
    line-height: 1.7
}

.e9k5_faq_item.active .t7f4_faq_answer {
    padding: 0 30px 25px;
    max-height: 500px
}

.m4g9_cta_section {
    padding: 100px 0;
    background: linear-gradient(135deg, #0a2b62 0, #0d3570 100%);
    color: #fff;
    text-align: center
}

.c8f2_cta_content {
    max-width: 700px;
    margin: 0 auto
}

.v9m3_cta_title {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 20px
}

.b5k8_cta_desc {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 40px;
    opacity: .9
}

.n7f4_cta_buttons {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap
}

.h3j9_primary_btn,
.k8m2_secondary_btn {
    display: inline-flex;
    padding: 16px 38px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 16px;
    transition: .3s;
    color: #fff;
    text-decoration: none
}

.h3j9_primary_btn {
    align-items: center;
    gap: 12px;
    background: linear-gradient(135deg, #e94132 0, #ff6b5e 100%)
}

.h3j9_primary_btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(233, 65, 50, .4)
}

.k8m2_secondary_btn {
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .1);
    border: 2px solid rgba(255, 255, 255, .3)
}

.vy8n_hero_section::after,
.vy8n_hero_section::before {
    border-radius: 50%;
    z-index: 0;
    content: '';
    position: absolute
}

@keyframes float {

    0%,
    100% {
        transform: translate(0, 0) scale(1)
    }

    50% {
        transform: translate(30px, -30px) scale(1.1)
    }
}

.healthcare-hero,
.uh5g_progress_container,
.vy8n_hero_section,
.wn8k_profile_image_holder,
.ws3n_action_button,
.yh3p_gallery_item,
.zr2k_cta_button {
    overflow: hidden;
    position: relative
}

.zx9k_primary_wrapper {
    width: 100%;
    background: #fff
}

.vy8n_hero_section {
    padding: 100px 0 80px;
    background: linear-gradient(135deg, #fff 0, #f8f9fc 100%)
}

.vy8n_hero_section::before {
    top: -50%;
    right: -20%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(233, 65, 50, .05) 0, transparent 70%)
}

.vy8n_hero_section::after {
    bottom: -30%;
    left: -10%;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(10, 43, 98, .04) 0, transparent 70%)
}

.lk4r_main_heading {
    font-size: 32px;
    font-weight: 800;
    color: #0a2b62;
    margin-bottom: 80px;
    text-align: center;
    letter-spacing: -1.5px;
    position: relative;
    z-index: 1;
    line-height: 1.2
}

.pw7j_cards_wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
    max-width: 1320px;
    margin: 0 auto;
    position: relative;
    z-index: 1
}

.bn2t_mission_card,
.qf5m_vision_card {
    background: #fff;
    border-radius: 24px;
    padding: 60px 45px;
    text-align: center;
    transition: .5s cubic-bezier(.4, 0, .2, 1);
    box-shadow: 0 4px 20px rgba(0, 0, 0, .06);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
    animation: .6s ease-out fadeInUp
}

.bn2t_mission_card::before,
.qf5m_vision_card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #e94132 0, #ff6b5e 100%);
    transform: scaleX(0);
    transition: transform .5s cubic-bezier(.4, 0, .2, 1)
}

.bn2t_mission_card:hover::before,
.qf5m_vision_card:hover::before {
    transform: scaleX(1)
}

.bn2t_mission_card:hover,
.qf5m_vision_card:hover {
    transform: translateY(-12px);
    box-shadow: 0 20px 60px rgba(10, 43, 98, .15)
}

.xh8v_icon_holder {
    width: 80px;
    height: 80px;
    margin: 0 auto 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    background: linear-gradient(135deg, #e94132 0, #ff6b5e 100%);
    box-shadow: 0 8px 30px rgba(233, 65, 50, .3);
    transition: .4s
}

.bn2t_mission_card:hover .xh8v_icon_holder,
.qf5m_vision_card:hover .xh8v_icon_holder {
    transform: rotateY(360deg) scale(1.1)
}

.xh8v_icon_holder i {
    font-size: 36px;
    color: #fff
}

.rt6k_card_title {
    font-size: 22px;
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 25px;
    letter-spacing: -.5px
}

.dm9p_card_description {
    font-size: 16px;
    color: #64748b;
    line-height: 1.9;
    margin-bottom: 35px;
    flex: 1
}

.ws3n_action_button {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 36px;
    border: 2px solid #0a2b62;
    color: #0a2b62;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 15px;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    cursor: pointer;
    background: 0 0;
    margin-top: auto;
    align-self: center
}

.ws3n_action_button::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #0a2b62;
    transition: width .4s cubic-bezier(.4, 0, .2, 1);
    z-index: -1
}

.ws3n_action_button:hover::before {
    width: 100%
}

.ws3n_action_button:hover {
    color: #fff;
    border-color: #0a2b62;
    transform: translateX(5px)
}

.jt7h_sleep_section {
    background: linear-gradient(180deg, #f8f9fc 0, #fff 100%);
    padding: 120px 0;
    position: relative
}

.nc4q_section_headline {
    font-size: 32px;
    font-weight: 800;
    color: #0a2b62;
    text-align: center;
    margin-bottom: 25px;
    line-height: 1.3;
    letter-spacing: -1px
}

.pz8w_section_subtext {
    font-size: 18px;
    color: #64748b;
    text-align: center;
    max-width: 800px;
    margin: 0 auto 80px;
    line-height: 1.8
}

.fg5n_content_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start
}

.yv2m_about_container {
    padding-right: 40px
}

.hk9x_section_title {
    font-size: 28px;
    font-weight: 700;
    color: #0a2b62;
    margin-bottom: 30px;
    letter-spacing: -.5px;
    position: relative;
    padding-bottom: 20px
}

.hk9x_section_title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 4px;
    background: linear-gradient(90deg, #e94132 0, #ff6b5e 100%);
    border-radius: 2px
}

.bd7l_text_block {
    font-size: 16px;
    color: #475569;
    line-height: 2;
    margin-bottom: 25px
}

.mt3r_team_container {
    padding-left: 40px
}

.qp6z_team_member_card {
    background: #fff;
    border-radius: 30px;
    padding: 50px;
    box-shadow: 0 10px 50px rgba(0, 0, 0, .08);
    transition: .4s
}

.qp6z_team_member_card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 70px rgba(0, 0, 0, .12)
}

.wn8k_profile_image_holder {
    width: 160px;
    height: 160px;
    margin: 0 auto 35px;
    border-radius: 50%;
    border: 5px solid #e94132;
    box-shadow: 0 10px 40px rgba(233, 65, 50, .2);
    transition: .4s
}

.qp6z_team_member_card:hover .wn8k_profile_image_holder {
    transform: scale(1.05);
    box-shadow: 0 15px 50px rgba(233, 65, 50, .3)
}

.xc2v_team_description {
    font-size: 16px;
    color: #475569;
    line-height: 1.9;
    margin-bottom: 35px;
    text-align: center
}

.lm4h_audio_player_wrapper {
    background: linear-gradient(135deg, #0a2b62 0, #164a8a 100%);
    border-radius: 60px;
    padding: 20px 35px;
    display: flex;
    align-items: center;
    gap: 25px;
    margin-bottom: 30px;
    box-shadow: 0 10px 40px rgba(10, 43, 98, .2);
    transition: .3s
}

.nv6w_volume_button,
.sr9t_play_button {
    display: flex;
    align-items: center;
    cursor: pointer
}

.lm4h_audio_player_wrapper:hover {
    box-shadow: 0 15px 50px rgba(10, 43, 98, .3)
}

.sr9t_play_button {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #fff;
    border: none;
    justify-content: center;
    transition: .3s cubic-bezier(.4, 0, .2, 1);
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, .1)
}

.sr9t_play_button:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(0, 0, 0, .15)
}

.sr9t_play_button:active {
    transform: scale(.95)
}

.sr9t_play_button i {
    font-size: 20px;
    color: #0a2b62;
    margin-left: 3px
}

.sr9t_play_button.kx7p_is_playing i {
    margin-left: 0
}

.uh5g_progress_container {
    flex: 1;
    height: 8px;
    background: rgba(255, 255, 255, .2);
    border-radius: 10px;
    cursor: pointer
}

.uh5g_progress_container::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .1), transparent);
    animation: 2s infinite shimmer
}

@keyframes shimmer {
    0% {
        transform: translateX(-100%)
    }

    100% {
        transform: translateX(100%)
    }
}

.td3j_progress_bar {
    height: 100%;
    background: linear-gradient(90deg, #e94132 0, #ff6b5e 100%);
    border-radius: 10px;
    width: 0%;
    transition: width .1s linear;
    position: relative;
    box-shadow: 0 0 10px rgba(233, 65, 50, .5)
}

.nv6w_volume_button {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .15);
    border: none;
    justify-content: center;
    transition: .3s;
    backdrop-filter: blur(10px)
}

.nv6w_volume_button:hover {
    background: rgba(255, 255, 255, .25);
    transform: scale(1.1)
}

.nv6w_volume_button i {
    font-size: 18px;
    color: #fff
}

.pj4c_audio_caption {
    font-size: 14px;
    color: #94a3b8;
    text-align: center;
    font-style: italic;
    margin-bottom: 35px
}

.zr2k_cta_button {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 45px;
    background: linear-gradient(135deg, #0a2b62 0, #164a8a 100%);
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 16px;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    border: none;
    cursor: pointer;
    margin: 0 auto;
    display: flex;
    width: fit-content;
    box-shadow: 0 8px 30px rgba(10, 43, 98, .25)
}

.zr2k_cta_button::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .2);
    transform: translate(-50%, -50%);
    transition: width .6s, height .6s
}

.zr2k_cta_button:hover::before {
    width: 300px;
    height: 300px
}

.zr2k_cta_button:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 50px rgba(10, 43, 98, .35)
}

.vm8n_partnership_section {
    padding: 120px 0;
    background: #fff;
    position: relative
}

.ln5x_partnership_label {
    text-align: center;
    color: #e94132;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
    left: 50%;
    transform: translateX(-50%)
}

.ln5x_partnership_label::after,
.ln5x_partnership_label::before {
    content: '';
    position: absolute;
    top: 50%;
    width: 40px;
    height: 2px;
    background: #e94132
}

.ln5x_partnership_label::before {
    right: calc(100% + 15px)
}

.ln5x_partnership_label::after {
    left: calc(100% + 15px)
}

.bh9r_partnership_title {
    font-size: 32x;
    font-weight: 800;
    color: #0a2b62;
    text-align: center;
    margin-bottom: 70px;
    letter-spacing: -1px
}

.yh3p_gallery_item {
    border-radius: 20px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .08);
    transition: .5s cubic-bezier(.4, 0, .2, 1);
    cursor: pointer;
    aspect-ratio: 4/3
}

.yh3p_gallery_item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(10, 43, 98, .7) 0, rgba(233, 65, 50, .7) 100%);
    opacity: 0;
    transition: opacity .4s;
    z-index: 1
}

.yh3p_gallery_item::after {
    content: '\f00e';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    font-size: 32px;
    color: #fff;
    z-index: 2;
    transition: transform .4s cubic-bezier(.4, 0, .2, 1)
}

.yh3p_gallery_item:hover::after {
    transform: translate(-50%, -50%) scale(1)
}

.yh3p_gallery_item:hover {
    transform: translateY(-10px) scale(1.02);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .15)
}

.yh3p_gallery_item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s cubic-bezier(.4, 0, .2, 1)
}

@media (max-width:1200px) {
    .mq3p_container_fluid {
        max-width: 1140px
    }

    .lk4r_main_heading {
        font-size: 32px
    }

    .bh9r_partnership_title,
    .nc4q_section_headline {
        font-size: 26px
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.healthcare-hero {
    background: linear-gradient(135deg, #0a2b62 0, #1a3d8f 100%);
    color: #fff;
    padding: 50px 20px;
    text-align: center
}

.healthcare-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" fill="%23ffffff" opacity="0.05"><path d="M500 50Q600 0 700 50T900 50V100H100V50Q200 0 300 50T500 50Z"/></svg>') bottom center/cover no-repeat
}

.hero-container {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 1
}

.hero-title {
    font-size: 3.2rem;
    font-weight: 800;
    margin-bottom: 20px;
    letter-spacing: -.02em
}

.hero-subtitle {
    font-size: 1.3rem;
    opacity: .9;
    margin-bottom: 40px;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
    color: #fff
}

.hero-button {
    background-color: #e94132;
    color: #fff;
    padding: 16px 40px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    font-size: 1.1rem;
    transition: .3s;
    box-shadow: 0 4px 15px rgba(233, 65, 50, .3);
    border: none;
    cursor: pointer;
    display: inline-block
}

@media (max-width:992px) {
    .h5j9_guide_title {
        font-size: 40px
    }

    .p2r6_content_grid,
    .p9f2_hero_content,
    .pw7j_cards_wrapper {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .j8d3_types_grid {
        grid-template-columns: 1fr
    }

    .s4m9_step_item {
        flex-direction: column;
        gap: 20px
    }

    .r7m3_table {
        display: block;
        overflow-x: auto
    }

    .mq3p_container_fluid {
        max-width: 960px
    }

    .fg5n_content_grid {
        grid-template-columns: 1fr;
        gap: 60px
    }

    .mt3r_team_container,
    .yv2m_about_container {
        padding: 0
    }

    .lk4r_main_heading {
        font-size: 28px;
        margin-bottom: 60px
    }

    .bh9r_partnership_title,
    .nc4q_section_headline {
        font-size: 38px
    }

    .hk9x_section_title {
        font-size: 34px
    }

    .tq6m_gallery_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px
    }

    .contact-container {
        flex-direction: column
    }

    .hero-title {
        font-size: 2.5rem
    }

    .contact-form-section,
    .contact-info-section {
        padding: 40px 30px
    }

    .map-title {
        font-size: 2.2rem
    }
}

@media (max-width:768px) {
    .k3m2_hero_guide {
        padding: 80px 0 60px
    }

    .bh9r_partnership_title,
    .h5j9_guide_title,
    .nc4q_section_headline {
        font-size: 32px
    }

    .m7v1_guide_subtitle {
        font-size: 18px
    }

    .d8k3_hero_stats,
    .pw7j_cards_wrapper {
        gap: 30px
    }

    .d5f2_features_grid,
    .v5f7_videos_grid {
        grid-template-columns: 1fr
    }

    .hk9x_section_title,
    .l3m4_section_title,
    .v9m3_cta_title {
        font-size: 28px
    }

    .n7f4_cta_buttons {
        flex-direction: column;
        align-items: center
    }

    .h3j9_primary_btn,
    .k8m2_secondary_btn {
        width: 100%;
        max-width: 300px;
        justify-content: center
    }

    .r7m3_table td,
    .r7m3_table th {
        padding: 15px
    }

    .vy8n_hero_section {
        padding: 70px 0 50px
    }

    .jt7h_sleep_section,
    .vm8n_partnership_section {
        padding: 80px 0
    }

    .lk4r_main_heading {
        font-size: 24px;
        margin-bottom: 50px
    }

    .rt6k_card_title {
        font-size: 20px
    }

    .bn2t_mission_card,
    .qf5m_vision_card {
        padding: 45px 30px
    }

    .qp6z_team_member_card {
        padding: 40px 30px
    }

    .lm4h_audio_player_wrapper {
        padding: 16px 25px;
        gap: 15px
    }

    .sr9t_play_button {
        width: 50px;
        height: 50px
    }

    .nv6w_volume_button {
        width: 40px;
        height: 40px
    }

    .tq6m_gallery_grid {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .healthcare-hero {
        padding: 80px 20px
    }

    .healthcare-contact,
    .map-section {
        padding: 60px 20px
    }

    .hero-title {
        font-size: 2.2rem
    }

    .hero-subtitle {
        font-size: 1.1rem
    }
}

@media (max-width:576px) {

    .mq3p_container_fluid,
    .vb3n_container_zone,
    .x7b9_container_main {
        padding: 0 15px
    }

    .zt7p_hero_banner {
        padding: 50px 0;
        margin-bottom: 50px
    }

    .bd7l_text_block,
    .dm9p_card_description,
    .ln2v_welcome_text,
    .xc2v_team_description,
    .xr9p_section_subtitle {
        font-size: 15px
    }

    .ln2v_welcome_text::before {
        width: 30px
    }

    .df6m_main_title {
        font-size: 30px
    }

    .tb4x_description {
        font-size: 15px;
        margin-bottom: 30px
    }

    .mv3p_primary_btn,
    .tj6r_secondary_btn {
        padding: 14px 32px;
        font-size: 15px
    }

    .xn7h_image_cluster {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .pv2k_image_circle {
        max-width: 280px;
        margin: 0 auto
    }

    .pv2k_image_circle:nth-child(3) {
        max-width: 280px
    }

    .kf8t_section_header {
        margin-bottom: 40px
    }

    .h5j9_guide_title,
    .lk4r_main_heading,
    .qj3m_section_title {
        font-size: 28px
    }

    .ry8p_cards_grid {
        grid-template-columns: 1fr;
        gap: 30px
    }

    .jk3n_guide_card {
        height: 300px
    }

    .bc7k_card_title {
        font-size: 19px
    }

    .jk3n_guide_card:hover .bc7k_card_title {
        font-size: 21px
    }

    .nx8r_arrow_icon i,
    .tv5m_card_description {
        font-size: 14px
    }

    .fm2w_card_overlay {
        padding: 25px
    }

    .zp4h_category_badge {
        top: 20px;
        left: 20px;
        padding: 8px 20px;
        font-size: 11px
    }

    .nx8r_arrow_icon {
        width: 34px;
        height: 34px
    }

    .k3m2_hero_guide {
        padding: 60px 0 40px
    }

    .m7v1_guide_subtitle,
    .pz8w_section_subtext {
        font-size: 16px
    }

    .hk9x_section_title,
    .n6p7_stat_number {
        font-size: 24px
    }

    .s8k9_feature_card {
        padding: 30px 20px
    }

    .r8m2_faq_question {
        padding: 20px;
        font-size: 16px
    }

    .t7f4_faq_answer {
        padding: 0 20px
    }

    .e9k5_faq_item.active .t7f4_faq_answer {
        padding: 0 20px 20px
    }

    .bh9r_partnership_title,
    .nc4q_section_headline {
        font-size: 26px;
        margin-bottom: 50px
    }

    .rt6k_card_title {
        font-size: 18px
    }

    .dm9p_card_description {
        flex: 1
    }

    .bn2t_mission_card,
    .qf5m_vision_card {
        padding: 35px 25px
    }

    .xh8v_icon_holder {
        width: 70px;
        height: 70px
    }

    .xh8v_icon_holder i {
        font-size: 32px
    }

    .wn8k_profile_image_holder {
        width: 140px;
        height: 140px
    }

    .ws3n_action_button {
        padding: 12px 28px;
        font-size: 14px
    }

    .zr2k_cta_button {
        padding: 14px 35px;
        font-size: 15px
    }

    .lm4h_audio_player_wrapper {
        flex-wrap: wrap;
        padding: 20px;
        border-radius: 25px
    }

    .uh5g_progress_container {
        order: 3;
        width: 100%;
        margin-top: 15px
    }

    .ln5x_partnership_label::after,
    .ln5x_partnership_label::before {
        display: none
    }

    .hero-title {
        font-size: 1.8rem
    }

    .hero-subtitle {
        font-size: 1rem
    }
}

@media (max-width:400px) {
    .hero-title {
        font-size: 1.6rem
    }
}

.login-bg {
    background: url("../../../image/login-photo.webp") center center/cover no-repeat !important;
    padding: 0 !important
}