header.hero.is-primary {
    background-color: transparent;
}

header {
    background-image: url(background-dark.jpg);
    background-size: 100%;
    background-position: center 10%;
}

.navbar {
    --bulma-navbar-dropdown-arrow: #71b83f;
    --bulma-navbar-burger-color: white;
    --reclojure-navbar-alpha: 0;
    background-color: rgba(0, 0, 0, var(--reclojure-navbar-alpha));
}

.navbar-dropdown {
    padding-top: .75rem;
}

.navbar .navbar-dropdown a.navbar-item {
    transition: none;
}

.navbar .navbar-dropdown a.navbar-item:hover {
    background-color: #688bf6;
    color: white;
}

@media screen and (min-width: 1024px) {
    .navbar-item, .navbar-link {
        color: white;
    }
}

a.navbar-item:hover, .navbar-link:hover {
    --bulma-navbar-item-background-a: 0.15;
}

.content {
    background: white;
}

header.hero h1 {
    background-image: url(title.png);
    background-size: cover;
}

header.hero.is-medium h1 {
    height: calc(780px / 3);
    width: calc(1840px / 3);
    margin: auto;
}

header.hero.is-small h1 {
    height: calc(780px / 10);
    width: calc(1840px / 10);
    float: left;
}

header h1 span {
    display: none;
}

header.hero.is-medium .hero-body {
    --bulma-hero-body-padding: 30px 10px 50px 10px;
    --bulma-hero-body-padding-medium: 40px 20px 70px 20px;
}

header h2 {
    color: white;
}

header.hero.is-medium h2 {
    font-size: 32pt;
    text-align: center;
    margin-top: -55px;
    padding-left: 45px;
}

header.hero.is-small h2 {
    font-size: 38pt;
    font-weight: bold;
    text-align: left;
    margin-top: 4px;
    margin-left: 195px;
}

@media screen and (max-width: 1023px) {
    header.hero.is-medium h1 {
        height: calc(780px / 4);
        width: calc(1840px / 4);

    }
    header.hero.is-medium h2 {
        font-size: 24pt;
        margin-top: -30px;
        padding-left: 20px;
    }
}

@media screen and (max-width: 768px) {
    header.hero.is-medium h1 {
        height: calc(780px / 5);
        width: calc(1840px / 5);

    }
    header.hero.is-medium h2 {
        font-size: 20pt;
        margin-top: -30px;
        padding-left: 20px;
    }
}

header h2 .date {
    font-weight: bold;
}

body section:first-child {
    padding-top: 1.5rem;
}

#buy-ticket.buttons, #submit-sponsor.buttons {
    margin-bottom: 0;
}

#buy-ticket .button, #submit-sponsor .button {
    margin: auto;
}

.speaker {
    width: 150px;
    float: left;
}

.speaker h2 {
    font-size: 16pt;
    text-align: center;
    margin: 0 0 10px 0;
}

.speaker h2 a {
    color: #1e4acf;
}

.speaker h2 a:hover {
    text-decoration: underline;
}

.speaker img {
    width: 150px;
    height: 150px;
    background: #ccc;
    border-radius: 75px;
    border: 3px solid #6fb53e;
}

.talk {
    margin-left: 170px;
    min-height: 200px;
}

.speaker .links {
    text-align: center;
}

.speaker .links i {
    font-size: 20px;
    padding: 7px 5px;
}

.profile .speaker {
    width: 170px;
}

.profile .links a {
    padding-left: 5px;
}

.profile .links a span {
    padding-right: 5px;
}

.profile .links a::after {
    content: " · ";
}

.profile .links a:last-child::after {
    content: "";
}

i.fa-link { color: #444; }
i.fa-twitter { color: #1d9eef; }
i.fa-github { color: black; }
i.fa-mastodon { color: #5b4be1; }
i.fa-linkedin { color: #0a66c2; }

table.schedule tr td {
    vertical-align: middle;
}

.schedule .title {
    font-weight: normal;
    font-size: 18px;
    padding: 0 0 2px 0;
    margin: 0;
    width: 100%;
}

.schedule .speaker {
    font-style: italic;
    font-size: 14px;
    width: 100%;
}

.schedule .break {
    color: #6fb53d;
    font-size: 14px;
    font-weight: bold;
}

.schedule td a {
    display: block;
}

.schedule td a .title, .schedule td a .speaker {
    color: var(--bulma-text);
}

.schedule td a:hover .title, .schedule td a:hover .speaker {
    color: var(--bulma-link);
}

.sponsors {
    text-align: center;
    margin-top: 40px;
    margin-bottom: -50px;
    margin-left: 30px;
}

.sponsors h3 {
    display: inline;
    color: white;
    padding-right: 10px;
    line-height: 30px;
    font-size: 18px;
    font-style: italic;
    vertical-align: top;
}

.sponsors a {
    padding-right: 20px;
}

.sponsors img {
    height: 30px;
    padding: 4px;
}

.sponsors img.nubank {
    padding: 0 4px;
}

.sponsors img.clojurists {
    padding: 0 4px;
}

.sponsors img.freshcode {
    padding: 0 4px;
}

.sponsors img.factorhouse {
    padding: 0 4px;
}

#tickets-closed {
    color: #800;
    padding: 10px;
}

#tickets-closed p {
    text-align: center;
}
