* { box-sizing: border-box; padding: 0; margin: 0; } html { min-height: 100%; font-size: calc(1rem + 8 * (100vw - 320px) / 1920); } html, body { max-width: 100vw; } body { height: 100%; margin: 0; padding: 0; color: var(--color-text); background: var(--color-background); font-family: var(--font-main); font-weight: 400; line-height: 1.5; @media (max-width: 1000px) { &.hideScroll { overflow: hidden; height: 100vh; } } } .site-main { padding: var(--spacing-sitepadding-block) var(--spacing-sitepadding-inline) 0; min-height: 100vh; animation: fadeUp .8s ease-out forwards; &.index { animation: fadeIn .8s ease-out forwards; } } a { color: inherit; text-underline-offset: .16em; text-decoration-thickness: .05em; transition: opacity var(--transition-easing); &:hover { opacity: .6; } } p { font-size: var(--font-size-body); max-width: var(--size-width-p); &.lead { font-size: var(--font-size-lead); max-width: 34em; margin-bottom: var(--spacing-m); } } .lead, .lead p { font-size: var(--font-size-lead); max-width: 34em; margin-bottom: var(--spacing-m); } h1, h2, h3, h4, h5, h6 { font-weight: 600; line-height: 1.2; } .suphead { font-size: var(--font-size-caption); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; } .circlehead { font-size: var(--font-size-caption); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin-bottom: var(--spacing-s); .circle { display: inline-block; vertical-align: middle; width: var(--size-icon); height: var(--size-icon); margin-bottom: .16rem; margin-right: var(--spacing-xs); border-radius: var(--size-icon); background: var(--color-goldenOrange); &:last-of-type { margin-right: .75rem; } } } .breadcrumb { display: block; font-weight: 400; font-size: var(--font-size-xs); margin-bottom: var(--spacing-s); a { text-decoration: none; } } img { max-width: 100%; height: auto; } blockquote { font-family: var(--font-serif); font-size: 2.8rem; font-style: italic; margin: 1.8rem 0; } input[type="text"] { border-radius: 10rem; background: var(--color-white); color: var(--color-text); border: none; padding: var(--spacing-xs) var(--spacing-s); font-family: inherit; font-size: var(--font-size-body); font-weight: 500; transition: opacity var(--transition-easing); } select { border-radius: 10rem; background: var(--color-white); color: var(--color-text); border: 2px solid currentColor; padding: var(--spacing-xs) var(--spacing-s); font-family: inherit; font-size: var(--font-size-body); font-weight: 500; transition: opacity var(--transition-easing); } .number { font-family: var(--font-serif); font-weight: 400; } .textLink { font-family: var(--font-serif); font-style: italic; display: block; &:after { content: "→"; } } .hiddenLink { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; overflow: hidden; text-indent: -9999px; z-index: 10; } .linkItem { transition: opacity var(--transition-easing); cursor: pointer; &:hover { opacity: .6; transition: opacity var(--transition-easing); } &:has(:focus-visible) { box-shadow: 0 0 0 1px var(--color-background), 0 0 0 3px var(--color-green-dark); } } .anchorLinks { /*position: sticky; top: 0;*/ >span { display: block; margin-bottom: var(--spacing-xs); } ul { list-style: none; display: flex; flex-wrap: wrap; gap: var(--spacing-xs); } a { margin-bottom: 0; background: var(--color-goldenBeige); color: var(--color-deepBrick); } } .pageSection { background: var(--color-neufPink); margin: calc(var(--spacing-sitepadding-block)*2) calc(var(--spacing-sitepadding-inline)*-1); padding: var(--spacing-sitepadding-block) var(--spacing-sitepadding-inline) var(--spacing-section-bottom); +.pageSection { margin-top: calc(var(--spacing-sitepadding-block)*-2); } &:nth-of-type(even) { background: var(--color-goldenBeige); color: var(--color-) } h1 { font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 4rem; &:before { content: ""; display: inline-block; background: currentColor; border-radius: 1em; height: 1em; width: 1em; vertical-align: middle; margin-bottom: .2em; margin-right: 1em; } } h2 { margin-bottom: var(--spacing-s); } h3 { margin: var(--spacing-s) 0; } } .openingHours { width: 100%; max-width: 20em; font-size: inherit; td { width: 50%; vertical-align: top; line-height: 1.2; padding: .25em 0; &:first-child { padding-right: var(--spacing-s); } } } .openingHoursItem { display: inline-block; width: 50%; vertical-align: top; margin-bottom: var(--spacing-section-bottom); } .infoBlock { background: var(--color-goldenBeige); margin: 0 calc(var(--spacing-sitepadding-inline)*-1); padding: var(--spacing-sitepadding-block) var(--spacing-sitepadding-inline) var(--spacing-section-bottom); position: relative; overflow: hidden; display: grid; grid-template-columns: 2fr 1fr; align-items: center; min-height: 16rem; h2 { margin-bottom: var(--spacing-s); } p { margin-bottom: var(--spacing-m); } .button { margin-right: var(--spacing-xs); } .pig { transform: scaleX(-1); position: absolute; right: 0; bottom: -50%; } }