/* Global */
h1 { font-family: 'Athelas'; font-size: 74px; }
h2 { font-family: 'Athelas'; font-size: 50px; }
h3 { font-family: 'Athelas'; font-size: 36px; }
h4 { font-family: 'Athelas'; font-size: 28px; }
h5 { font-family: 'Athelas'; font-size: 20px; }

h1, h2, h3, h4, h5 {
  line-height: 1.2;
  font-weight: 700;
  margin: 0.3em 0;
}

@media screen and (max-width: 768px) {
    h1 { font-size: 50px; }
    h2 { font-size: 36px; }
    h3 { font-size: 28px; }
    h4 { font-size: 20px; }
    h5 { font-size: 16px; }
}

body { 
    font-family: 'roboto', sans-serif;
    /* background-color: var(--secondary);  */
}

.wavy-mask {
    --mask: 
        radial-gradient(67.08px at 50% calc(100% - 90px), #000 99%, #0000 101%) calc(50% - 60px) 0 / 120px 100%,
        radial-gradient(67.08px at 50% calc(100% + 60px), #0000 99%, #000 101%) 50% calc(100% - 30px) / 120px 100% 
        repeat-x;
    -webkit-mask: var(--mask);
    mask: var(--mask);
    padding-bottom: 50px;
    margin-bottom: -50px;
}

footer a, .copyright a {
    color: var(--black);
    text-decoration: none;
}
footer a:hover, .copyright a:hover { text-decoration: underline; }

h2::after {
    content: url(/wp-content/uploads/2025/04/Zuyd_Kenmerk.svg);
    filter: brightness(0);
    width: 150px;
    display: block;
}

/* #region Main Menu */
/* #region Menu */
.menu-container { padding: 10px 20px; }
.menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 20px;
    justify-content: center;
}
.menu li { position: relative; }
.menu li a, .menu-parent {
    text-decoration: none;
    color: var(--white);
    padding: 10px;
    display: block;
    transition: color 0.3s;
    text-transform: uppercase;
    font-weight: 500;
}
.menu li a:hover { color: var(--primary); }
/* #endregion */

/* #region Submenu */
.menu li ul {
    position: absolute;
    top: 100%;
    left: 0;
    background: var(--primary);
    display: none;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    list-style: none;
    padding: 10px 20px;
    border-radius: var(--s-1);
    z-index: 1000;
}
.sub-menu li a:hover { color: var(--secondary); }
.menu li:hover > ul { display: block; }
.menu li ul li { width: max-content; }
/* #endregion */

/* #region Offcanvas Menu */
/* Hamburger knop */
.menu-toggle {
    font-size: 20px;
    border: none;
}
@media (min-width: 1023px) {
    .menu-toggle, .offcanvas-menu, .menu-overlay { display: none !important; }
}

/* Offcanvas menu styling */
.offcanvas-menu {
    position: fixed;
    top: 0;
    left: -100%;
    width: 70%;
    height: 100%;
    background: var(--primary);
    padding: 20px;
    box-shadow: 2px 0 10px rgba(0,0,0,0.2);
    z-index: 1001;
    transition: left 0.3s ease;
}
.offcanvas-menu.open { left: 0; }
.offcanvas-menu .close-menu {
    font-size: 24px;
    background: none;
    border: none;
    cursor: pointer;
    display: block;
    margin-bottom: 20px;
    color: var(--black);
}
/* Overlay */
.menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
}
.menu-overlay.visible {
    opacity: 1;
    visibility: visible;
}
@media (max-width: 1023px) {
    .menu { flex-direction: column; }
    .menu li ul { position: relative; box-shadow: unset; }
    .menu li a:hover { color: var(--secondary); }
}
/* #endregion */
/* #endregion */

.breakdance-woocommerce div.product form.cart { flex-direction: column !important; }
.wc-bookings-booking-form fieldset { border: unset !important; padding: unset !important; }
.wc-bookings-date-picker-timezone-block { display: none !important; }
.wc-bookings-booking-form .form-field input[type=number] {
    width: 100% !important;
    border-radius: var(--s-1);
    border: 1px solid;
    padding: var(--s-1);
    margin-top: var(--s-1);
}
.wc-bookings-booking-form {
    padding: var(--s-2) !important;
    border-radius: var(--s-1);
}
.wc-bookings-date-picker .ui-datepicker-header {
    background: var(--primary) !important;
    background-image: unset !important;
    border: unset !important;
}
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev, .wc-bookings-date-picker .ui-datepicker .ui-datepicker-next {
    background: var(--secondary) !important;
    top: 0 !important;
}
.ui-datepicker .ui-datepicker-next { right: 0 !important; }
.ui-datepicker .ui-datepicker-prev { left: 0 !important; }
.wc-bookings-booking-form .block-picker li:nth-child(odd) a { background: var(--primary) !important; }
.wc-bookings-booking-form .block-picker li:nth-child(even) a { background: var(--primary-hover) !important; }
.wc-bookings-booking-cost.price {
    display: block !important;
    margin: unset !important;
}

.gform_required_legend { display: none !important; }
.gform_button { background-color: var(--secondary) !important; }

@media only screen and (max-width: 1023px) {
    .oxy-post-loop { width: 94vw !important; }
}