
        :root {
            --water-bg: #eaf5fc;
            --deep-sea: #0a3d5e;
            --vibrant-aqua: #00d2ff;
            --coral-reef: #f5a623;
            --mangrove-green: #388e3c;
        }

        body.dolphin-page {
            background: var(--water-bg);
            margin: 0;
            overflow-x: hidden;
            font-family: 'Outfit', sans-serif;
            color: var(--deep-sea);
        }

        /* Hero Section */
        .dolphin-hero {
            position: relative;
            height: 90vh;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            overflow: hidden;
        }

        .dolphin-hero-image {
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            object-fit: cover;
            filter: brightness(0.6);
            z-index: 1;
            transition: transform 1s ease-out;
            transform: scale(1.05);
        }

        .dolphin-hero.loaded .dolphin-hero-image {
            transform: scale(1);
        }

        .dolphin-hero-content {
            position: relative;
            z-index: 3;
            padding: 2rem;
            max-width: 900px;
            color: #fff;
        }

        .dolphin-title {
            font-family: 'Abril Fatface', cursive;
            font-size: clamp(3.5rem, 8vw, 6rem);
            text-shadow: 0 4px 20px rgba(0,0,0,0.5);
            margin-bottom: 1rem;
            line-height: 1.1;
        }

        .dolphin-subtitle {
            font-size: 1.5rem;
            letter-spacing: 4px;
            text-transform: uppercase;
            font-weight: 300;
            margin-bottom: 2rem;
            text-shadow: 0 2px 10px rgba(0,0,0,0.8);
            color: var(--vibrant-aqua);
        }

        /* Ecosystem Explorer */
        .ecosystem-section {
            padding: 6rem 2rem;
            background: linear-gradient(180deg, #072a40 0%, #0a3d5e 100%);
            color: white;
            text-align: center;
            position: relative;
        }

        .eco-title {
            font-family: 'Abril Fatface', cursive;
            font-size: 3rem;
            color: var(--vibrant-aqua);
            margin-bottom: 3rem;
        }

        .interactive-bay {
            position: relative;
            max-width: 1000px;
            height: 500px;
            margin: 0 auto;
            background: linear-gradient(to bottom, #115D8C, #06283D);
            border-radius: 30px;
            box-shadow: 0 25px 50px rgba(0,0,0,0.5);
            overflow: hidden;
            border: 2px solid rgba(0, 210, 255, 0.2);
        }

        .eco-zone {
            position: absolute;
            background: rgba(255,255,255,0.1);
            border: 2px dashed rgba(255,255,255,0.5);
            border-radius: 50%;
            cursor: pointer;
            transition: all 0.3s;
            display: flex;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(5px);
        }

        .eco-zone:hover, .eco-zone.active {
            background: rgba(0, 210, 255, 0.3);
            border-color: var(--vibrant-aqua);
            transform: scale(1.1);
            z-index: 10;
        }

        .eco-zone i {
            color: white;
            opacity: 0.8;
            transition: opacity 0.3s;
        }

        .eco-zone:hover i, .eco-zone.active i {
            opacity: 1;
            color: var(--vibrant-aqua);
        }

        /* SVG Map Elements */
        .bay-svg {
            position: absolute;
            top: 0; left: 0;
            width: 100%; height: 100%;
            pointer-events: none;
            opacity: 0.3;
        }

        .eco-panel {
            position: absolute;
            bottom: 2rem;
            left: 50%;
            transform: translateX(-50%);
            width: 90%;
            max-width: 600px;
            background: rgba(255, 255, 255, 0.95);
            color: var(--deep-sea);
            padding: 2rem;
            border-radius: 20px;
            box-shadow: 0 10px 40px rgba(0,0,0,0.5);
            text-align: center;
            opacity: 0;
            pointer-events: none;
            transition: all 0.4s ease;
            transform: translate(-50%, 20px);
            z-index: 50;
        }

        .eco-panel.visible {
            opacity: 1;
            pointer-events: all;
            transform: translate(-50%, 0);
        }

        .eco-panel h3 {
            font-family: 'Abril Fatface', cursive;
            font-size: 1.8rem;
            margin-bottom: 1rem;
            color: var(--deep-sea);
        }

        .eco-panel p {
            font-size: 1.1rem;
            line-height: 1.6;
        }

        /* Content Blocks */
        .info-section {
            padding: 6rem 2rem;
            max-width: 1000px;
            margin: 0 auto;
        }

        .info-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 4rem;
            margin-bottom: 6rem;
            align-items: center;
        }

        .info-grid:nth-child(even) {
            direction: rtl;
        }

        .info-grid:nth-child(even) > div {
            direction: ltr;
        }

        .info-image {
            width: 100%;
            border-radius: 30px;
            box-shadow: 0 20px 40px rgba(0,0,0,0.1);
        }

        .info-text h2 {
            font-family: 'Abril Fatface', cursive;
            font-size: 2.5rem;
            color: var(--deep-sea);
            margin-bottom: 1.5rem;
        }

        .info-text p {
            font-size: 1.2rem;
            line-height: 1.8;
            color: #4a5568;
            margin-bottom: 1.5rem;
        }

        /* Ethical Guidelines */
        .ethics-banner {
            background: white;
            padding: 4rem 2rem;
            border-radius: 30px;
            text-align: center;
            box-shadow: 0 20px 50px rgba(0,0,0,0.05);
            margin: 0 auto 6rem;
            max-width: 1000px;
            border: 2px solid var(--vibrant-aqua);
        }

        .ethics-banner h2 {
            font-family: 'Abril Fatface', cursive;
            font-size: 2.5rem;
            color: var(--vibrant-aqua);
            margin-bottom: 2rem;
        }

        .ethics-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 2rem;
        }

        .ethic-item {
            padding: 1.5rem;
        }

        .ethic-icon {
            color: var(--deep-sea);
            width: 48px;
            height: 48px;
            margin-bottom: 1rem;
        }

        .ethic-item h4 {
            font-size: 1.3rem;
            color: var(--deep-sea);
            margin-bottom: 0.5rem;
        }

        /* Cross-Sell CTA */
        .stay-cta {
            background: linear-gradient(135deg, white 0%, var(--water-bg) 100%);
            padding: 6rem 2rem;
            text-align: center;
            border-top: 1px solid #dcebf4;
        }

        .stay-cta h2 {
            font-family: 'Abril Fatface', cursive;
            font-size: 3rem;
            color: var(--deep-sea);
            margin-bottom: 2rem;
        }

        .stay-links {
            display: flex;
            gap: 1.5rem;
            justify-content: center;
            flex-wrap: wrap;
        }

        .stay-link {
            padding: 1.2rem 3rem;
            border-radius: 50px;
            text-decoration: none;
            font-size: 1.2rem;
            font-weight: bold;
            transition: all 0.3s;
        }

        .stay-cabin {
            background: var(--deep-sea);
            color: white;
            box-shadow: 0 10px 30px rgba(10, 61, 94, 0.3);
        }

        .stay-cabin:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 40px rgba(10, 61, 94, 0.5);
            background: #072a40;
        }

        .stay-treehouse {
            background: white;
            color: var(--deep-sea);
            border: 2px solid var(--deep-sea);
        }

        .stay-treehouse:hover {
            background: var(--deep-sea);
            color: white;
        }

        @media (max-width: 900px) {
            .info-grid, .info-grid:nth-child(even) {
                grid-template-columns: 1fr;
                direction: ltr; /* Reset order for mobile */
                gap: 2rem;
            }
            .ethics-grid {
                grid-template-columns: 1fr;
            }
            .interactive-bay {
                height: 400px;
            }
            .eco-panel {
                bottom: 1rem;
                padding: 1.5rem;
            }
        }
    