        :root {
            --primary-brand: #7BC5C5;     /* Refined, calming premium mint */
            --accent-warm: #EFA892;       /* Soft luxury blush peach */
            --text-main: #2C3539;         /* Sophisticated deep slate charcoal */
            --bg-soft: #FAF9F6;           /* Premium warm alabaster off-white */
        }

        body {
            font-family: 'Plus Jakarta Sans', sans-serif;
            background-color: var(--bg-soft);
            color: var(--text-main);
            letter-spacing: -0.01em;
            -webkit-tap-highlight-color: transparent;
        }
        
        .serif-title {
            font-family: 'Playfair Display', serif;
        }

        .no-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .no-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }

        /* --- PREMIUM REFINEMENT ENGINE (NO CLUTTERED BORDERS) --- */
        .premium-transition {
            transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
        }
        
        .premium-card {
            background: #ffffff;
            border: 1px solid rgba(0, 0, 0, 0.04);
            border-radius: 20px;
            box-shadow: 0 4px 20px rgba(44, 53, 57, 0.02);
            transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
        }
        
        .premium-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 30px rgba(44, 53, 57, 0.06);
        }

        .premium-btn {
            background-color: var(--text-main);
            color: #ffffff;
            font-weight: 700;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            border-radius: 9999px;
            transition: all 0.3s ease;
        }

        .premium-btn:hover {
            background-color: var(--primary-brand);
            transform: translateY(-1px);
            box-shadow: 0 6px 20px rgba(123, 197, 197, 0.35);
        }

        /* Speech bubbles modern refinement */
        .bubble-left::after {
            content: '';
            position: absolute;
            left: -10px;
            top: 50%;
            transform: translateY(-50%);
            border-width: 5px 10px 5px 0;
            border-style: solid;
            border-color: transparent white transparent transparent;
            display: block;
            width: 0;
        }

        /* Keyframe animations */
        @keyframes drift {
            0% { transform: translateX(-10px); }
            50% { transform: translateX(10px); }
            100% { transform: translateX(-10px); }
        }
        @keyframes float-gentle {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-8px); }
        }
        @keyframes pop-bounce {
            0% { transform: scale(0.96); opacity: 0; }
            100% { transform: scale(1); opacity: 1; }
        }
        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }
        .animate-fade-in {
            animation: fadeIn 0.3s ease-out forwards;
        }
        .cloud-bg-slow { animation: drift 18s ease-in-out infinite; }
        .cloud-bg-fast { animation: drift 12s ease-in-out infinite reverse; }
        .heavenly-float { animation: float-gentle 6s ease-in-out infinite; }
        .pop-view { animation: pop-bounce 0.3s cubic-bezier(0.25, 1, 0.5, 1) forwards; }
