html { scroll-behavior: smooth; }
body.yoko-design-system,
body.yoko-native-template {
  color: var(--yoko-text);
  font-family: var(--yoko-font);
  font-size: var(--yoko-copy-desktop);
  font-weight: var(--yoko-font-weight-body);
  line-height: var(--yoko-line-body);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.yoko-native-template *,
body.yoko-native-template *::before,
body.yoko-native-template *::after { box-sizing: border-box; }
body.yoko-native-template :where(h1,h2,h3,h4,h5,h6,p,ul,ol,figure,blockquote) { margin-block-start: 0; }
body.yoko-native-template :where(h1,h2,h3,h4,h5,h6) {
  color: var(--yoko-heading);
  font-family: var(--yoko-font);
  font-weight: var(--yoko-font-weight-heading);
  letter-spacing: var(--yoko-letter-tight);
  line-height: 1.16;
  text-wrap: balance;
}
body.yoko-native-template h1 { font-size: var(--yoko-heading-1); }
body.yoko-native-template h2 { font-size: var(--yoko-heading-2); }
body.yoko-native-template h3 { font-size: var(--yoko-heading-3); }
body.yoko-native-template h4 { font-size: var(--yoko-heading-4); }
body.yoko-native-template :where(p,li,td,th,label,input,select,textarea,button) { font-size: inherit; }
body.yoko-native-template :where(p,li) { color: var(--yoko-text); }
body.yoko-native-template :where(small,.yoko-caption) { color: var(--yoko-muted); font-size: var(--yoko-copy-caption); }
body.yoko-native-template :where(a) { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .16em; }
body.yoko-native-template :where(img,picture,video,svg) { max-width: 100%; }
body.yoko-native-template img { height: auto; }
body.yoko-native-template :where(button,input,select,textarea,summary,a) { -webkit-tap-highlight-color: transparent; }
body.yoko-native-template :where(button,a,input,select,textarea,summary):focus-visible {
  outline: 3px solid rgb(112 37 135 / 35%);
  outline-offset: 3px;
}
body.yoko-native-template .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
body.yoko-native-template .yoko-eyebrow,
body.yoko-native-template .yoko-content-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--yoko-primary);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.3;
  text-transform: uppercase;
}
body.yoko-native-template .yoko-script { font-family: var(--yoko-script-font); font-weight: 700; }
body.yoko-native-template .has-muted-color { color: var(--yoko-muted); }
body.yoko-native-template .has-primary-color { color: var(--yoko-primary); }

@media (max-width: 767px) {
  body.yoko-design-system,
  body.yoko-native-template { font-size: var(--yoko-copy-mobile); line-height: 1.62; }
  body.yoko-native-template h1 { font-size: clamp(34px, 10.5vw, 44px); }
  body.yoko-native-template h2 { font-size: clamp(26px, 8vw, 34px); }
  body.yoko-native-template h3 { font-size: clamp(20px, 6vw, 26px); }
  body.yoko-native-template :where(small,.yoko-caption) { font-size: 13px; }
  body.yoko-native-template .yoko-eyebrow,
  body.yoko-native-template .yoko-content-eyebrow { font-size: 13px; }
}
