@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/bricolage-grotesque-400.ttf") format("truetype");
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  overflow-x: clip;
  scroll-behavior: smooth;
}

body.huisslimmer-v2 :where(img, video, iframe, embed, object) {
  max-width: 100%;
}

body.huisslimmer-v2 :where(img, video) {
  height: auto;
}

body.huisslimmer-v2 button,
body.huisslimmer-v2 input,
body.huisslimmer-v2 select,
body.huisslimmer-v2 textarea {
  max-width: 100%;
  font: inherit;
}

body.huisslimmer-v2 :where(button, [type="button"], [type="submit"]) {
  min-height: 44px;
  cursor: pointer;
}

body.huisslimmer-v2 .skip-link {
  position: absolute;
  top: 10px;
  left: 18px;
  z-index: 1000;
  padding: 10px 14px;
  border: 2px solid var(--hs-focus);
  border-radius: var(--hs-radius);
  background: var(--hs-white);
  color: var(--hs-ink);
  font-weight: 700;
  text-decoration: none;
  transform: translateY(-150%);
}

body.huisslimmer-v2 .skip-link:focus {
  transform: translateY(0);
}

body.huisslimmer-v2 .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

body.huisslimmer-v2 .screen-reader-text:focus {
  z-index: 1000;
  width: auto;
  height: auto;
  padding: 10px 14px;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

body.huisslimmer-v2 :where(.alignwide, .alignfull) {
  width: 100%;
  max-width: none;
}

body.huisslimmer-v2 .alignwide {
  width: min(100%, 1100px);
  margin-inline: auto;
}

body.huisslimmer-v2 .alignfull {
  width: 100vw;
  margin-inline: calc(50% - 50vw);
}

body.huisslimmer-v2 :where(.alignleft, .alignright) {
  max-width: min(50%, 420px);
  margin-block: 0.35em 1em;
}

body.huisslimmer-v2 .alignleft {
  float: left;
  margin-inline: 0 1.25em;
}

body.huisslimmer-v2 .alignright {
  float: right;
  margin-inline: 1.25em 0;
}

body.huisslimmer-v2 .aligncenter {
  display: block;
  margin-inline: auto;
}

body.huisslimmer-v2 :where(.wp-caption, .gallery, .wp-block-image, figure) {
  max-width: 100%;
}

body.huisslimmer-v2 :where(.wp-caption-text, .gallery-caption, figcaption) {
  margin-top: 0.55rem;
  color: var(--hs-muted);
  font-size: 0.88rem;
  line-height: 1.4;
}

body.admin-bar.huisslimmer-v2 .hs-route-header {
  top: 32px;
}

@media (max-width: 782px) {
  body.admin-bar.huisslimmer-v2 .hs-route-header {
    top: 46px;
  }
}

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/bricolage-grotesque-500.ttf") format("truetype");
}

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/bricolage-grotesque-700.ttf") format("truetype");
}

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/bricolage-grotesque-800.ttf") format("truetype");
}

@font-face {
  font-family: "Source Sans 3";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/source-sans-3-400.ttf") format("truetype");
}

@font-face {
  font-family: "Source Sans 3";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/source-sans-3-500.ttf") format("truetype");
}

@font-face {
  font-family: "Source Sans 3";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/source-sans-3-600.ttf") format("truetype");
}

@font-face {
  font-family: "Source Sans 3";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/source-sans-3-700.ttf") format("truetype");
}

:root {
  color-scheme: light;
  --hs-petrol: #092d27;
  --hs-petrol-raised: #123f36;
  --hs-mint: #36b58c;
  --hs-route-indicator: #19775f;
  --hs-yellow: #f0c64f;
  --hs-fog: #f3f6f2;
  --hs-white: #ffffff;
  --hs-ink: #10221c;
  --hs-focus: #0b5c48;
  --hs-muted: #4d6259;
  --hs-line: #93a79d;
  --hs-line-strong: #5f776c;
  --hs-danger: #8f2f23;
  --hs-danger-soft: #fbe9e6;
  --hs-on-petrol: #ffffff;
  --hs-energy: #bd8426;
  --hs-security: #a95444;
  --hs-protocol: #557b9d;
  --hs-reading: 70ch;
  --hs-layout: 1320px;
  --hs-radius: 6px;
  --hs-radius-large: 9px;
  --hs-speed: 180ms;
}

html[data-theme="dark"] {
  color-scheme: dark;
  --hs-fog: #071c17;
  --hs-white: #0e2821;
  --hs-ink: #f1f5f1;
  --hs-muted: #b8cbc3;
  --hs-line: #3b5b50;
  --hs-line-strong: #789488;
  --hs-danger: #ff9b8b;
  --hs-danger-soft: #3b1d19;
  --hs-on-petrol: #ffffff;
  --hs-mint: #69cfad;
  --hs-route-indicator: #69cfad;
  --hs-yellow: #f2cb5b;
  --hs-focus: #f2cb5b;
}

html[data-theme] body.huisslimmer-v2 {
  margin: 0;
  background: var(--hs-fog);
  color: var(--hs-ink);
  font-family: "Source Sans 3", sans-serif;
  font-size: 18px;
  line-height: 1.6;
}

body.huisslimmer-v2 h1,
body.huisslimmer-v2 h2,
body.huisslimmer-v2 h3 {
  margin-block: 0;
  font-family: "Bricolage Grotesque", sans-serif;
  letter-spacing: -0.03em;
  line-height: 1;
  text-wrap: balance;
}

body.huisslimmer-v2 p {
  text-wrap: pretty;
}

body.huisslimmer-v2 :focus-visible {
  outline: 3px solid var(--hs-focus);
  outline-offset: 4px;
}

body.huisslimmer-v2 .hs-shell {
  width: min(calc(100% - 40px), var(--hs-layout));
  margin-inline: auto;
}
