
        /* ----- Fully independent module – no impact on existing site layout ----- */
        .crimp-module * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        .crimp-module {
            display: block;
            font-family: 'Inter', 'Segoe UI', Roboto, system-ui, sans-serif;
            max-width: 100%;
            background: transparent;
            line-height: 1.5;
            color: #1a2b3c;
        }

        .service-card {
            background: white;
            border-radius: 2rem;
            box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.1), 0 2px 0 0 rgba(199, 36, 177, 0.2);
            padding: 2rem 2rem;
            border: 1px solid rgba(199, 36, 177, 0.2);
            position: relative;
            overflow: hidden;
            transition: box-shadow 0.2s;
        }
        .service-card:hover {
            box-shadow: 0 30px 55px -15px rgba(199, 36, 177, 0.2), 0 2px 0 0 #c724b1;
        }

        /* Musical note watermark background (decorative only) */
        .bg-note {
            position: absolute;
            font-size: 5rem;
            color: rgba(199, 36, 177, 0.03);
            pointer-events: none;
            font-family: 'Segoe UI', 'Arial Unicode MS', sans-serif;
            z-index: 0;
        }
        .bg-note-1 { top: 2%; left: -1%; transform: rotate(-8deg); }
        .bg-note-2 { bottom: 3%; right: -2%; transform: rotate(6deg); }
        .bg-note-3 { top: 20%; right: 5%; transform: rotate(10deg); font-size: 3.5rem; }

        /* Primary accent color */
        .accent { color: #c724b1; }

        /* Title section - font size unchanged */
        .title-section {
            text-align: center;
            margin-bottom: 1.5rem;
            padding-bottom: 1rem;
            border-bottom: 2px solid rgba(199, 36, 177, 0.2);
            position: relative;
            z-index: 2;
        }
        .title-section h2 {
            font-size: 1.6rem;
            font-weight: 700;
            margin-bottom: 0.3rem;
        }
        .title-section .sub {
            font-size: 0.9rem;
            color: #c724b1;
        }

        /* Challenge / intro block (pain-point driven) - font increased */
        .intro-block {
            background: linear-gradient(135deg, #fef5fc, #fbf0f9);
            border-radius: 1.2rem;
            padding: 1rem 1.2rem;
            margin-bottom: 1.5rem;
            text-align: center;
            border: 1px solid rgba(199, 36, 177, 0.3);
            position: relative;
            z-index: 2;
        }
        .intro-block p {
            font-size: 1rem;
            color: #2c3e50;
            margin-bottom: 0.4rem;
        }
        .intro-block strong {
            color: #c724b1;
        }

        /* Capability table – font increased */
        .spec-table {
            width: 100%;
            border-collapse: collapse;
            margin: 1.5rem 0;
            background: white;
            border-radius: 1rem;
            overflow: hidden;
            border: 1px solid rgba(199, 36, 177, 0.2);
            position: relative;
            z-index: 2;
        }
        .spec-table th, .spec-table td {
            padding: 0.9rem 0.9rem;
            text-align: left;
            border-bottom: 1px solid rgba(199, 36, 177, 0.1);
            font-size: 0.9rem;
        }
        .spec-table th {
            background: #faf5fc;
            color: #c724b1;
            font-weight: 600;
        }
        .spec-table td {
            color: #2c3e50;
        }
        .spec-table tr:last-child td,
        .spec-table tr:last-child th {
            border-bottom: none;
        }

        /* Musical note styling with forced priority to survive global CSS */
        .crimp-module .crimp-note,
        .crimp-module td .crimp-note,
        .crimp-module span.crimp-note,
        .crimp-module .spec-table .crimp-note {
            color: #c724b1 !important;
            font-size: 1.1rem;
            font-family: 'Segoe UI', 'Arial Unicode MS', sans-serif;
            display: inline-block;
            margin: 0 0.1rem;
            font-weight: normal;
            font-style: normal;
        }

        /* --- Delicate bounce animation for treble clef --- */
        @keyframes gentleHop {
            0% { transform: translateY(0); }
            20% { transform: translateY(-3px); }
            40% { transform: translateY(0); }
            60% { transform: translateY(-1.5px); }
            80% { transform: translateY(0); }
            100% { transform: translateY(0); }
        }
        
        @keyframes hoverHop {
            0% { transform: translateY(0); }
            30% { transform: translateY(-4px); }
            60% { transform: translateY(0); }
            80% { transform: translateY(-1px); }
            100% { transform: translateY(0); }
        }

        /* Larger symbol for the treble clef (𝄞) */
        .large-treble {
            font-size: 1.5rem !important;
            display: inline-block;
            margin-right: 0.25rem;
            vertical-align: middle;
            animation: gentleHop 0.45s ease-out 1;
            animation-iteration-count: 1;
            animation-fill-mode: both;
            animation-delay: 0.5s;
        }
        
        .feature-item:hover .large-treble,
        .feature-item:active .large-treble {
            animation: hoverHop 0.4s ease-out 1;
        }
        
        .feature-item:hover strong .crimp-note,
        .feature-item:hover strong .large-treble,
        .feature-item:hover strong [class*="note"] {
            animation: hoverHop 0.4s ease-out 1;
        }
        
        .large-treble, .crimp-note, .feature-item strong .crimp-note {
            transition: transform 0.1s ease;
        }

        /* Feature grid - font increased */
        .feature-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 0.9rem;
            margin: 1.2rem 0 1.8rem;
            position: relative;
            z-index: 2;
        }
        .feature-item {
            background: #faf5fc;
            border-radius: 1rem;
            padding: 0.9rem 0.8rem;
            border: 1px solid rgba(199, 36, 177, 0.2);
            font-size: 0.9rem;
            color: #2c3e50;
            transition: all 0.2s ease;
            cursor: default;
        }
        .feature-item:hover {
            border-color: #c724b1;
            background: #fff7fd;
            transform: translateY(-2px);
            box-shadow: 0 6px 12px rgba(199,36,177,0.08);
        }
        .feature-item strong {
            color: #c724b1;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 0.25rem;
            flex-wrap: wrap;
            margin-bottom: 0.3rem;
            font-size: 0.95rem;
        }
        .feature-item strong .large-treble,
        .feature-item strong .crimp-note {
            margin-right: 0.15rem;
        }

        /* Service grid - font increased */
        .service-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 1rem;
            margin: 1.8rem 0;
            position: relative;
            z-index: 2;
        }
        .service-card-item {
            background: linear-gradient(145deg, #fff6fe, #fef0fd);
            border-radius: 1rem;
            padding: 1rem 0.8rem;
            text-align: center;
            border: 1px solid rgba(199, 36, 177, 0.2);
            transition: all 0.2s;
        }
        .service-card-item:hover {
            border-color: #c724b1;
            transform: translateY(-3px);
            box-shadow: 0 6px 14px rgba(199,36,177,0.08);
        }
        .service-title {
            font-weight: 700;
            color: #c724b1;
            margin-bottom: 0.3rem;
            font-size: 0.95rem;
        }
        .service-desc {
            font-size: 0.85rem;
            color: #2c3e50;
            line-height: 1.45;
        }

        /* Image showcase row – responsive flex */
        .image-showcase {
            display: flex;
            flex-wrap: wrap;
            gap: 1rem;
            justify-content: center;
            align-items: center;
            margin: 1.5rem 0;
            position: relative;
            z-index: 2;
        }
        .image-showcase img {
            max-width: 95px;
            height: auto;
            border-radius: 12px;
            border: 1px solid rgba(199, 36, 177, 0.25);
            background: #fefafd;
            padding: 0.3rem;
            transition: transform 0.2s ease;
        }
        .image-showcase img:hover {
            transform: scale(1.03);
            border-color: #c724b1;
        }

        /* CTA block - font increased */
        .cta-block {
            background: linear-gradient(135deg, #fef5fc, #fbf0f9);
            border-radius: 1.5rem;
            padding: 1rem 1rem;
            margin: 1.5rem 0 1rem;
            text-align: center;
            border: 1px solid rgba(199, 36, 177, 0.3);
            position: relative;
            z-index: 2;
        }
        .cta-text {
            font-size: 1.15rem;
            font-weight: 600;
            color: #c724b1;
        }

        hr {
            margin: 1rem 0;
            border: 0;
            height: 1px;
            background: repeating-linear-gradient(90deg, #c724b1, #c724b1 6px, transparent 6px, transparent 20px);
            opacity: 0.3;
        }

        .footer-line {
            text-align: center;
            color: #c724b1;
            font-size: 0.85rem;
            margin-top: 1rem;
            padding-top: 0.8rem;
            border-top: 1px dashed rgba(199, 36, 177, 0.3);
        }

        /* Intermittent animation for regular notes inside feature items */
        .feature-item .crimp-note {
            display: inline-block;
            animation: gentleHop 0.45s ease-out 1;
            animation-iteration-count: 1;
            animation-fill-mode: both;
            animation-delay: 0.8s;
        }
        .feature-item:first-child .crimp-note { animation-delay: 0.3s; }
        .feature-item:nth-child(2) .crimp-note { animation-delay: 0.9s; }
        .feature-item:nth-child(3) .crimp-note { animation-delay: 1.5s; }
        .feature-item:nth-child(4) .crimp-note { animation-delay: 2.1s; }
        .feature-item:nth-child(5) .crimp-note { animation-delay: 2.7s; }
        .feature-item:nth-child(6) .crimp-note { animation-delay: 3.3s; }
        
        @media (max-width: 768px) {
            .service-card { padding: 1.5rem; }
            .title-section h2 { font-size: 1.3rem; }
            .spec-table th, .spec-table td { font-size: 0.8rem; padding: 0.6rem; }
            .bg-note-1, .bg-note-2, .bg-note-3 { display: none; }
            .image-showcase img { max-width: 70px; }
            
            .feature-grid, .service-grid {
                grid-template-columns: repeat(3, 1fr);
                gap: 0.7rem;
            }
            .feature-item { padding: 0.7rem 0.5rem; font-size: 0.8rem; }
            .feature-item strong { font-size: 0.85rem; }
            .service-title { font-size: 0.85rem; }
            .service-desc { font-size: 0.75rem; }
            .large-treble { font-size: 1.3rem !important; }
            .cta-text { font-size: 1rem; }
            .footer-line { font-size: 0.75rem; }
            .intro-block p { font-size: 0.9rem; }
        }
        
        @media (max-width: 550px) {
            .feature-grid, .service-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            .large-treble { font-size: 1.2rem !important; }
        }
    