/* =========================================================
           RESET
        ========================================================== */

        html {
            scroll-behavior: smooth;
        }

        body {
            margin: 0;
            padding: 0;
            font-family: "Noto Sans KR",
                         "Malgun Gothic",
                         Arial,
                         sans-serif;

            color: #172033;
            background: #ffffff;

            letter-spacing: -0.3px;
        }

        a {
            text-decoration: none !important;
        }

        img {
            max-width: 100%;
        }


        /* =========================================================
           COMMON
        ========================================================== */

        .section {
            padding: 110px 0;
        }

        .section-light {
            background: #f7f9fc;
        }

        .section-dark {
            background: #111827;
        }

        .section-title {
            text-align: center;
            margin-bottom: 65px;
        }

        .section-label {
            display: inline-block;

            padding: 7px 15px;

            margin-bottom: 18px;

            border-radius: 30px;

            background: #eaf2ff;

            color: #2563eb;

            font-size: 13px;

            font-weight: 800;

            letter-spacing: 0;
        }

        .section-title h2 {
            margin: 0;

            font-size: 38px;

            line-height: 1.35;

            font-weight: 900;

            letter-spacing: -1.5px;
        }

        .section-title p {
            margin-top: 18px;

            color: #64748b;

            font-size: 16px;

            line-height: 1.8;
        }


        /* =========================================================
           HEADER
        ========================================================== */

        .care-header {
            position: fixed;

            top: 0;
            left: 0;
            right: 0;

            z-index: 9999;

            height: 76px;

            background: rgba(255,255,255,0.96);

            border-bottom: 1px solid #edf0f5;

            box-shadow: 0 3px 20px rgba(15,23,42,0.04);
        }

        .care-logo {
            display: inline-block;

            padding-top: 12px;

            font-size: 24px;

            font-weight: 900;

            color: #172033;
        }

        .care-logo .blue {
            color: #2563eb;
        }

        .care-logo small {
            display: block;

            margin-top: -3px;

            font-size: 8px;

            color: #94a3b8;

            letter-spacing: 1px;

            font-weight: 600;
        }

        .care-nav {
            margin: 0;
            padding: 0;

            list-style: none;

            text-align: right;
        }

        .care-nav li {
            display: inline-block;
        }

        .care-nav li a {
            display: block;

            padding: 28px 17px;

            color: #475569;

            font-size: 14px;

            font-weight: 600;
        }

        .care-nav li a:hover {
            color: #2563eb;
        }

        .nav-contact {
            margin-left: 8px;

            padding: 10px 19px !important;

            border-radius: 30px;

            background: #2563eb;

            color: #ffffff !important;
        }

        .nav-contact:hover {
            background: #1d4ed8;

            color: #ffffff !important;
        }


        /* =========================================================
           HERO
        ========================================================== */

        .hero {
            position: relative;

            overflow: hidden;

            padding: 170px 0 110px;

            background:
                radial-gradient(
                    circle at 90% 20%,
                    rgba(37,99,235,0.12),
                    transparent 35%
                ),

                linear-gradient(
                    135deg,
                    #f8fbff 0%,
                    #ffffff 55%,
                    #f4f8ff 100%
                );
        }

        .hero:before {
            content: "";

            position: absolute;

            width: 600px;
            height: 600px;

            border-radius: 50%;

            right: -250px;
            top: -250px;

            border: 1px solid rgba(37,99,235,0.08);
        }

        .hero-label {
            display: inline-block;

            padding: 8px 16px;

            margin-bottom: 22px;

            border-radius: 30px;

            background: #eaf2ff;

            color: #2563eb;

            font-size: 13px;

            font-weight: 800;
        }

        .hero h1 {
            margin: 0;

            font-size: 52px;

            line-height: 1.3;

            font-weight: 900;

            letter-spacing: -2.5px;
        }

        .hero h1 .blue {
            color: #2563eb;
        }

        .hero-description {
            margin-top: 25px;

            color: #64748b;

            font-size: 18px;

            line-height: 1.85;

            max-width: 590px;
        }

        .hero-buttons {
            margin-top: 35px;
        }

        .hero-button {
            display: inline-block;

            padding: 15px 27px;

            margin-right: 8px;

            border-radius: 30px;

            font-size: 14px;

            font-weight: 800;
        }

        .hero-button-primary {
            background: #2563eb;

            color: #ffffff;

            box-shadow: 0 10px 25px rgba(37,99,235,0.22);
        }

        .hero-button-primary:hover {
            background: #1d4ed8;

            color: #ffffff;
        }

        .hero-button-secondary {
            background: #ffffff;

            border: 1px solid #dbe3ef;

            color: #334155;
        }


        /* =========================================================
           DASHBOARD MOCKUP
        ========================================================== */

        .dashboard-wrap {
            position: relative;

            padding: 20px;
        }

        .dashboard {
            position: relative;

            overflow: hidden;

            border-radius: 18px;

            background: #ffffff;

            border: 1px solid #e8edf5;

            box-shadow:
                0 30px 70px rgba(15,23,42,0.14);

            transform: perspective(1200px)
                       rotateY(-5deg)
                       rotateX(2deg);
        }

        .dashboard-header {
            height: 56px;

            padding: 0 18px;

            border-bottom: 1px solid #edf1f6;

            display: flex;

            align-items: center;

            justify-content: space-between;
        }

        .dashboard-title {
            font-size: 15px;

            font-weight: 900;

            color: #172033;
        }

        .dashboard-title span {
            color: #2563eb;
        }

        .dashboard-date {
            font-size: 10px;

            color: #94a3b8;
        }

        .dashboard-body {
            padding: 18px;

            background: #f8fafc;
        }

        .dash-side {
            padding-right: 10px;
        }

        .dash-menu {
            margin-bottom: 7px;

            padding: 11px;

            border-radius: 8px;

            font-size: 11px;

            color: #64748b;
        }

        .dash-menu.active {
            background: #eaf2ff;

            color: #2563eb;

            font-weight: 800;
        }

        .dash-content {
            padding-left: 5px;
        }

        .dash-welcome {
            padding: 17px;

            margin-bottom: 13px;

            border-radius: 12px;

            background: #2563eb;

            color: #ffffff;
        }

        .dash-welcome small {
            display: block;

            margin-bottom: 5px;

            opacity: 0.75;

            font-size: 9px;
        }

        .dash-welcome strong {
            font-size: 16px;
        }

        .dash-card {
            padding: 15px;

            margin-bottom: 13px;

            background: #ffffff;

            border: 1px solid #edf1f5;

            border-radius: 12px;
        }

        .dash-card-title {
            font-size: 11px;

            color: #64748b;

            margin-bottom: 8px;
        }

        .dash-card-number {
            font-size: 22px;

            font-weight: 900;

            color: #172033;
        }

        .dash-status {
            display: inline-block;

            padding: 4px 8px;

            margin-left: 6px;

            border-radius: 10px;

            background: #eaf8f0;

            color: #16a34a;

            font-size: 8px;

            font-weight: 800;
        }

        .dash-timeline {
            padding: 5px 0;
        }

        .timeline-item {
            position: relative;

            padding-left: 20px;

            margin-bottom: 12px;

            font-size: 10px;

            color: #64748b;
        }

        .timeline-item:before {
            content: "";

            position: absolute;

            left: 2px;
            top: 4px;

            width: 8px;
            height: 8px;

            border-radius: 50%;

            background: #2563eb;
        }

        .timeline-item strong {
            display: block;

            margin-bottom: 2px;

            color: #334155;

            font-size: 10px;
        }


        /* =========================================================
           TRUST BAR
        ========================================================== */

        .trust-bar {
            padding: 22px 0;

            background: #ffffff;

            border-bottom: 1px solid #edf1f5;
        }

        .trust-text {
            text-align: center;

            color: #64748b;

            font-size: 13px;
        }

        .trust-text strong {
            color: #172033;
        }


        /* =========================================================
           DAY STORY
        ========================================================== */

        .day-section {
            background: #f7f9fc;
        }

        .day-card {
            position: relative;

            min-height: 360px;

            padding: 35px;

            margin-bottom: 25px;

            background: #ffffff;

            border-radius: 20px;

            border: 1px solid #e9eef5;

            transition: all .25s ease;
        }

        .day-card:hover {
            transform: translateY(-6px);

            box-shadow: 0 20px 45px rgba(15,23,42,0.08);
        }

        .day-number {
            display: inline-block;

            margin-bottom: 20px;

            color: #2563eb;

            font-size: 13px;

            font-weight: 900;
        }

        .day-icon {
            width: 60px;
            height: 60px;

            line-height: 60px;

            text-align: center;

            margin-bottom: 22px;

            border-radius: 17px;

            background: #eaf2ff;

            color: #2563eb;

            font-size: 25px;
        }

        .day-card h3 {
            margin: 0 0 13px;

            font-size: 21px;

            font-weight: 900;
        }

        .day-card p {
            margin: 0;

            color: #64748b;

            line-height: 1.8;

            font-size: 14px;
        }

        .day-time {
            position: absolute;

            right: 30px;
            top: 35px;

            color: #94a3b8;

            font-size: 12px;

            font-weight: 700;
        }


        /* =========================================================
           PROBLEM
        ========================================================== */

        .problem-card {
            padding: 32px;

            min-height: 245px;

            border-radius: 18px;

            background: #ffffff;

            border: 1px solid #e8edf4;

            margin-bottom: 25px;
        }

        .problem-icon {
            width: 52px;
            height: 52px;

            line-height: 52px;

            text-align: center;

            border-radius: 15px;

            background: #f1f5f9;

            color: #475569;

            font-size: 21px;

            margin-bottom: 20px;
        }

        .problem-card h3 {
            margin: 0 0 12px;

            font-size: 18px;

            font-weight: 800;
        }

        .problem-card p {
            margin: 0;

            color: #64748b;

            font-size: 14px;

            line-height: 1.8;
        }


        /* =========================================================
           FEATURES
        ========================================================== */

        .feature-card {
            position: relative;

            padding: 30px;

            min-height: 265px;

            margin-bottom: 25px;

            background: #ffffff;

            border: 1px solid #e7edf5;

            border-radius: 18px;

            transition: .25s;
        }

        .feature-card:hover {
            border-color: #c8d9f8;

            box-shadow: 0 20px 45px rgba(15,23,42,0.07);

            transform: translateY(-5px);
        }

        .feature-icon {
            width: 55px;
            height: 55px;

            line-height: 55px;

            text-align: center;

            margin-bottom: 20px;

            border-radius: 15px;

            background: #eaf2ff;

            color: #2563eb;

            font-size: 23px;
        }

        .feature-card h3 {
            margin: 0 0 12px;

            font-size: 19px;

            font-weight: 900;
        }

        .feature-card p {
            margin: 0;

            color: #64748b;

            font-size: 14px;

            line-height: 1.8;
        }


        /* =========================================================
           HEIMANG MESSAGE
        ========================================================== */

        .message-section {
            padding: 105px 0;

            background:
                linear-gradient(
                    135deg,
                    #172033,
                    #1e293b
                );

            color: #ffffff;
        }

        .message-label {
            color: #93c5fd;

            font-size: 13px;

            font-weight: 900;

            margin-bottom: 20px;
        }

        .message-section h2 {
            margin: 0 0 25px;

            font-size: 39px;

            line-height: 1.45;

            font-weight: 900;

            letter-spacing: -1.5px;
        }

        .message-section h2 .blue {
            color: #60a5fa;
        }

        .message-section p {
            color: #cbd5e1;

            font-size: 16px;

            line-height: 1.9;
        }

        .message-box {
            padding: 30px;

            margin-bottom: 18px;

            border-radius: 17px;

            background: rgba(255,255,255,0.06);

            border: 1px solid rgba(255,255,255,0.1);
        }

        .message-box i {
            color: #60a5fa;

            font-size: 20px;

            margin-right: 10px;
        }

        .message-box strong {
            font-size: 18px;
        }

        .message-box p {
            margin: 12px 0 0;

            font-size: 13px;

            color: #94a3b8;
        }


        /* =========================================================
           VOUCHER VALIDATION
        ========================================================== */

        .validation-section {
            background: #ffffff;
        }

        .validation-box {
            position: relative;

            padding: 50px;

            border-radius: 25px;

            background: #f8fafc;

            border: 1px solid #e5ebf3;

            overflow: hidden;
        }

        .validation-box:after {
            content: "";

            position: absolute;

            width: 300px;
            height: 300px;

            border-radius: 50%;

            right: -100px;
            top: -100px;

            background: rgba(37,99,235,0.05);
        }

        .validation-title {
            position: relative;

            z-index: 2;

            font-size: 30px;

            font-weight: 900;

            line-height: 1.5;
        }

        .validation-title span {
            color: #2563eb;
        }

        .validation-desc {
            position: relative;

            z-index: 2;

            margin-top: 18px;

            color: #64748b;

            line-height: 1.8;
        }

        .validation-flow {
            position: relative;

            z-index: 2;

            margin-top: 35px;
        }

        .flow-item {
            display: inline-block;

            padding: 15px 20px;

            margin-right: 7px;
            margin-bottom: 8px;

            border-radius: 12px;

            background: #ffffff;

            border: 1px solid #e5eaf1;

            color: #334155;

            font-size: 13px;

            font-weight: 700;
        }

        .flow-arrow {
            color: #94a3b8;

            margin-right: 7px;
        }

        .flow-item.check {
            background: #eaf8f0;

            color: #16a34a;

            border-color: #ccebd9;
        }


        /* =========================================================
           DEVICE SECTION
        ========================================================== */

        .device-section {
            background: #f7f9fc;
        }

        .device-card {
            position: relative;

            min-height: 420px;

            padding: 45px 35px;

            text-align: center;

            background: #ffffff;

            border: 1px solid #e8edf4;

            border-radius: 22px;

            margin-bottom: 25px;
        }

        .device-icon {
            margin: 15px auto 30px;

            color: #2563eb;

            font-size: 70px;
        }

        .device-card h3 {
            font-size: 23px;

            font-weight: 900;
        }

        .device-card p {
            color: #64748b;

            font-size: 14px;

            line-height: 1.8;
        }

        .device-tag {
            display: inline-block;

            padding: 7px 13px;

            margin-top: 15px;

            border-radius: 20px;

            background: #f1f5f9;

            color: #475569;

            font-size: 11px;

            font-weight: 800;
        }


        /* =========================================================
           CTA
        ========================================================== */

        .cta-section {
            padding: 110px 0;

            text-align: center;

            background:
                linear-gradient(
                    135deg,
                    #eef5ff,
                    #ffffff
                );
        }

        .cta-section h2 {
            margin: 0 0 20px;

            font-size: 40px;

            line-height: 1.45;

            font-weight: 900;
        }

        .cta-section p {
            margin-bottom: 35px;

            color: #64748b;

            line-height: 1.8;
        }

        .cta-button {
            display: inline-block;

            padding: 16px 28px;

            margin: 5px;

            border-radius: 30px;

            font-size: 14px;

            font-weight: 900;
        }

        .cta-kakao {
            background: #fee500;

            color: #191919;
        }

        .cta-phone {
            background: #2563eb;

            color: #ffffff;
        }


        /* =========================================================
           FLOATING BUTTON
        ========================================================== */

        .floating-contact {
            position: fixed;

            z-index: 9998;

            right: 25px;

            bottom: 25px;
        }

        .floating-contact a {
            display: block;

            width: 58px;
            height: 58px;

            line-height: 58px;

            margin-top: 8px;

            text-align: center;

            border-radius: 50%;

            box-shadow: 0 8px 25px rgba(15,23,42,0.2);

            font-size: 22px;
        }

        .floating-kakao {
            background: #fee500;

            color: #191919;
        }

        .floating-phone {
            background: #2563eb;

            color: #ffffff;
        }


        /* =========================================================
           FOOTER
        ========================================================== */

        .footer {
            padding: 50px 0;

            background: #111827;

            color: #94a3b8;
        }

        .footer-logo {
            color: #ffffff;

            font-size: 22px;

            font-weight: 900;

            margin-bottom: 15px;
        }

        .footer-logo span {
            color: #60a5fa;
        }

        .footer p {
            margin: 5px 0;

            font-size: 12px;

            line-height: 1.8;
        }

        .footer-right {
            text-align: right;
        }


        /* =========================================================
           MOBILE BOTTOM NAV
        ========================================================== */

        .mobile-bottom {
            display: none;
        }


        /* =========================================================
           MOBILE
        ========================================================== */

        @media (max-width: 991px) {

            .hero h1 {
                font-size: 42px;
            }

            .dashboard {
                margin-top: 45px;

                transform: none;
            }

            .care-nav li a {
                padding-left: 8px;
                padding-right: 8px;
            }

        }


        @media (max-width: 767px) {

            body {
                padding-bottom: 65px;
            }

            .care-header {
                height: 60px;
            }

            .care-logo {
                padding-top: 17px;

                font-size: 21px;
            }

            .care-logo small {
                display: none;
            }

            .navbar-toggle {
                margin-top: 13px;

                border: 0;
            }

            .navbar-toggle .icon-bar {
                background: #334155;
            }

            .care-nav {
                position: absolute;

                top: 60px;

                left: 0;
                right: 0;

                background: #ffffff;

                border-top: 1px solid #edf1f5;

                box-shadow: 0 15px 30px rgba(15,23,42,0.08);

                text-align: left;
            }

            .care-nav li {
                display: block;
            }

            .care-nav li a {
                padding: 14px 20px;
            }

            .nav-contact {
                margin: 0 !important;

                border-radius: 0;

                text-align: center;
            }


            /* HERO */

            .hero {
                padding: 115px 0 60px;
            }

            .hero h1 {
                font-size: 35px;

                letter-spacing: -1.7px;
            }

            .hero-description {
                font-size: 15px;

                line-height: 1.8;
            }

            .hero-buttons {
                margin-top: 28px;
            }

            .hero-button {
                display: block;

                text-align: center;

                margin: 8px 0;
            }

            .dashboard-wrap {
                padding: 0;

                margin-top: 35px;
            }

            .dashboard {
                transform: none;

                border-radius: 15px;
            }


            /* SECTION */

            .section {
                padding: 70px 0;
            }

            .section-title {
                margin-bottom: 40px;
            }

            .section-title h2 {
                font-size: 28px;
            }

            .section-title p {
                font-size: 14px;
            }


            /* DAY */

            .day-card {
                min-height: auto;

                padding: 28px;

                margin-bottom: 15px;
            }

            .day-time {
                right: 25px;

                top: 30px;
            }


            /* MESSAGE */

            .message-section {
                padding: 70px 0;
            }

            .message-section h2 {
                font-size: 29px;
            }

            .message-box {
                padding: 23px;
            }


            /* VALIDATION */

            .validation-box {
                padding: 30px 23px;
            }

            .validation-title {
                font-size: 25px;
            }

            .flow-item {
                display: block;

                margin-bottom: 8px;

                text-align: center;
            }

            .flow-arrow {
                display: none;
            }


            /* DEVICE */

            .device-card {
                min-height: auto;

                padding: 35px 25px;
            }


            /* CTA */

            .cta-section {
                padding: 70px 0;
            }

            .cta-section h2 {
                font-size: 29px;
            }

            .cta-button {
                display: block;

                margin: 8px 0;
            }


            /* FLOATING */

            .floating-contact {
                display: none;
            }


            /* MOBILE NAV */

            .mobile-bottom {
                position: fixed;

                display: flex;

                z-index: 99999;

                left: 0;
                right: 0;
                bottom: 0;

                height: 65px;

                background: #ffffff;

                border-top: 1px solid #e5eaf0;

                box-shadow: 0 -8px 25px rgba(15,23,42,0.08);
            }

            .mobile-bottom a {
                flex: 1;

                text-align: center;

                padding-top: 9px;

                color: #64748b;

                font-size: 10px;

                font-weight: 700;
            }

            .mobile-bottom i {
                display: block;

                margin-bottom: 3px;

                font-size: 19px;
            }

            .mobile-bottom .kakao {
                color: #191919;
            }

            .mobile-bottom .phone {
                color: #2563eb;
            }


            /* FOOTER */

            .footer-right {
                margin-top: 20px;

                text-align: left;
            }

        }