<!DOCTYPE html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Adventure Days | Big Rivers Waterpark</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            margin: 0;
            padding: 0;
            background-color: #f4f4f4;
            color: #333;
        }
        .container {
            max-width: 1100px;
            margin: 30px auto;
            padding: 20px;
            background: white;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
            border-radius: 8px;
        }
        .toggle {
            cursor: pointer;
            background: #0073e6;
            color: white;
            padding: 15px;
            border-radius: 8px;
            text-align: center;
            margin-bottom: 10px;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 1.2em;
            position: relative;
            font-weight: bold;
            transition: 0.3s;
        }
        .toggle:hover {
            background: #005bb5;
        }
        .toggle span {
            font-size: 1.5em;
            position: absolute;
            right: 20px;
        }
        .content {
            display: none;
            padding: 15px;
            border: 0px solid #ddd;
            border-radius: 5px;
        }
    </style>
    <script>
        function toggleSection(id, iconId) {
            var content = document.getElementById(id);
            var icon = document.getElementById(iconId);
            var isHidden = content.style.display === "none" || content.style.display === "";
            content.style.display = isHidden ? "block" : "none";
            icon.innerHTML = isHidden ? "−" : "+";
        }
    </script>
</head>
<body>

    <!-- Main Content -->
    <div class="container">
        <div class="toggle" onclick="toggleSection('adventureDetails', 'iconAdventureDetails')">What is Adventure Days?<span id="iconAdventureDetails">+</span></div>
        <div id="adventureDetails" class="content">
            <p>Experience the thrill of the outdoors with Adventure Days! Enjoy a mix of amusement rides, adventure attractions, and family-friendly fun.</p>
            <p>Adventure Days runs from <b>March 8th - 30th</b>. See the calendar below for exact operating days and hours:</p>
            <p>[fusion_widget type="TodaysHours" todayshours__calid="1"]</p>
        </div>
      
        <div class="toggle" onclick="toggleSection('tickets', 'iconTickets')">Tickets <span id="iconTickets">+</span></div>
        <div id="tickets" class="content">
            <p>Choose from one of our ticket options for Adventure Days:</p>
            <ul>
                <li><b>General Admission:</b> $XX.XX per person – Access to all open attractions.</li>
                <li><b>Season Pass Holder Entry:</b> Free – Included with 2025 Season Pass.</li>
                <li><b>Group Tickets:</b> Special pricing available for groups of X or more. Contact us for details.</li>
            </ul>
            <a href="your-ticket-link-here" class="btn">Get Tickets</a>
        </div>

        <div class="toggle" onclick="toggleSection('attractions', 'iconAttractions')">Attractions Open <span id="iconAttractions">+</span></div>
        <div id="attractions" class="content">
            <p>These attractions will be available during Adventure Days:</p>
            <ul>
                <li>🎯 Archery</li>
                <li>🧗 Rock Climbing</li>
                <li>🎠 Amusement Rides</li>
                <li>🐐 Petting Zoo</li>
                <li>🏹 Axe Throwing</li>
                <li>💦 Dry Rides (No Water Attractions)</li>
            </ul>
        </div>
		
        <div class="toggle" onclick="toggleSection('foodOptions', 'iconFoodOptions')">Food Options <span id="iconFoodOptions">+</span></div>
        <div id="foodOptions" class="content">
            <p>Enjoy a variety of food and drink options during Adventure Days!</p>
            <ul>
                <li>🍔 Burgers and Fries</li>
                <li>🌭 Hot Dogs and Snacks</li>
                <li>🍕 Pizza and Soft Drinks</li>
                <li>🍧 Ice Cream and Sweet Treats</li>
                <li>🥤 Refreshing Beverages</li>
            </ul>
        </div>

        <div class="toggle" onclick="toggleSection('events', 'iconEvents')">Events <span id="iconEvents">+</span></div>
        <div id="events" class="content">
            <p>Here are some exciting special days happening during Adventure Days:</p>
            <ul>
                <li><b>Buddy Day:</b> Bring a friend for a special discount!</li>
                <li><b>Pirate Day:</b> Dress as a pirate and enjoy themed activities!</li>
                <li><b>More to be announced soon!</b></li>
            </ul>
        </div>

        <div class="toggle" onclick="toggleSection('faqs', 'iconFaqs')">FAQs <span id="iconFaqs">+</span></div>
        <div id="faqs" class="content">
            <ul>
                <li><b>What should I bring?</b> - Guests are encouraged to bring comfortable shoes and sunscreen.</li>
                <li><b>Are food and drinks allowed?</b> - Outside food and drinks are not permitted, but we have multiple food locations available.</li>
                <li><b>Is there a dress code?</b> - Proper attire is required. No swimsuits allowed as water attractions are not open.</li>
                <li><b>Can I bring my pet?</b> - Only service animals are allowed inside the park.</li>
            </ul>
        </div>
    </div>

</body>
</html>
