/*
Theme Name: EBB
Author: Sander de Gans
Author URI: https://www.sanderdegans.com/
Description: Theme voor WorPress website Eilanden Biljart Bond
Version: 1.0
*/
html {
  overflow-x: hidden; }

* {
  font-family: 'Montserrat', Helvetica, Arial, Lucida, sans-serif;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.btn {
  padding: 16px 35px;
  -webkit-transition: background-color 400ms ease, opacity 400ms ease, color 400ms ease;
  transition: background-color 400ms ease, opacity 400ms ease, color 400ms ease;
  font-size: 14px;
  line-height: 26px;
  letter-spacing: 2px;
  text-decoration: none;
  text-transform: uppercase;
  max-width: 100%;
  display: inline-block;
  text-align: center; }
  .btn.dark {
    background-color: #1a1b1f;
    color: #fff; }
    .btn.dark:hover {
      background-color: #32343a; }
  .btn.white {
    background-color: #fff;
    color: #000; }
    .btn.white:hover {
      background-color: #f1f1f1; }
  .btn.block {
    display: block;
    width: 100%; }
  .btn.small {
    padding: 12px 25px;
    font-size: 12px;
    line-height: 20px; }

p, .par, #content ul, #content ol {
  opacity: 0.6;
  margin: 0 0 10px;
  font-size: 16px;
  line-height: 28px; }
  @media (min-width: 768px) {
    p, .par, #content ul, #content ol {
      font-size: 20px;
      line-height: 34px; } }

.label {
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 20px;
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
  opacity: 0.6; }

h2, h3 {
  margin-top: 10px;
  margin-bottom: 20px;
  font-weight: 400; }

h2 {
  font-size: 36px;
  line-height: 50px; }

h3 {
  font-size: 30px;
  line-height: 46px; }

main {
  margin: 0 auto 7.5rem;
  max-width: 1204px; }
  main section {
    padding: 5rem 1rem;
    text-align: center; }
    @media (min-width: 768px) {
      main section {
        padding: 5rem 2rem; } }
    @media (min-width: 992px) {
      main section {
        text-align: left; } }
  main hr {
    border: 1px solid #eee;
    margin: 0 1rem; }
    @media (min-width: 768px) {
      main hr {
        margin: 0 2rem; } }

input:not([type="submit"]), textarea {
  display: block;
  width: 100%;
  height: 2.25rem;
  color: #333;
  vertical-align: middle;
  background-color: #fff;
  margin-bottom: 1rem;
  padding: 21px 20px;
  border: 1px solid #e4e4e4;
  border-radius: 0px;
  -webkit-transition: border-color 400ms ease;
  transition: border-color 400ms ease;
  font-size: 14px !important;
  line-height: 26px !important; }

textarea {
  height: 200px;
  padding-top: 12px; }

.mededeling-placeholder {
  background-color: #f5f5f5;
  /* Lichtgrijze achtergrond */
  width: 100%;
  /* Neem de volledige breedte van de container */
  padding-top: 56.25%;
  /* 16:9 verhouding (9 / 16 = 0.5625 * 100) */
  position: relative;
  /* Voor positionering van andere elementen als nodig */
  display: block;
  margin-bottom: 1rem; }
  .mededeling-placeholder:before {
    content: '';
    background-image: url("https://www.eilandenbiljartbond.nl/wp-content/themes/ebb/favicon/android-chrome-512x512.png");
    background-size: contain;
    /* Schaal de afbeelding zodat deze volledig zichtbaar is */
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.2;
    /* Maak de afbeelding vaag */ }

#nav {
  padding: 0.75rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  z-index: 100; }
  @media (min-width: 480px) {
    #nav {
      padding: 0.75rem 1.5rem; } }
  @media (min-width: 768px) {
    #nav {
      padding: 1.25rem 1.5rem; } }
  @media (min-width: 992px) {
    #nav {
      padding: 1.5rem 2.75rem; } }
  #nav #brand {
    z-index: 5; }
    @media (min-width: 992px) {
      #nav #brand {
        margin: -0.75rem 0; } }
    #nav #brand img {
      display: block;
      height: 42px; }
      @media (min-width: 992px) {
        #nav #brand img {
          height: 66px; } }
  #nav #menu {
    position: absolute;
    display: none;
    top: 100%;
    width: 100%;
    left: 0;
    -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 4px 6px -2px;
    box-shadow: rgba(0, 0, 0, 0.3) 0px 4px 6px -2px;
    background: #fff; }
    @media (min-width: 992px) {
      #nav #menu {
        height: 100%;
        display: flex;
        -webkit-box-shadow: none;
        box-shadow: none;
        top: 0;
        left: 0;
        justify-content: center;
        align-items: center; } }
    @media (min-width: 992px) {
      #nav #menu div {
        max-width: 50%; } }
    #nav #menu div ul {
      list-style: none;
      background-color: #fff; }
      #nav #menu div ul#menu-header-menu {
        padding: 0;
        margin: 0; }
        @media (min-width: 992px) {
          #nav #menu div ul#menu-header-menu {
            display: flex; } }
      #nav #menu div ul.sub-menu {
        margin-bottom: 1rem; }
        @media (min-width: 992px) {
          #nav #menu div ul.sub-menu {
            display: none;
            position: absolute;
            padding: 1.5rem 0 0; } }
      #nav #menu div ul li a {
        opacity: 0.6;
        font-size: 12px;
        line-height: 20px;
        font-weight: 500;
        letter-spacing: 1px;
        text-transform: uppercase;
        vertical-align: top;
        text-decoration: none;
        color: #1a1b1f;
        padding: 0.5rem 1rem;
        -webkit-transition: background-color 400ms ease, opacity 400ms ease, color 400ms ease;
        transition: background-color 400ms ease, opacity 400ms ease, color 400ms ease;
        display: block; }
        #nav #menu div ul li a:hover {
          opacity: 1; }
        #nav #menu div ul li a[aria-current="page"] {
          opacity: 1;
          font-weight: bold; }
    #nav #menu a.mobile {
      margin: 1rem;
      padding: 12px 30px;
      width: calc(100% - 2rem) !important; }
      @media (min-width: 992px) {
        #nav #menu a.mobile {
          display: none; } }
  #nav #toggle-btn {
    width: 22px;
    display: block;
    cursor: pointer; }
    @media (min-width: 992px) {
      #nav #toggle-btn {
        display: none; } }
  #nav a.desktop {
    display: none;
    z-index: 5;
    padding: 12px 25px; }
    @media (min-width: 992px) {
      #nav a.desktop {
        display: block; } }

#banner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #f4f4f4;
  background-position: center center;
  background-size: cover;
  color: #fff;
  margin: 0 1rem;
  position: relative; }
  @media (min-width: 768px) {
    #banner {
      margin: 0 2rem; } }
  #banner.index {
    height: 620px; }
  #banner.page {
    height: 480px; }
  #banner:after {
    content: '';
    width: 100%;
    height: 100%;
    z-index: 5;
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5); }
  #banner h1 {
    width: 70%;
    z-index: 10;
    font-size: 36px;
    line-height: 48px;
    text-align: center;
    font-weight: 100;
    margin: 10px 0;
    hyphens: auto;
    word-wrap: break-word;
    overflow-wrap: break-word; }
    @media (min-width: 480px) {
      #banner h1 {
        font-size: 50px;
        line-height: 64px; } }
    @media (min-width: 768px) {
      #banner h1 {
        font-size: 56px;
        line-height: 70px; } }
    @media (min-width: 992px) {
      #banner h1 {
        width: 50%; } }
  #banner p {
    width: 70%;
    z-index: 10;
    text-align: center;
    margin: 0 0 45px; }
    @media (min-width: 992px) {
      #banner p {
        width: 50%; } }
  #banner a {
    max-width: 70%;
    z-index: 10;
    margin-bottom: 20px; }
    @media (min-width: 992px) {
      #banner a {
        max-width: 50%; } }

#about {
  display: grid;
  gap: 5rem 2rem; }
  @media (min-width: 992px) {
    #about {
      grid-template-columns: 1fr 2fr;
      align-items: center; } }
  #about div {
    margin: auto;
    width: 100%; }
    @media (min-width: 992px) {
      #about div.left {
        grid-column: 1; } }
    @media (min-width: 992px) {
      #about div.right {
        grid-column: 2; } }
  #about a {
    margin-top: 2rem; }
  #about img {
    width: 100%; }

#news h2, #news > .label {
  display: block;
  text-align: center !important; }
#news div {
  display: grid;
  gap: 5rem 2rem; }
  @media (min-width: 768px) {
    #news div {
      grid-template-columns: repeat(auto-fit, calc(100% / 2 - 2rem / 2));
      justify-content: center;
      justify-items: center; } }
  @media (min-width: 992px) {
    #news div {
      grid-template-columns: repeat(auto-fit, calc(100% / 3 - 4rem / 3));
      justify-content: center;
      justify-items: center; } }
  #news div article {
    width: 100%; }
    @media (min-width: 768px) {
      #news div article {
        text-align: left; } }
    #news div article img {
      width: 100%;
      display: block;
      margin-bottom: 1rem; }
    #news div article a {
      margin-top: 1rem; }

#contact {
  margin: 0 1rem;
  padding: 3rem;
  background-color: #f4f4f4; }
  #contact > * {
    max-width: 815px;
    margin: auto; }
  @media (min-width: 768px) {
    #contact {
      margin: 0 2rem; }
      #contact h3, #contact .par {
        text-align: left !important; } }
  @media (min-width: 992px) {
    #contact {
      padding: 8rem 3rem 8.5rem; } }
  #contact h3 {
    text-align: center; }
  #contact .par {
    text-align: center;
    opacity: 0.6;
    margin-bottom: 2rem; }
  #contact form {
    display: grid; }
    #contact form p {
      opacity: 1; }
      #contact form p label {
        font-weight: 800;
        color: #1a1b1f;
        opacity: 1; }
      #contact form p textarea {
        margin-bottom: 1rem; }
      #contact form p .btn {
        width: 100%;
        display: block; }
    @media (min-width: 768px) {
      #contact form {
        grid-template-columns: repeat(2, 1fr);
        gap: 0 1rem; }
        #contact form p:nth-of-type(1),
        #contact form p:nth-of-type(2) {
          grid-column: span 1; }
        #contact form p:nth-of-type(n+3) {
          grid-column: span 2; }
        #contact form .btn {
          width: auto !important;
          display: inline-block !important; } }

#footer {
  margin: 0 1rem;
  padding: 4.5rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.25rem;
  opacity: 0.5; }
  @media (min-width: 768px) {
    #footer {
      margin: 0 2rem; } }

.advertisements-wrapper {
  margin: 2rem -10px;
  padding-top: 0 !important;
  padding-bottom: 0 !important; }
  .advertisements-wrapper .advertisement {
    text-align: center;
    margin: 0 10px; }
    .advertisements-wrapper .advertisement img {
      width: 100%;
      height: auto; }
  .advertisements-wrapper .slick-dots {
    bottom: -30px; }

/*# sourceMappingURL=style.css.map */
