
        :root {
            --sand: #e8ddce;
            --clay: #76543b;
            --warm-beige: #f0e9dd;
            --nude-text: #6e6256;
            --stone-dark: #302625;
        }

        body {
            font-family: 'Assistant', sans-serif;
            scroll-behavior: smooth;
            background:
                radial-gradient(circle at top right, rgba(232, 221, 206, 0.85), transparent 35%),
                radial-gradient(circle at bottom left, rgba(240, 233, 221, 0.75), transparent 30%),
                #faf7f1;
            color: var(--nude-text);
        }

        h1,
        h2,
        h3,
        .rounded-font {
            font-family: 'Varela Round', sans-serif;
        }

        .bg-sand {
            background-color: var(--sand);
        }

        .bg-clay {
            background-color: var(--clay);
        }

        .text-clay {
            color: var(--clay);
        }

        .border-clay {
            border-color: var(--clay);
        }

        .bg-nude {
            background-color: var(--warm-beige);
        }

        .fade-in {
            opacity: 0;
            transform: translateY(24px);
            transition: opacity 0.9s ease-out, transform 0.9s ease-out;
        }

        .fade-in.visible {
            opacity: 1;
            transform: translateY(0);
        }

        @keyframes float {
            0% {
                transform: translate(0, 0) scale(1);
            }

            50% {
                transform: translate(12px, -14px) scale(1.04);
            }

            100% {
                transform: translate(0, 0) scale(1);
            }
        }

        .blob {
            position: absolute;
            border-radius: 50%;
            filter: blur(60px);
            z-index: 0;
            animation: float 8s infinite ease-in-out;
        }

        .nav-link::after {
            content: '';
            display: block;
            width: 0;
            height: 2px;
            background: var(--clay);
            transition: width .3s;
            margin: 0 auto;
        }

        .nav-link:hover::after,
        .nav-link.active::after {
            width: 100%;
        }

        .floating-card {
            backdrop-filter: blur(20px);
            background: rgba(255, 255, 255, 0.8);
            border: 1px solid rgba(255, 255, 255, 0.7);
            box-shadow: 0 18px 45px rgba(118, 84, 59, 0.14);
        }

        .service-card {
            border-radius: 2.5rem;
            transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
        }

        .service-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 22px 38px rgba(118, 84, 59, 0.14);
            border-color: rgba(118, 84, 59, 0.25);
        }

        .tab-button {
            border: 1px solid rgba(118, 84, 59, 0.18);
            transition: all 0.25s ease;
        }

        .tab-button.active {
            background-color: var(--clay);
            color: white;
            border-color: transparent;
            box-shadow: 0 16px 30px rgba(118, 84, 59, 0.24);
        }

        .tab-panel {
            display: none;
        }

        .tab-panel.active {
            display: block;
        }

        .accordion-item[data-open="true"] .accordion-content {
            grid-template-rows: 1fr;
        }

        .accordion-item[data-open="true"] .accordion-icon {
            transform: rotate(180deg);
        }

        .accordion-content {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows 0.3s ease;
        }

        .accordion-content>div {
            overflow: hidden;
        }

        .accordion-icon {
            transition: transform 0.3s ease;
        }

        .topic-chip {
            border: 1px solid rgba(118, 84, 59, 0.14);
            background: rgba(255, 255, 255, 0.8);
        }

        .topic-badge {
            border: 1px solid rgba(118, 84, 59, 0.2);
            background: rgba(232, 221, 206, 0.72);
            box-shadow: 0 8px 18px rgba(118, 84, 59, 0.08);
        }

        @media (max-width: 640px) {
            .topic-badge {
                padding: 0.55rem 0.9rem;
                font-size: 0.92rem;
                line-height: 1.25rem;
                border-radius: 9999px;
            }
        }

        ::-webkit-scrollbar {
            width: 8px;
        }

        ::-webkit-scrollbar-track {
            background: #faf7f1;
        }

        ::-webkit-scrollbar-thumb {
            background: #d8c6af;
            border-radius: 10px;
        }
    