/* ============================================================
   BAKBEEST — Custom Styles
   Child theme van Twenty Twenty-Five
   ============================================================ */

/* === CSS Custom Properties === */
:root {
    --bb-oranje:  #E8631A;
    --bb-zwart:   #111111;
    --bb-teal:    #2A7D6E;
    --bb-wit:     #FFFFFF;
    --bb-font-display: 'Bebas Neue', sans-serif;
    --bb-font-body:    'Fira Sans', sans-serif;
}

/* === Global === */
body {
    font-family: var(--bb-font-body);
}

/* === Header === */
.bakbeest-header {
    position: sticky;
    top: 0;
    z-index: 200;
    background-color: var(--bb-zwart) !important;
    border-bottom: 2px solid var(--bb-oranje);
}

.bakbeest-header .wp-block-site-logo img {
    height: 1.8rem;
    width: auto !important;
}

.wp-block-site-title a,
.wp-block-site-title a:visited {
    font-family: var(--bb-font-display);
    color: var(--bb-oranje) !important;
    text-decoration: none !important;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
}

.wp-block-navigation a,
.wp-block-navigation a:visited {
    color: var(--bb-wit) !important;
    font-family: var(--bb-font-display);
    letter-spacing: 0.1em;
    font-size: 1.1rem;
    text-decoration: none !important;
}

.wp-block-navigation a:hover {
    color: var(--bb-oranje) !important;
}

/* Hamburger icon kleur (mobiel) */
.wp-block-navigation__responsive-container-open svg,
.wp-block-navigation__responsive-container-close svg {
    color: var(--bb-wit);
    fill: var(--bb-wit);
}

/* Mobiel menu overlay */
.wp-block-navigation__responsive-container.is-menu-open {
    background-color: var(--bb-zwart) !important;
}

/* === Typografie === */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--bb-font-display);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.05;
}

/* === Buttons === */
.wp-block-button__link {
    font-family: var(--bb-font-display) !important;
    letter-spacing: 0.12em !important;
    border-radius: 0 !important;
    text-transform: uppercase;
    transition: opacity 0.2s ease, transform 0.2s ease;
    font-size: 1.2rem !important;
    padding: 0.7em 2em !important;
}

.wp-block-button__link:hover {
    opacity: 0.85;
    transform: translateY(-2px);
}

/* === Hero Sectie === */
.bakbeest-hero {
    min-height: 100svh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bakbeest-hero .wp-block-cover__inner-container {
    text-align: center;
}

.bakbeest-hero h1 {
    font-size: clamp(4rem, 14vw, 11rem);
    letter-spacing: 0.04em;
    line-height: 1;
    margin-bottom: 0.2em;
}

.bakbeest-hero .bakbeest-tagline {
    font-family: var(--bb-font-body);
    letter-spacing: 0.25em;
    text-transform: uppercase;
    font-size: clamp(0.7rem, 1.5vw, 0.9rem);
    margin-bottom: 2em;
    opacity: 0.8;
}

/* === Secties: donker/licht patroon === */
.bakbeest-section {
    padding: clamp(3rem, 8vw, 6rem) 1.5rem;
}

.bakbeest-section--dark {
    background-color: var(--bb-zwart);
    color: var(--bb-wit);
}

.bakbeest-section--dark h2 {
    color: var(--bb-oranje);
}

.bakbeest-section--light {
    background-color: var(--bb-wit);
    color: var(--bb-zwart);
}

.bakbeest-section--light h2 {
    color: var(--bb-zwart);
}

.bakbeest-section h2 {
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    margin-bottom: 1.5rem;
}

/* === YouTube Video Embeds === */
.bakbeest-video-wrap figure.wp-block-embed {
    margin: 0;
    border: 3px solid var(--bb-zwart);
    background: var(--bb-zwart);
}

.bakbeest-video-wrap .wp-block-embed__wrapper {
    position: relative;
    padding-top: 56.25%; /* 16:9 */
}

.bakbeest-video-wrap .wp-block-embed__wrapper iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

/* === Agenda === */
.bakbeest-agenda-item {
    border-bottom: 1px solid rgba(255,255,255,0.15);
    padding: 1rem 0;
    display: flex;
    gap: 2rem;
    align-items: baseline;
    flex-wrap: wrap;
}

.bakbeest-agenda-datum {
    font-family: var(--bb-font-display);
    color: var(--bb-oranje);
    font-size: 1.4rem;
    min-width: 8rem;
    letter-spacing: 0.05em;
}

.bakbeest-agenda-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.bakbeest-agenda-titel {
    font-weight: 600;
}

.bakbeest-agenda-locatie {
    font-size: 0.875rem;
    opacity: 0.7;
}

.bakbeest-agenda-tickets.wp-element-button {
    background-color: transparent;
    color: var(--bb-oranje);
    border: 1px solid var(--bb-oranje);
    padding: 0.25em 1em;
    font-size: 0.8rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    border-radius: 0;
    align-self: center;
}

.bakbeest-agenda-tickets.wp-element-button:hover {
    background-color: var(--bb-oranje);
    color: var(--bb-zwart);
}

.bakbeest-agenda-leeg {
    opacity: 0.6;
    font-style: italic;
}

/* === Mascotte decoratie === */
.bakbeest-mascotte {
    max-width: 200px;
    margin: 0 auto 2rem;
    display: block;
}

/* === Footer === */
footer.wp-block-template-part,
.wp-block-template-part[data-type="footer"] > * {
    background-color: var(--bb-zwart) !important;
    color: var(--bb-wit) !important;
}

footer .wp-block-site-title a {
    color: var(--bb-oranje) !important;
}

footer a,
footer a:visited {
    color: rgba(255,255,255,0.7) !important;
}

footer a:hover {
    color: var(--bb-oranje) !important;
}

footer p {
    color: rgba(255,255,255,0.5) !important;
}

/* === Responsive === */
@media (max-width: 768px) {
    .bakbeest-hero h1 {
        font-size: clamp(3rem, 16vw, 6rem);
    }
}
