:root {
  --eu-cyan: #12adcc;
  --eu-cyan-dark: #0fa3be;
  --eu-ink: #080a0f;
  --eu-muted: #777;
  --eu-soft: #f5f5f7;
}

.euhomy-page {
  color: var(--eu-ink);
  font-family: MyOutFit, Arial, sans-serif;
  font-weight: 400;
}

.euhomy-page :where(button, input, select, textarea) { font-family: inherit; }
.euhomy-page .siteHeader { background: #fff; border-bottom: 1px solid #d8d8d8; position: sticky; top: 0; z-index: 50; }
.euhomy-page .announcement { align-items: center; background: #000; color: #fff; display: flex; font-size: 12px; font-weight: 700; height: 32px; justify-content: center; line-height: 20px; text-decoration: none; width: 100%; }
.euhomy-page .stickyHeader { height: 53px; min-height: 53px; }
.eu-header-inner { align-items: center; display: grid; grid-template-columns: 148px 1fr 122px; height: 53px; margin: auto; max-width: 1248px; }
.eu-logo { display: flex; width: 122px; }
.eu-logo img { height: auto; width: 122px; }
.eu-nav { align-items: center; display: flex; gap: 43px; justify-content: center; }
.eu-nav a { align-items: center; display: inline-flex; font-size: 15px; gap: 7px; line-height: 1; white-space: nowrap; }
.eu-actions { align-items: center; display: flex; gap: 14px; justify-content: flex-end; }
.eu-actions .iconButton { height: 30px; padding: 3px; width: 30px; }
.eu-actions .tt-icon { height: 25px; width: 25px; }
.eu-mobile-bar, .eu-mobile-menu { display: none; }
.euhomy-page .primaryButton,
.euhomy-page .button,
.euhomy-page button.single_add_to_cart_button,
.euhomy-page .checkoutButton,
.euhomy-page .startShopping { background: var(--eu-cyan); border-color: var(--eu-cyan); border-radius: 999px; color: #fff; }
.euhomy-page button.single_add_to_cart_button {
  background: #111820 !important;
  border-color: #111820 !important;
  color: #fff !important;
}
.euhomy-page .productType, .euhomy-page .catalogPrice { color: var(--eu-muted); }
.woocommerce.euhomy-page button.single_add_to_cart_button,
.woocommerce.euhomy-page .tt-commerce-shell .button.alt,
.woocommerce.euhomy-page .tt-commerce-shell .button {
  background: #111820 !important;
  border-color: #111820 !important;
  color: #fff !important;
}
.woocommerce.euhomy-page button.single_add_to_cart_button:hover,
.woocommerce.euhomy-page .tt-commerce-shell .button:hover {
  background: var(--eu-cyan) !important;
  border-color: var(--eu-cyan) !important;
}
.euhomy-page .sizeQuiz { background: #f5f5f7; border: 0; }
.euhomy-page .collectionHeroContent { background: var(--eu-soft); color: var(--eu-ink); }
.euhomy-page .benefitsBand, .euhomy-page .hairCareBand { background: var(--eu-cyan); color: #fff; }
.euhomy-page .footer { background: #000; color: #fff; }
.eu-home-fallback { align-items: flex-start; background: #f5f5f7; display: flex; flex-direction: column; justify-content: center; min-height: 520px; padding: 70px max(24px, calc((100vw - 1248px) / 2)); }
.eu-home-fallback h1 { color: #12adcc; font-size: clamp(64px, 10vw, 140px); line-height: .9; }
.eu-home-fallback p { font-size: 20px; margin: 28px 0; max-width: 600px; }
.eu-footer { min-height: 620px; padding: 68px max(24px, calc((100vw - 1248px) / 2)); }
.eu-footer-inner { margin: auto; max-width: 1248px; }
.eu-footer-main { display: grid; gap: 55px; grid-template-columns: minmax(0, 1fr) 230px; }
.eu-footer-groups { display: grid; gap: 54px; grid-template-columns: 1.05fr 1fr 1fr 1fr; }
.eu-footer-group h2, .eu-footer-subscribe h2 { font-size: 14px; font-weight: 600; margin: 0 0 14px; }
.eu-footer-group ul { display: grid; gap: 14px; list-style: none; margin: 0; padding: 0; }
.eu-footer-group a, .eu-footer-subscribe p { color: #b5b5b5; font-size: 13px; line-height: 1.45; }
.eu-footer-group:first-child a { color: #fff; font-size: 11px; }
.eu-footer-form { background: #fff; border-radius: 999px; display: flex; margin-top: 18px; overflow: hidden; }
.eu-footer-form input { border: 0; flex: 1; min-width: 0; padding: 14px 12px; }
.eu-footer-form button { align-items: center; background: #12adcc; border: 0; color: #fff; display: flex; justify-content: center; width: 37px; }
.eu-footer-brand-row { align-items: flex-end; display: flex; justify-content: space-between; margin-top: 70px; }
.eu-footer-brand { align-items: center; display: flex; gap: 12px; }
.eu-footer-brand img { height: auto; width: 100px; }
.eu-social { display: flex; gap: 9px; }
.eu-social a { align-items: center; background: #242424; display: flex; height: 23px; justify-content: center; width: 23px; }
.eu-market { font-size: 14px; }
.eu-footer-bottom { align-items: center; border-top: 1px solid #444; display: flex; font-size: 14px; justify-content: space-between; margin-top: 30px; padding-top: 30px; }
.eu-payments { display: flex; gap: 8px; }
.eu-payments span { background: #fff; border-radius: 2px; color: #111; font-size: 9px; padding: 5px 7px; }
.eu-footer .footerAccordionButton { display: none; }

@media (max-width: 1100px) {
  .eu-header-inner { padding: 0 24px; }
  .eu-nav { gap: 22px; }
  .eu-nav a { font-size: 13px; }
}

@media (max-width: 768px) {
  .euhomy-page .announcement { font-size: 11px; height: 31px; line-height: 18px; padding: 0 10px; }
  .euhomy-page .stickyHeader { height: 47px; min-height: 47px; }
  .eu-header-inner { display: none; }
  .eu-mobile-bar { align-items: center; display: grid; grid-template-columns: 1fr auto 1fr; height: 47px; padding: 0 15px; }
  .eu-mobile-left, .eu-mobile-right { align-items: center; display: flex; gap: 10px; }
  .eu-mobile-right { justify-content: flex-end; }
  .eu-mobile-bar .eu-logo { width: 100px; }
  .eu-mobile-bar .eu-logo img { width: 100px; }
  .eu-mobile-bar .iconButton, .eu-mobile-bar .mobileToggle { background: transparent; border: 0; height: 30px; padding: 2px; width: 30px; }
  .eu-mobile-menu { background: #fff; inset: 64px 0 auto; max-height: calc(100vh - 64px); overflow: auto; padding: 24px; position: absolute; }
.eu-mobile-menu.mobileMenuOpen { display: block; }
  .eu-mobile-menu a { border-bottom: 1px solid #e7e7e7; display: block; font-size: 18px; padding: 16px 0; }
  .eu-footer { min-height: 740px; padding: 50px 15px 38px; }
  .eu-footer-main { display: block; }
  .eu-footer-groups { display: block; }
  .eu-footer-group h2, .eu-footer-group .footerLinks { display: none; }
  .eu-footer .footerAccordionButton { align-items: center; background: none; border: 0; color: #fff; display: flex; font-size: 14px; font-weight: 600; justify-content: space-between; padding: 0 0 28px; width: 100%; }
  .eu-footer .footerAccordionButton .tt-icon { height: 18px; width: 18px; }
  .eu-footer-group .footerLinks.footerLinksOpen { display: grid; margin: -14px 0 28px; }
  .eu-footer-subscribe { margin-top: 4px; }
  .eu-footer-subscribe h2 { margin-bottom: 24px; }
  .eu-footer-subscribe p { color: #fff; }
  .eu-footer-form { margin-top: 18px; }
  .eu-footer-form input { padding: 13px 16px; }
  .eu-footer-form button { width: 48px; }
  .eu-footer-brand-row { align-items: flex-start; flex-direction: column; margin-top: 50px; }
  .eu-footer-brand { align-items: flex-start; flex-direction: column; gap: 24px; width: 100%; }
  .eu-footer-brand img { width: min(100%, 360px); }
  .eu-social a { font-size: 22px; height: 28px; width: 28px; }
  .eu-market { margin-top: 28px; }
  .eu-footer-bottom { align-items: flex-start; flex-direction: column-reverse; gap: 30px; }
  .eu-payments { flex-wrap: wrap; }
}
