/* Fredoka variable Latin, Google Fonts. License: assets/gummy/Fredoka-OFL.txt. */
@font-face {
  font-family: 'Gummy Display';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('./assets/gummy/fredoka-latin-variable.woff2') format('woff2');
}
/* Actual text, rounded into a glossy mould. Each glyph keeps its layout box. */
.creative-hero h1[data-gummy-type], [data-gummy-type].gummy-type {
  --gel-top: #ff98b2;
  --gel-middle: #e8376b;
  --gel-bottom: #a5194b;
  --gel-edge: #90133d;
  --gel-shadow: #8f163f48;
  --shine-x: 28%;
  font-family: 'Gummy Display', 'Arial Rounded MT Bold', ui-rounded, sans-serif;
  --type-size: clamp(76px, 8.3vw, 132px);
  font-size: var(--type-fitted, var(--type-size));
  font-weight: 650;
  font-variation-settings: 'wdth' 100;
  font-style: normal;
  line-height: .98;
  letter-spacing: -.045em;
  margin: 0;
  color: #ce285b;
  pointer-events: auto;
  cursor: default;
  touch-action: pan-y;
  isolation: isolate;
  position: relative;
  overflow: visible;
}
[data-gummy-type] .gummy-line {
  display: block;
  position: relative;
  white-space: nowrap;
  width: max-content;
  max-width: none;
  padding-block: .025em .075em;
}
[data-gummy-type] .gummy-line--citrus {
  --gel-top: #ffc296;
  --gel-middle: #ed752f;
  --gel-bottom: #a93c1c;
  --gel-edge: #a13b20;
  --gel-shadow: #9b3c183b;
  color: #d6602b;
}
[data-gummy-type] .gummy-line--orange {
  --gel-top: #ffd5a3;
  --gel-middle: #ff9750;
  --gel-bottom: #c85c1a;
  --gel-edge: #b34d1a;
  --gel-shadow: #9b3c183b;
  color: #e77331;
}
[data-gummy-type] .gummy-glyph {
  position: relative;
  display: inline-block;
  vertical-align: baseline;
  transform-origin: 50% 79%;
  will-change: auto;
  filter: drop-shadow(0 .018em .008em var(--gel-edge)) drop-shadow(0 .045em .026em var(--gel-shadow));
}
[data-gummy-type] .gummy-glyph.is-moving { will-change: transform; }
[data-gummy-type] .gummy-glyph--space { width: .24em; }
[data-gummy-type] .gummy-face {
  display: block;
  position: relative;
  color: var(--gel-middle);
  background:
    radial-gradient(ellipse 90% 54% at var(--shine-x) 15%, #fff9e5 0%, #fff9e5b8 8%, #fff5df00 43%),
    linear-gradient(170deg, var(--gel-top) 0%, var(--gel-middle) 44%, var(--gel-bottom) 93%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: .3px var(--gel-edge);
  filter: url('#gummy-type-gloss');
}
[data-gummy-type]:focus-visible {
  outline: 2px solid #85294d;
  outline-offset: 12px;
  border-radius: 14px;
}
.gummy-type-hint {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 16px;
  color: #8b6470;
  font-size: 10px;
  letter-spacing: .035em;
}
.gummy-type-a11y {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
@media (max-width: 1000px) and (min-width: 601px) {
  .creative-hero h1[data-gummy-type] { --type-size: clamp(55px,7.8vw,81px); }
}
@media (max-width: 600px) {
  .creative-hero h1[data-gummy-type], [data-gummy-type].gummy-type { --type-size: clamp(47px,15.4vw,86px); line-height: 1; letter-spacing: -.045em; }
  [data-gummy-type] .gummy-line { padding-bottom: .075em; }
}
@media (prefers-reduced-motion: reduce) {
  [data-gummy-type] .gummy-glyph { will-change: auto; }
}
