        :root {
            --deep-teal: #03A6A1;
            --dark-green: #16610E;
            --soft-bg: #FFF2EB;
            --warm-accent: #FFBF78;
            --deep-text: #4B352A;
            --glass: rgba(255, 242, 235, 0.85);
        }

        body {
            font-family: 'Bitter', serif;
            background-color: var(--soft-bg);
            color: var(--deep-text);
            overflow-x: hidden;
            font-weight: 300;
        }

        h1, h2, h3, h4, .font-bold { font-weight: 700; }

        /* Magazine Layout Helpers */
        .reveal-line {
            overflow: hidden;
            display: block;
        }

        .reveal-line span {
            display: block;
            transform: translateY(100%);
            transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .reveal-line.visible span {
            transform: translateY(0);
        }

        .glass-nav {
            backdrop-filter: blur(15px);
            background: var(--glass);
        }

        .view-section { display: none; opacity: 0; transition: opacity 0.6s ease; }
        .view-section.active { display: block; opacity: 1; }

        .horizontal-scroller {
            display: flex;
            overflow-x: auto;
            scroll-snap-type: x mandatory;
            scrollbar-width: none;
        }
        .horizontal-scroller::-webkit-scrollbar { display: none; }
        .scroller-item { scroll-snap-align: center; flex: 0 0 auto; }

        /* Risk Map Pulse */
        @keyframes pulse-teal {
            0% { transform: scale(1); opacity: 1; }
            100% { transform: scale(3); opacity: 0; }
        }
        .map-pulse::after {
            content: '';
            position: absolute;
            width: 100%; height: 100%;
            background: var(--deep-teal);
            border-radius: 50%;
            animation: pulse-teal 2s infinite;
        }

        .noise-overlay {
            position: fixed;
            inset: 0;
            background: url('https://upload.wikimedia.org/wikipedia/commons/7/76/1k_Resolution_White_Noise.png');
            opacity: 0.03;
            pointer-events: none;
            z-index: 999;
        }

        #mobile-menu {
            transform: translateX(100%);
            transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
        }
        #mobile-menu.open { transform: translateX(0); }

        .btn-premium {
            transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        }
        .btn-premium:hover {
            transform: translateY(-2px);
            box-shadow: 0 10px 20px -5px rgba(3, 166, 161, 0.3);
        }

        .hero-zoom {
            animation: kenburns 40s infinite alternate;
        }
        @keyframes kenburns {
            from { transform: scale(1); }
            to { transform: scale(1.2); }
        }

        .custom-scrollbar::-webkit-scrollbar { width: 4px; }
        .custom-scrollbar::-webkit-scrollbar-thumb { background: var(--deep-teal); }
