*, *:before, *:after { box-sizing: border-box; } html { scroll-behavior: smooth; scroll-padding-top: 7em; height: 100%; } body { display: flex; flex-direction: column; margin: 0; min-height: 100%; font-size: 1.25em; font-family: Lato, Roboto, Noto, sans-serif; text-align: justify; } header, main, footer { display: flex; flex-direction: column; align-items: center; } main { flex-grow: 1; } .header-contact { background: #DD8033; } .header-nav, footer { background: #65bb50; } .header-contact { width: 100%; } .header-content, .main-content, .footer-content { max-width: 1000px; width: 100%; } .header-content { display: flex; flex-direction: row; align-items: center; margin: 0 auto; padding: 0.2em 0.3em; } .header-nav .header-content { gap: 0.8em; font-size: 1.2em; } .header-contact .header-content { gap: 1.2em; line-height: 1.6em; justify-content: center; } .header-right { flex-grow: 1; text-align: right; margin-right: 10px; display: flex; flex-direction: row; justify-content: right; } .header-spacer { flex-grow: 1; min-width: 1em; } .header-title { font-size: 1.3em; display: inline-flex; align-items: center; font-weight: 600; } .header-nav { width: 100%; position: sticky; z-index: 100; top: 0; box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.15); } .header-contact { width: 100%; } .text-icon { height: 1em; width: auto; vertical-align: middle; } a { text-decoration: none; } a, a:visited, a:hover, a:focus { color: inherit; } a:hover { text-decoration: underline; } .service-link:hover, .social-media:hover { text-decoration: none; } .service-icon:hover { filter: drop-shadow( 0px 0px 3px rgba(0, 0, 0, .7)); } .nav-img { width: 2em; height: 2em; margin-right: 0.3em; } .lang-item { margin: 0 0.2em; } h1, h2, h3, h4 { text-align: center; } .overview { display: flex; flex-direction: row; width: 100%; justify-content: space-between; text-align: center; } .overview > * { width: 22%; } .service-link { display: flex; flex-direction: column; } .service-icon { width: 100%; height: auto; } .service-name { font-weight: bold; font-size: 1.2em; margin-bottom: 0.4em; margin-top: 0.9em; } .service:hover > .service-inner { height: 2.5em; } section { background-color: #FFFFFF; width: 100%; } section:nth-child(even) { background-color: #F5F5F5; } .section-inner { max-width: 1000px; width: 100%; margin: auto; padding: 2.5em 0.5em; } .section-inner > *:first-child { margin-top: 0; } .split-section { display: flex; flex-direction: row; gap: 1.5em; } .split-section-text { width: 70%; } .split-section-text > *:first-child { margin-top: 0; } .split-section-text > *:last-child { margin-bottom: 0; } .split-section-img { width: 30%; display: flex; flex-direction: column; justify-content: center; } .split-section-img img { width: 100%; height: auto; } footer { padding: 2em 0.5em; box-shadow: 0px -3px 3px rgba(0, 0, 0, 0.15); } .footer-content { display: flex; flex-direction: row; gap: 10px; } .footer-content > * { width: 30%; flex-grow: 1; text-align: center; } footer h2 { margin-top: 0; } .footer-sep { width: 0; flex-grow: 0; border-left: 0.2em solid #F5F5F5; } .social-media { display: inline-flex; margin: 0 0.2em; } .social-icon { height: 3em; width: auto; } .credits { font-size: 0.85em; } .privacy h2, .privacy h3, .privacy h3 { text-align: initial; } #map { height: 400px; z-index: 1; } .zone-heading { text-align: left; margin-top: 1em; margin-bottom: 0.3em; } .legend { width: fit-content; margin: 0.3em auto; } .legend-item { display: inline-flex; margin: 0 0.3em; align-items: center; } .legend-square { display: inline-block; height: 1em; width: 1em; margin-right: 0.2em; border-radius: 0.2em; border: 1px solid #868686; } .green { background-color: #3ef06e; } .blue { background-color: #3388ff; } .orange { background-color: #ffeb0a; } @media only screen and (max-width:768px) { .header-content { flex-direction: column; align-items: start; } .header-nav .header-content { gap: initial; } .header-contact .header-content { gap: initial; } .overview { display: grid; grid-template-columns: 1fr 1fr; } .split-section { flex-direction: column; gap: 2em; } .split-section-text { width: auto; } .split-section-img { height: 11em; width: auto; flex-direction: row; } .split-section-img img { height: 100%; width: auto; } .footer-content { flex-direction: column; } .footer-content > * { width: initial; } .overview > * { width: initial; } }