:root {
--step: 0.4rem;
--primary:  #005B2A;
--space-sm: 0.8rem;
--space-md: 1.6rem;
--space-lg: 2.4rem;
--button-primary:  #005B2A;
--primary-contrast: #ffffff;
--width-large: 768px;
--ot-banner-textcolor: #333333;
--ot-banner-textcolor-fade: #33333380;
--ot-banner-bgcolor: #ffffff;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
border-width: 0;
border-style: solid;
border-color: #e5e7eb;
font-size: inherit;
}
html {
font-size: 62.5%;
}
body {
font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", Segoe UI Symbol, "Noto Color Emoji";
position: relative;
height: 100vh;
font-size: 1.4rem;
line-height: 1.5;
-webkit-text-size-adjust: 100%;
}
h1, h2, h3, h4, h5, h6 {
font-weight: 600;
}
.cst-icon-reopen {
position: fixed;
bottom: 10px;
left: 10px;
cursor: pointer;
z-index: 1;
border-radius: 9999px;
background-color: transparent;
width: 42px;
height: 42px;
}
.cst-icon-reopen svg {
width: 100%;
height: 100%;
}
.cst-dialog {
position: fixed;
width: 100%;
bottom: 0;
left: 0;
right: 0;
height: fit-content;
padding: var(--space-lg) var(--space-lg) 0;
container-type: inline-size;
color: #2d2d2d;
background-color: #fff;
max-width: 100%;
}
.cst-dialog.docked {
top: unset;
}
.cst-dialog[open] {
display: flex;
flex-direction: column;
justify-content: space-between;
gap: max(2* var(--step));
box-shadow: 0 0 #0000, 0 0 #0000, 0 0 #0000, 0 0 #0000, 0 0 15px rgba(0, 0, 0, 0.35);
animation: fadeIn .25s ease-in-out;
pointer-events: auto;
animation: fadeIn .25s ease-in-out;
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.cst-dialog[open]::backdrop {
background: transparent;
}
.cst-dialog.center {
top: 50%;
bottom: unset;
left: 50%;
right: unset;
max-width: var(--width-large);
transform: translate(-50%, -50%);
border-radius: var(--space-sm);
}
.cst-dialog-tab {
display: flex;
flex-direction: column;
gap: var(--space-sm);
}
.cst-close {
position: absolute;
top: var(--space-lg);
right: var(--space-lg);
width: var(--space-md);
height: var(--space-md);
cursor: pointer;
scale: 0.8;
}
.cst-dialog.center .cst-close {
display: block;
}
.cst-dialog button {
display: flex;
align-items: center;
justify-content: center;
gap: max(1* var(--step));
cursor: pointer;
background-color: transparent;
background-image: none;
text-transform: none;
font-family: inherit;
line-height: inherit;
}
.cst-dialog button.cst-button {
white-space: nowrap;
font-weight: 500;
text-transform: none;
opacity: 1;
padding: var(--space-sm) var(--space-md);
border-radius: 4px;
min-width: -moz-fit-content;
min-width: fit-content;
white-space: normal;
background: transparent;
color: var(--button-primary);
border: 2px solid var(--button-primary);
}
.cst-dialog button.cst-button:not(:disabled):hover, .cst-close:hover {
opacity: .8;
}
.cst-dialog button.cst-button[data-intent=allow],
.cst-dialog button.cst-button[data-intent=reopen],
.cst-dialog button.cst-button[data-intent=deny] {
background-color: var(--primary);
color: var(--primary-contrast);
}
.cst-dialog a, .cst-dialog button[role=link]:not(.cst-button) {
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
color: var(--primary);
text-decoration-line: underline;
}
.cst-dialog a:hover, .cst-dialog button[role=link]:not(.cst-button):hover {
text-decoration-line: none;
}
.cst-dialog-content, .cst-content-info {
display: flex;
flex-direction: column;
gap: var(--space-sm);
}
.cst-links {
display: flex;
flex-wrap: wrap;
gap: max(4* var(--step));
}
.cst-buttons {
display: flex;
flex-direction: column;
gap: max(2* var(--step));
}
.cst-buttons button {
flex: 1;
}
.cst-dialog-footer {
padding-block: var(--space-sm);
border-bottom-right-radius: 8px;
border-bottom-left-radius: 8px;
color: var(--gray-dark);
display: flex;
align-items: center;
justify-content: center;
gap: max(1* var(--step));
font-size: 1.2rem;
font-weight: 100;
line-height: max(24* var(--rpx));
}
@media screen and (min-width: 750px) {
body {
font-size: 1.6rem;
}
}
@media screen and (min-width: 448px) {
.cst-dialog .cst-buttons {
flex-direction: row;
align-items: center;
flex-wrap: wrap;
}
}
@media screen and (min-width: 576px) {
.cst-dialog .cst-buttons {
justify-content: flex-end;
}
.cst-buttons button {
flex-grow: 0;
}
}
.hidden {
display: none !important;
}
@keyframes fadeIn {
0% {
opacity: 0;
}
100% {
opacity: 100;
}
}
.cst-cookie-tab {
display: flex;
width: 100%;
justify-content: flex-start;
overflow-x: auto;
overflow-y: hidden;
}
.cst-cookie-tab button {
position: relative;
display: flex;
align-items: center;
justify-content: center;
opacity: .6;
font-weight: 600;
flex-grow: 1;
user-select: none;
padding-block: var(--space-sm);
border-bottom-width: 1px;
}
.cst-cookie-tab button[data-state=active] {
color: var(--primary);
opacity: 1;
}
.cst-cookie-tab button[data-state=active]::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 2px;
background-color: var(--primary);
}
.cst-content-tab {
flex-grow: 1;
overflow-y: auto;
max-height: calc(100vh - 360px);
}
.cst-cookie-content {
display: none;
padding-right: var(--space-sm);
padding-bottom: var(--space-md);
}
.cst-cookie-content.active {
display: block;
}
.cst-group-consent-header {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.cst-group-consent-header .flex {
display: flex;
align-items: center;
gap: var(--space-sm);
}
.cst-group-consent + .cst-group-consent {
margin-top: var(--space-md);
}
.cst-group-action {
display: flex;
align-items: center;
gap: var(--space-sm);
margin-left: auto;
}
.font-semibold {
font-weight: 600;
}
.cst-heading-consent .heading:hover {
text-decoration: underline;
}
.cst-group-item-wrapper {
font-size: 1.4rem;
margin: var(--space-sm);
}
.cst-group-item {
padding: max(0.5* var(--space-sm));
}
.cst-group-item + .cst-group-item {
margin-top: unset;
}
.cst-consent-action.flex {
align-items: flex-end;
}
.cst-consent-action, .cst-helper-text {
font-size: 1.2rem;
}
.cst-helper-text {
color: var(--primary);
}
.cst-cookie-content svg.category-icon {
stroke: var(--ot-banner-textcolor);
}
.omgCookie-switch input.omgCookie-input-switch[type="checkbox"] {
height: 0;
width: 0;
visibility: hidden;
display: none;
}
.omgCookie-switch label.omgCookie,
label.ot-quick-label {
cursor: pointer;
text-indent: -9999px;
width: 28px;
height: 17px;
background: var(--ot-banner-textcolor-fade);
display: block;
border-radius: 5px;
position: relative;
}
.omgCookie-switch input.omgCookie-input-switch[data-checked=true]+label {
background: var(--ot-banner-textcolor)
}
.omgCookie-switch input.omgCookie-input-switch[data-checked=true] + label:after {
left: calc(100% - 3px);
transform: translateX(-100%);
}
.omgCookie-switch label.omgCookie:after,
label.ot-quick-label:after {
content: "";
position: absolute;
top: 3px;
left: 3px;
width: 11px;
height: 11px;
background: var(--ot-banner-bgcolor);
border-radius: 3px;
transition: all .1s;
}
label.ot-quick-label:after {
background: var(--ot-banner-bgcolor);
}
.omgCookie-switch label.omgCookie:active:after {
width: 26px;
}
.cst-item-content {
padding: var(--space-sm);
background-color: #eaeaea;
border-radius: var(--space-sm);
margin-top: var(--space-sm);
margin-left: var(--space-lg);
display: flex;
align-items: start;
flex-direction: column;
gap: var(--space-sm);
}
.mt-sm {
margin-top: var(--space-sm);
}
.ml-none {
margin-left: 0;
}
.my-md {
margin-inline: var(--space-md);
}
.cst-group-consent[aria-expanded=true] > .cst-group-consent-header > .cst-heading-consent > svg {
transform: rotate(90deg);
}
.font-italic {
font-style: italic;
}
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
line-height: 1.6;
}
header {
background: #005B2A;
color: #fff;
padding: 1rem 2rem;
text-align: center;
}
header h1 {
margin: 0;
font-size: 2rem;
}
main {
padding: 2rem;
max-width: 800px;
margin: 0 auto;
}
section {
margin-bottom: 2rem;
}
section h2 {
margin-top: 0;
color: #005B2A;
}
footer {
background: #f4f4f4;
padding: 1rem 2rem;
text-align: center;
font-size: 0.9rem;
}
.consent-banner {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: #005B2A;
color: #fff;
padding: 1rem;
text-align: center;
display: none; }
.consent-banner button {
background: #fff;
color: #005B2A;
border: none;
padding: 0.5rem 1rem;
cursor: pointer;
margin-left: 1rem;
border-radius: 4px;
}
.consent-banner button:hover {
background: #ddd;
}