import Header from '../Components/Header'
import { Component } from 'react'

export default class Home extends Component {
    constructor(props) {
        super(props);
    }


    render() {
        return (
            <>
                <Header
                    name="404"
                    subtext="Not Found"
                    gradient={["F27878", "D96B6B"]}
                    wave="web/waves/header/rsm"
                    buttons={[
                        {color: "F27878", buttonText: "ffffff", text: "Go Home", link: "/#"},
                        {color: "F27878", buttonText: "ffffff", text: "Send Error",
                            link: `mailto:staff@clicks.codes?subject=Website%20Error%20Report&body=I%20got%20a%20404%20on%20the%20page%20%5BPlease%20Copy%20Website%20Link%20Here%5D`,
                            target: true
                    }]}
                    fullscreen={true}
                />
            </>
        )
    }
}
