@charset "UTF-8";
/*
 Theme Name:   Yarn Chicken Child
 Template:     astra
 Version:      1.0
*/
/**
 * uaplus.css version 0.0.1
 */
/**
 * Different box model
 * 
 * We use the traditional box model, where the padding and border 
 * of the element is drawn inside and not outside the specified 
 * width and height. That makes combining relative and absolute 
 * units in properties like <code>inline-size</code> and 
 * <code>block-size</code> easier.
 * 
 * 2025/05/22 :where(html) のgutter外すこと！！！

* {
  box-sizing: border-box;

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

/**
 * Improve focus styles
 *
 * Add spacing between content and its focus outline.
 */
:focus-visible {
  outline-offset: 3px;
}

/**
 * Disable text size adjustment
 * 
 * To improve readability on non-mobile optimized websites, browsers
 * like mobile Safari increase the default font size when you switch
 * a website from portrait to landscape. We don't want that for our 
 * optimized sites.
 *
 * See https://kilianvalkhof.com/2022/css-html/your-css-reset-needs-text-size-adjust-probably/
 */
:where(html) {
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  line-height: 1.5;
}

/**
 * Increase line height
 *
 * Long paragraphs are easier to read if the line height is higher.
 */
/**
 * Add scrollbar gutter
 *
 * Prevent the page from “jumping” when switching from a long to a short page.
 *
 */
/**
 * Remove UA styles for h1s nested in sectioning content
 *
 * Nesting h1s in section, articles, etc., shouldn't influence the 
 * styling of the heading since nesting doesn't influence 
 * semantics either.
 * 
 * See https://github.com/whatwg/html/issues/7867#issuecomment-2632395167
 * See https://github.com/whatwg/html/pull/11102
 * See https://html.spec.whatwg.org/#sections-and-headings
 */
:where(h1) {
  font-size: 2em;
  margin-block: 0.67em;
}

/**
 * Improve abbreviations with titles
 * 
 * The abbr element with the title isn't helpful regarding 
 * accessibility because support is inconsistent, and it's only 
 * accessible to some users. Still, it's commonly used. 
 * This rule shows a dotted underline on abbreviations in all 
 * browsers (there's a bug in Safari) and changes the cursor.
 * 
 * See https://adrianroselli.com/2024/01/using-abbr-element-with-title-attribute.html
 */
:where(abbr[title]) {
  cursor: help;
  text-decoration-line: underline;
  text-decoration-style: dotted;
}

/**
 * Optimize mark element in Forced Colors Mode
 *
 * The colors of the mark element don't change in Forced Colors Mode,
 * which can be problematic. Use system colors instead.
 * 
 * See https://adrianroselli.com/2017/12/tweaking-text-level-styles.html#MarkWHCM
 */
@media (forced-colors: active) {
  mark {
    color: HighlightText;
    background-color: Highlight;
  }
}
/**
 * Announce del, ins, and s to screen readers
 * 
 * With the exception of NVDA (2024.4.2), which announces "deletion",
 * none of the common screen readers announces the <s> element.
 * Voice Over on macOS and iOS and Narrator don't announce 
 * <ins> and <del>. Usually, screen readers not announcing text-level
 * semantics is something we just accept, but devs using elements 
 * like <s> without knowing that they may not convey semantics is a 
 * common issue. We announce the start and end of stricken, inserted,
 * and deleted content with pseudo-elements. For languages other 
 * than English, you should provide translations, e.g. :lang(de) 
 * :where(s::before) { content: "Durchgestrichener Text Beginn "; }
 * 
 * See https://adrianroselli.com/2017/12/tweaking-text-level-styles.html
 */
:where(del, ins, s)::before, :where(del, ins, s)::after {
  clip-path: inset(100%);
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  width: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  content: "test";
}

:where(s)::before {
  content: "stricken text start ";
}
:where(s)::after {
  content: " stricken text end";
}

:where(del)::before {
  content: "deletion start ";
}
:where(del)::after {
  content: " deletion end";
}

:where(ins)::before {
  content: "insertion start ";
}
:where(ins)::after {
  content: " insertion end";
}

/**
 * Avoid overflow caused by embedded content
 * 
 * Ensure that embedded content (audio, video, images, etc.) 
 * doesn't overflow its container.
 */
:where(audio, iframe, img, svg, video) {
  max-block-size: 100%;
  max-inline-size: 100%;
}

/**
 * Prevent fieldsets from causing overflow
 *
 * Reset the default `min-inline-size: min-content` to prevent
 * children from stretching fieldsets
 *
 * See https://github.com/twbs/bootstrap/issues/12359
 * and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
 */
:where(fieldset) {
  min-inline-size: 0;
}

/**
 * Turn labels into block elements
 * 
 * Labels for inputs, selects, and textarea should be block 
 * elements.
 */
:where(label):has(+ :where(textarea, input, select)) {
  display: block;
}

/**
 * Increase the block-size of textareas
 *
 * The default height of textareas is small. We increase it a bit.
 */
:where(textarea:not([rows])) {
  min-block-size: 6em;
}

/**
 * Inherit font styling in form elements
 * 
 * buttons, inputs, selects, and textarea should have the same font
 * family and size as the rest of the page.
 */
:where(button, input, select, textarea) {
  font-family: inherit;
  font-size: inherit;
}

/**
 * Normalize search input styles
 *  
 * Remove the rounded corners of search inputs on macOS and IOS 
 * and normalize the background color
 */
:where([type=search]) {
  -webkit-appearance: textfield;
  appearance: textfield;
}

/* iOS only */
@supports (-webkit-touch-callout: none) {
  :where([type=search]) {
    border: 1px solid -apple-system-secondary-label;
    background-color: canvas;
  }
}
/**
 * Maintain direction in some input types
 * 
 * Some input types should remain left-aligned in right-to-left
 * languages,but only if the value isn't empty because the 
 * placeholder should be right-aligned.
 *
 * See https://rtlstyling.com/posts/rtl-styling#form-inputs
 */
:where([type=tel], [type=url], [type=email], [type=number]):not(:placeholder-shown) {
  direction: ltr;
}

/**
 * Improve table styling
 *  
 * With the default styling, tables are hard to scan. These rules 
 * add padding and collapsed borders.
 */
:where(table) {
  border-collapse: collapse;
  border: 1px solid;
}

:where(th, td) {
  border: 1px solid;
  padding: 0.25em 0.5em;
}

/**
 * Fading dialogs
 *  
 * Add fade in and fade out transitions for the dialog element
 * and backdrops
 */
:where(dialog) {
  opacity: 0;
  transition: opacity 300ms ease-out, display 300ms allow-discrete, overlay 300ms allow-discrete;
}
:where(dialog)::backdrop {
  background: oklch(0% 0 0/0.3);
  opacity: 0;
  transition: opacity 300ms ease-out, display 300ms allow-discrete, overlay 300ms allow-discrete;
}

:where(dialog[open]) {
  opacity: 1;
}
:where(dialog[open])::backdrop {
  opacity: 1;
}

@starting-style {
  :where(dialog[open]) {
    opacity: 0;
  }
  :where(dialog[open])::backdrop {
    opacity: 0;
  }
}
/**
 * Increase specificity of [hidden]
 *  
 * Make it harder to accidentally unhide elements with the 
 * [hidden] attribute while still maintaining the until-found 
 * functionality.
 */
[hidden]:not([hidden=until-found]) {
  display: none !important;
}

@font-face {
  font-family: "Kotonomo Regular";
  src: url("/fonts/Kotonomo-Regular-Kw-N.woff2") format("woff2");
  font-weight: 400;
}
@font-face {
  font-family: "Kotonomo Bold";
  src: url("/fonts/Kotonomo-Bold-Kw-N.woff2") format("woff2");
  font-weight: 700;
}
@font-face {
  font-family: "Kotonomo Black";
  src: url("/fonts/Kotonomo-Black-Kw-N.woff2") format("woff2");
  font-weight: 900;
}
@font-face {
  font-family: "Mogra";
  src: url("/fonts/Mogra-Regular.woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Olivia";
  src: url("/fonts/Olivia%20Regular.woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Monoton";
  src: url("/fonts/Monoton-Regular.woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Fascinate";
  src: url("/fonts/FascinateInline-Regular.woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
.entry-content td,
.entry-content div,
.entry-content p,
.entry-content li,
.content-area td,
.content-area div,
.content-area p,
.content-area li,
.hfe-copyright-wrapper td,
.hfe-copyright-wrapper div,
.hfe-copyright-wrapper p,
.hfe-copyright-wrapper li {
  font-family: "Kotonomo Regular", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0.3px !important;
  line-height: 1.8 !important;
}

h1,
h2,
h3 {
  font-family: "Olivia", "Kotonomo Black", sans-serif !important;
}

h4,
h5,
h6 {
  font-family: "Mogra", "Kotonomo Bold", sans-serif !important;
  text-transform: uppercase;
}

*::selection {
  background-color: #ff80ab;
  color: #fff;
  overflow-y: hidden;
}

a {
  outline: none !important;
}

table {
  border-bottom: none !important;
  border-width: 0 0 0 0 !important;
}
table th {
  text-align: left !important;
}

.elementor-headline-dynamic-text {
  color: #ff80ab !important;
}

.normal-button {
  position: relative;
  display: inline-block;
  font-family: "Kotonomo Bold", sans-serif !important;
  text-transform: uppercase;
  padding: 0.5rem 1rem 0.5rem 1.7rem;
  background-color: #ff80ab;
  color: #cbff51;
  border: none;
  cursor: pointer;
  font-size: 13px !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.normal-button::before {
  content: "";
  position: absolute;
  left: 0.9em;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 0.3em solid transparent;
  border-bottom: 0.3em solid transparent;
  border-left: 0.4em solid #cbff51;
}
.normal-button:hover {
  background-color: #cbff51;
  color: #ff80ab;
  transform: scale(0.95);
}
.normal-button:hover::before {
  border-left: 0.4em solid #ff80ab;
}

.button-with-arrow {
  position: relative;
  display: inline-block;
  padding-left: 1.5em;
}

.ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link {
  font-family: "Mogra", "Kotonomo Bold", sans-serif !important;
  text-transform: uppercase !important;
}

header .elementor-widget-container a,
ul.uael-nav-menu li.uael-creative-menu a {
  position: relative !important;
  display: block !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
header .elementor-widget-container a:hover,
ul.uael-nav-menu li.uael-creative-menu a:hover {
  color: #92cdfb !important;
  transform: scale(1.2) !important;
}

header #menu-item-1781 a,
header #menu-item-1977 a {
  padding-right: 0 !important;
}

footer #menu-item-1977,
footer #menu-item-1781 {
  margin-right: 18px !important;
}

.uael-menu-item {
  font-family: "Mogra", "Kotonomo Bold", sans-serif !important;
  text-transform: uppercase !important;
}

.uael-post__terms {
  font-size: 12px !important;
  text-transform: uppercase !important;
}

.uael-post__separator {
  margin-bottom: 10px !important;
}

.uael-post__title a {
  color: #414b5a !important;
}
.uael-post__title a:hover {
  color: #ff80ab !important;
}

@keyframes slideInFromLeft {
  0% {
    transform: translateX(-100%) rotate(-5deg);
    opacity: 0;
  }
  100% {
    transform: translateX(0) rotate(-2.8deg);
    opacity: 1;
  }
}
@keyframes slideInFromRight {
  0% {
    transform: translateX(100%) rotate(5deg);
    opacity: 0;
  }
  100% {
    transform: translateX(0) rotate(0.23deg);
    opacity: 1;
  }
}
@keyframes slideInFromLeftBrand {
  0% {
    transform: translateX(-100%) rotate(-10deg);
    opacity: 0;
  }
  100% {
    transform: translateX(0) rotate(-5deg);
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.hero {
  position: relative;
  background-image: url(assets/images/bg.jpg);
  background-size: cover;
  background-position: center;
  overflow: hidden;
  width: 100%;
  height: calc(40.2083333333vw - 40.2083333333 * var(--scrollbar-width) / 100);
}
@media screen and (max-width: 767px) {
  .hero {
    height: calc(133.3333333333vw - 133.3333333333 * var(--scrollbar-width) / 100) !important;
  }
}
.hero__inner {
  max-width: 100%;
  margin: 0 auto;
  width: 100%;
  z-index: 2;
  position: relative;
}
.hero__sub-headline {
  position: absolute;
  top: calc(9.2361111111vw - 9.2361111111 * var(--scrollbar-width) / 100);
  left: calc(47.3611111111vw - 47.3611111111 * var(--scrollbar-width) / 100);
  background-color: #cbff51;
  padding: 10px 16px;
  font-family: "Mogra", "Kotonomo Bold", sans-serif !important;
  text-transform: uppercase !important;
  font-size: 1.5vw;
  display: inline;
  line-height: 1;
  color: #ff80ab;
  white-space: nowrap;
  transform: rotate(-2.8deg);
  letter-spacing: 1px;
  z-index: 1;
  opacity: 0;
  animation: slideInFromLeft 0.8s ease-out 0.7s forwards;
}
@media screen and (max-width: 767px) {
  .hero__sub-headline {
    padding: 6px 16px;
    top: calc(3.7333333333vw - 3.7333333333 * var(--scrollbar-width) / 100) !important;
    left: 50% !important;
    transform: translateX(-50%) rotate(-2.8deg) !important;
    font-size: 10px !important;
  }
}
.hero__headline {
  position: absolute;
  top: calc(13.4722222222vw - 13.4722222222 * var(--scrollbar-width) / 100);
  left: calc(37.0138888889vw - 37.0138888889 * var(--scrollbar-width) / 100);
  background-color: #ff80ab;
  color: #cbff51;
  font-family: "Monoton", sans-serif;
  font-weight: 400 !important;
  font-size: 4vw;
  padding: 16px 40px;
  line-height: 1;
  display: inline;
  text-transform: uppercase;
  white-space: nowrap;
  transform: rotate(0.23deg);
  z-index: 1;
  opacity: 0;
  animation: slideInFromRight 0.8s ease-out 1s forwards;
}
@media screen and (max-width: 767px) {
  .hero__headline {
    padding: 8px 20px;
    top: calc(13.3333333333vw - 13.3333333333 * var(--scrollbar-width) / 100) !important;
    left: 50% !important;
    transform: translateX(-50%) rotate(0.23deg) !important;
    font-size: 30px !important;
  }
}
.hero__brand-name {
  position: absolute;
  top: calc(20.8333333333vw - 20.8333333333 * var(--scrollbar-width) / 100);
  left: calc(46.25vw - 46.25 * var(--scrollbar-width) / 100);
  background-color: #cbff51;
  color: #ff80ab;
  font-family: "Fascinate", sans-serif;
  font-weight: 400 !important;
  font-size: 6vw;
  padding: 16px 80px;
  display: inline-block;
  text-transform: uppercase;
  white-space: nowrap;
  transform: rotate(-5deg);
  z-index: 1;
  opacity: 0;
  animation: slideInFromLeftBrand 0.8s ease-out 1.3s forwards;
}
@media screen and (max-width: 767px) {
  .hero__brand-name {
    padding: 8px 40px;
    top: calc(25.3333333333vw - 25.3333333333 * var(--scrollbar-width) / 100) !important;
    left: 50% !important;
    transform: translateX(-50%) rotate(-5deg) !important;
    font-size: 50px !important;
  }
}
.hero__button {
  position: absolute;
  top: calc(32.9166666667vw - 32.9166666667 * var(--scrollbar-width) / 100);
  left: calc(67.1527777778vw - 67.1527777778 * var(--scrollbar-width) / 100);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .hero__button {
    top: calc(44vw - 44 * var(--scrollbar-width) / 100) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    font-size: 11 !important;
  }
}
.hero__yarn-ball-wrapper {
  display: block;
  position: absolute;
  top: calc(19.0972222222vw - 19.0972222222 * var(--scrollbar-width) / 100);
  left: calc(20.9027777778vw - 20.9027777778 * var(--scrollbar-width) / 100);
  width: calc(29.7916666667vw - 29.7916666667 * var(--scrollbar-width) / 100);
  height: calc(21.7361111111vw - 21.7361111111 * var(--scrollbar-width) / 100);
  z-index: 2;
  opacity: 0;
  animation: fadeIn 1s ease-in 0.2s forwards;
  cursor: pointer;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media screen and (max-width: 767px) {
  .hero__yarn-ball-wrapper {
    top: calc(85.3333333333vw - 85.3333333333 * var(--scrollbar-width) / 100) !important;
    left: calc(29.0666666667vw - 29.0666666667 * var(--scrollbar-width) / 100) !important;
    width: calc(68.5333333333vw - 68.5333333333 * var(--scrollbar-width) / 100) !important;
    height: auto !important;
  }
}
.hero__yarn-ball-wrapper:hover {
  transform: scale(1.1) rotate(10deg);
}
.hero__chicken-runner-wrapper {
  display: block;
  position: absolute;
  top: calc(4.7222222222vw - 4.7222222222 * var(--scrollbar-width) / 100);
  left: calc(5.7638888889vw - 5.7638888889 * var(--scrollbar-width) / 100);
  width: calc(28.3333333333vw - 28.3333333333 * var(--scrollbar-width) / 100);
  height: calc(37.2222222222vw - 37.2222222222 * var(--scrollbar-width) / 100);
  animation: waddleSkip 6s ease-in-out 0s forwards;
  z-index: 10;
  will-change: transform;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .hero__chicken-runner-wrapper {
    top: calc(53.3333333333vw - 53.3333333333 * var(--scrollbar-width) / 100) !important;
    left: 0 !important;
    width: calc(63.2vw - 63.2 * var(--scrollbar-width) / 100) !important;
    height: auto !important;
  }
}
.hero__chicken-runner {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.hero__chicken-fixed-wrapper {
  display: block;
  position: absolute;
  top: calc(4.7222222222vw - 4.7222222222 * var(--scrollbar-width) / 100);
  left: calc(5.7638888889vw - 5.7638888889 * var(--scrollbar-width) / 100);
  width: calc(28.3333333333vw - 28.3333333333 * var(--scrollbar-width) / 100);
  height: calc(37.2222222222vw - 37.2222222222 * var(--scrollbar-width) / 100);
  z-index: 10;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
  pointer-events: none;
  cursor: pointer;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media screen and (max-width: 767px) {
  .hero__chicken-fixed-wrapper {
    top: calc(53.3333333333vw - 53.3333333333 * var(--scrollbar-width) / 100) !important;
    left: 0 !important;
    width: calc(63.2vw - 63.2 * var(--scrollbar-width) / 100) !important;
    height: auto !important;
  }
}
.hero__chicken-fixed-wrapper:hover {
  transform: scale(1.1) rotate(-3deg);
}
.hero__chicken-fixed-wrapper.visible {
  opacity: 1;
  pointer-events: auto;
}
.hero__chicken-fixed {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@keyframes waddleSkip {
  0% {
    transform: translateX(-120%) translateY(0) rotate(0deg);
    opacity: 1;
  }
  10% {
    transform: translateX(-100vw) translateY(-10px) rotate(-2deg);
    opacity: 1;
  }
  20% {
    transform: translateX(-80vw) translateY(0) rotate(2deg);
    opacity: 1;
  }
  30% {
    transform: translateX(-60vw) translateY(-12px) rotate(-2deg);
    opacity: 1;
  }
  40% {
    transform: translateX(-40vw) translateY(0) rotate(1deg);
    opacity: 1;
  }
  50% {
    transform: translateX(-20vw) translateY(-10px) rotate(-1deg);
    opacity: 1;
  }
  60% {
    transform: translateX(0vw) translateY(0) rotate(1deg);
    opacity: 1;
  }
  70% {
    transform: translateX(20vw) translateY(-8px) rotate(-1deg);
    opacity: 1;
  }
  80% {
    transform: translateX(40vw) translateY(0) rotate(0deg);
    opacity: 1;
  }
  90% {
    transform: translateX(60vw) translateY(-5px) rotate(1deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100vw) translateY(0) rotate(0deg);
    opacity: 1;
  }
}

.xoo-wsc-sc-bki {
  color: #cbff51 !important;
}

span.xoo-wsc-sc-count {
  background-color: #92cdfb !important;
  color: #414b5a !important;
  font-size: 10px !important;
  font-family: "Kotonomo Black", sans-serif !important;
}

.xoo-wsc-cart-active * {
  font-family: "Kotonomo Bold", sans-serif !important;
}

.page-template-default #content .ast-container {
  max-width: 100% !important;
  padding: 0 0 !important;
}
.page-template-default #content .ast-container #primary {
  margin-top: 0 !important;
}
.page-template-default #content .ast-container #primary h2,
.page-template-default #content .ast-container #primary h3,
.page-template-default #content .ast-container #primary h4,
.page-template-default #content .ast-container #primary h5,
.page-template-default #content .ast-container #primary h6 {
  color: #414b5a !important;
}
.page-template-default #content .ast-container #primary p {
  font-family: "Kotonomo regular", sans-serif !important;
}