:root { --white: hsl(0, 0%, 98%); --darkblue: #013e7a; --lightblue: #1a77d3; --cyan: hsl(192, 100%, 83%); --lightCyan: hsl(192, 100%, 94%); --yellow: #fed318; } * { box-sizing: border-box; } html, body { padding: 0; margin: 0; } html { background: var(--white); height: 100%; } body { height: 100%; font-family: futura, Avenir Next, Verdana, Geneva, Tahoma, sans-serif; } a { color: inherit; } main { margin-left: 5rem; display: flex; flex-direction: column; justify-content: space-between; width: calc(100%-5rem); padding: 2rem 2rem 0 2rem; } .beforeTheFold { min-height: 100vh; } footer { width: 80%; margin: 0 auto; } details { margin-bottom: 1rem; } summary { cursor: pointer; } details[open] { border-bottom: 1px solid #000; } .align { max-width: 1280px; } .align .large { max-width: 1500px; } .navbar { z-index: 10; position: fixed; background-color: var(--lightblue); width: 5rem; height: 100vh; padding-bottom: 2rem; transition: width 600ms ease; } .navbar-nav { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; align-items: center; height: 100%; } .nav-item { width: 100%; } .nav-item:last-child { margin-top: auto; } .nav-link { width: 100%; display: flex; align-items: center; height: 5rem; color: var(--yellow); text-decoration: none; transition: 0.4s; padding-right: 0.5rem; } .nav-link a { color: inherit; } .nav-link:hover, .active_link { background: var(--yellow); color: var(--lightblue); } .link-text { display: none; margin-left: 1rem; overflow: hidden; font-weight: bolder; } .nav-link svg { width: 2rem; min-width: 2rem; margin: 0 1.5rem; } .nav-item input { width: 100%; border: none; background-color: var(--white); color: var(--darkblue); margin: 0; } .nav-item input:hover, .nav-item input:focus { border: none; outline: none; } .randomVerenigingen p:nth-child(odd) { -webkit-text-stroke-width: 2px; -webkit-text-stroke-color: var(--lightblue); color: transparent; } .randomVerenigingen p { text-transform: uppercase; } .randomVereniging{ border: 2px solid var(--yellow); padding: 1rem; margin: 1rem; } .randomVerenigingWrapper{ min-width: 20rem; flex: 1; } .randomVerenigingenWrapper { display: flex; flex-wrap: wrap; justify-content: space-between; } .randomVerenigingWrapper:nth-child(1){ padding-top: 4rem; } .randomVerenigingWrapper:nth-child(2){ padding-top: 2rem; } .randomVereniging_imageWrapper{ display: flex; justify-content: center; margin-bottom: 2rem; margin-top: 1rem; } /* Small screens */ @media only screen and (max-width: 600px) { .navbar { bottom: 0; width: 100vw; height: 5rem; padding: 0; } .navbar-nav { flex-direction: row; } .nav-link { justify-content: center; } main { margin: 0; width: 100%; padding: 0.5rem; } } /* Large screens */ @media only screen and (min-width: 600px) { .navbar { top: 0; width: 5rem; height: 100vh; } .nav-link__logo { justify-content: center; transform: rotate(-90deg); transition: 0.4s; margin-bottom: 0.7rem; } .navbar:hover, .navbar:focus, .navbar:focus-within { width: 16rem; } .navbar:hover .link-text, .navbar:focus .link-text, .navbar:focus-within .link-text { display: block; } .navbar:hover .nav-link__logo, .navbar:focus .nav-link__logo, .navbar:focus-within .nav-link__logo { transform: rotate(0deg); } main { min-height: 100%; } } form { padding: 0; } .logo__image { width: 79px; height: 83px; } .fa-primary { color: #ff7eee; } .fa-secondary { color: #df49a6; } .fa-primary, .fa-secondary { transition: var(--transition-speed); } button, input { font-size: inherit; font-family: inherit; color: inherit; background-color: transparent; } button { border: 0.15em solid var(--darkblue); } input { border: none; border-bottom: 0.15em solid var(--darkblue); padding: 0.1em 0.3em; } header { position: relative; background-color: var(--lightCyan); } h2 { font-family: futura, Avenir Next, Verdana, Geneva, Tahoma, sans-serif; font-size: 3.4rem; color: var(--darkblue); } .beforeTheFold h2 { max-width: 30rem; } .intro { position: relative; } .studentZijn { margin: 4rem 0 2rem 3rem; margin: 11vh 0 2rem 3rem; } .hidden { display: none; } .quote { margin-top: 3rem; display: flex; position: relative; z-index: 2; } .quote img { width: 103px; height: 185px; margin-right: 2rem; } .quote p { max-width: 25rem; font-size: 1.5rem; font-family: Avenir Next, Verdana, Geneva, Tahoma, sans-serif; font-style: italic; font-weight: 500; margin: 0.5em 0; } .quizSpotlight { margin-top: 2rem; font-size: 2rem; font-family: Arial, Helvetica, sans-serif; font-weight: bold; } .quizSpotlight a { position: relative; text-decoration: none; background: var(--white); color: var(--darkblue); border: 0.4rem solid var(--darkblue); padding: 1rem 2rem; margin-right: 3rem; } .quizSpotlight a:hover { background-color: var(--lightblue); border: 0.4rem solid var(--lightblue); color: var(--white); } .scroll { display: block; position: absolute; bottom: 0.5rem; left: 0; right: 0; text-align: center; z-index: 1; } .scroll a { display: inline-block; color: var(--darkblue); font-size: 1.1rem; text-decoration: none; padding: 0.7rem 1.1rem; font-weight: 500; text-shadow: 0 0 1em hsla(0, 0%, 100%, 1), 0 0 1em hsla(0, 0%, 100%, 1), 0 0 0.1em hsla(0, 0%, 100%, 1); } .shade { z-index: -1; position: absolute; bottom: 0; left: 0; right: 0; height: 7rem; background: linear-gradient(hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0.6)); } .backgroundSquare { z-index: -2; position: absolute; background-color: var(--lightCyan); } .header_blueSquare { right: 20%; left: -1000px; left: -100vw; top: -1000px; top: -100vw; bottom: -1rem; z-index: -3; } .header_photo { background: url(/assets/placeholder.jpg) center center; background-size: cover; right: 0; left: 50%; bottom: 0; top: 20%; } .underline { box-shadow: inset 0 -0.15em 0 var(--yellow); } #postcodeField { -webkit-appearance: none; margin: 0; } #postcodeField::-webkit-outer-spin-button, #postcodeField::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } /* Firefox */ #postcodeField[type="number"] { -moz-appearance: textfield; } fieldset { max-height: 60vh; display: grid; grid-template-columns: repeat(auto-fill, minmax(400px, 1fr)); overflow-y: auto; margin: auto; } fieldset p label { display: flex; } fieldset p { margin: 15px 10px; } fieldset p label input { margin-right: 10px; } .buttons { width: 70%; margin: 20px auto; display: flex; justify-content: space-between; } .link { color: inherit; text-decoration: none; display: grid; grid-template-columns: minmax(min-content, 25%) 80%; background-color: #fff; border-radius: 4px; box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1); transition: 0.3s; transition-property: box-shadow; gap: 20px; padding: 0.5rem; max-width: 600px; flex-grow: 1; min-width: 20%; } .fancy_link_container { display: flex; margin: auto; gap: 20px; flex-wrap: wrap; justify-content: space-evenly; } .link:hover { cursor: pointer; box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2); } .link__img { justify-self: center; align-self: center; min-width: 100px; } .link__content { margin-right: 20px; } @media only screen and (max-width: 400px) { .link { grid-template-columns: auto; } } .tile-grid--flex { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; } .tile-grid { display: grid; column-gap: 0.5rem; row-gap: 0.5rem; align-items: top; justify-items: center; align-content: center; grid-template-columns: repeat(3, minmax(33%, 170px)); } .tile { flex-direction: column; position: relative; width: 200px; text-decoration: none; } .tile__image { width: 200px; height: 200px; } .tile--small { width: 50px; } .tile--small .tile__image { width: 50px; height: 50px; } .tile--medium { width: 150px; } .tile--medium .tile__image { width: 150px; height: 150px; } .tile__image--blue { background-color: var(--darkblue); } .tile__image { height: 100%; width: 100%; padding: 1rem; display: flex; justify-content: center; transform: scale(1); transition: transform ease-in 0.1s; } .tile:hover .tile__image { transform: scale(1.1); } .tile__image--svg { width: 100%; height: 100%; } .tile__image img, .tile__image svg { width: auto; height: 100%; } .tile__image svg { fill: var(--white); } .tile:hover .tile__title { opacity: 1; } .tile__title { color: black; width: 100%; font-size: 1.5rem; text-align: center; font-weight: bold; padding: 5px; } .tile__title--medium { font-size: 1.2rem; } .split-2 { display: flex; flex-wrap: wrap; justify-content: space-evenly; gap: 1rem; } .split-title { text-align: center; min-width: 400px; } @media only screen and (max-width: 600px) { .tile-grid { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); } } @media only screen and (max-width: 1024px) { .randomVerenigingWrapper:nth-child(1), .randomVerenigingWrapper:nth-child(2){ /* Dit heeft hogere prioriteit dan elk kind. */ padding-top: 0; } } @media only screen and (max-width: 300px) { .tile-grid { grid-template-columns: auto; } }