/**
 * Wendewerk Mobile Navigation frontend.
 * Uses existing Inter typography; #00ACEC only for interaction details and #12405E for information hierarchy.
 */
:root {
  --wmn-accent: #00acec;
  --wmn-ink: #12405e;
  --wmn-line: #e5e7eb;
  --wmn-radius: 8px;
  --wmn-header-bg: #ffffff;
  --wmn-panel-bg: #ffffff;
  --wmn-quick-bg: #ffffff;
  --wmn-quick-hover-bg: #eaf8fd;
  --wmn-quick-hover-text: #12405e;
  --wmn-offer-bg: #eefaff;
  --wmn-offer-card-bg: #ffffff;
  --wmn-offer-hover-bg: #ffffff;
  --wmn-offer-hover-border: #00acec;
  --wmn-hover-transform: translateY(-2px) scale(1);
  --wmn-hover-duration: 160ms;
  --wmn-hover-shadow: 0 12px 24px rgba(18,64,94,.14);
  --wmn-hover-border-width: 1px;
  --wmn-icon-size: 21px;
  --wmn-icon-color: #12405e;
  --wmn-icon-hover-color: #12405e;
	--wmn-social-icon-size: 19px;
	--wmn-menu-item-font-size: 14px;
  --wmn-ease: cubic-bezier(.23, 1, .32, 1);
}

.wmn-panel-open { overflow: hidden !important; }
.wmn, .wmn * { box-sizing: border-box; }
.wmn svg, .wmn-full-header svg, .wmn-menu-button svg { width: var(--wmn-icon-size); height: var(--wmn-icon-size); display: block; flex: 0 0 auto; color: var(--wmn-icon-color); fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; transition: color var(--wmn-button-hover-duration, 160ms) var(--wmn-ease); }
.wmn button:hover svg, .wmn a:hover svg, .wmn-full-header button:hover svg, .wmn-menu-button:hover svg { color: var(--wmn-icon-hover-color); }

.wmn-menu-button, .wmn-icon-button, .wmn-close-button, .wmn-back-button {
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
  font: inherit;
}
.wmn-menu-button:focus-visible, .wmn-icon-button:focus-visible, .wmn-close-button:focus-visible, .wmn-back-button:focus-visible { outline: var(--wmn-button-focus-width) solid var(--wmn-button-focus); outline-offset: 3px; }
.wmn a:focus-visible, .wmn input:focus-visible { outline: 3px solid color-mix(in srgb, var(--wmn-accent), white 38%); outline-offset: 3px; }

.wmn-menu-button, .wmn-icon-button, .wmn-close-button, .wmn-back-button {
  min-width: var(--wmn-button-height);
  min-height: var(--wmn-button-height);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 var(--wmn-button-padding-x);
  color: var(--wmn-button-text);
  background: var(--wmn-button-bg);
  border: var(--wmn-button-border-width) solid var(--wmn-button-border);
  border-radius: var(--wmn-button-radius);
  box-shadow: var(--wmn-button-shadow);
  transition: color var(--wmn-button-hover-duration) var(--wmn-ease), background-color var(--wmn-button-hover-duration) var(--wmn-ease), border-color var(--wmn-button-hover-duration) var(--wmn-ease), box-shadow var(--wmn-button-hover-duration) var(--wmn-ease), transform var(--wmn-button-hover-duration) var(--wmn-ease);
}
.wmn-menu-button span, .wmn-close-button span, .wmn-back-button span { font-size: var(--wmn-button-font-size); font-weight: var(--wmn-button-font-weight); }
.wmn-menu-button--icon { width: var(--wmn-button-height); padding: 0; }
.wmn-menu-button--text, .wmn-menu-button--both { width: auto; }
.wmn-menu-button > .wmn-menu-button__icon { width: var(--wmn-menu-button-icon-size, var(--wmn-icon-size)); height: var(--wmn-menu-button-icon-size, var(--wmn-icon-size)); display: inline-flex !important; flex: 0 0 auto; align-items: center; justify-content: center; color: var(--wmn-menu-button-icon-color, var(--wmn-icon-color)); line-height: 0; overflow: visible; }
.wmn-menu-button > .wmn-menu-button__icon svg { width: 100% !important; height: 100% !important; display: block !important; max-width: none !important; max-height: none !important; visibility: visible !important; opacity: 1 !important; color: currentColor !important; fill: none !important; stroke: currentColor !important; }
.wmn-menu-button:hover > .wmn-menu-button__icon { color: var(--wmn-menu-button-icon-hover-color, var(--wmn-icon-hover-color)); }
.wmn-menu-button:hover, .wmn-icon-button:hover, .wmn-close-button:hover, .wmn-back-button:hover { color: var(--wmn-button-hover-text); background: var(--wmn-button-hover-bg); border-color: var(--wmn-button-hover-border); box-shadow: var(--wmn-button-hover-shadow); transform: var(--wmn-button-hover-transform); }
.wmn-menu-button:active, .wmn-icon-button:active, .wmn-close-button:active, .wmn-back-button:active, .wmn-primary-nav__item:active, .wmn-quick-actions a:active, .wmn-section-links a:active { transform: scale(.975); }

.wmn-full-header { display: none; background: var(--wmn-header-bg); }
.wmn__backdrop { position: fixed; z-index: 999997; inset: 0; opacity: 0; visibility: hidden; background: rgba(18, 64, 94, .18); transition: opacity 220ms var(--wmn-ease), visibility 220ms var(--wmn-ease); }
.wmn__panel { position: fixed; z-index: 999998; inset: 0; overflow-y: auto; overscroll-behavior: contain; padding: 0 20px 34px; color: var(--wmn-ink); background: var(--wmn-panel-bg); font-family: Inter, system-ui, sans-serif; opacity: 0; pointer-events: none; transform: translate3d(16px, 0, 0); transition: opacity 250ms var(--wmn-ease), transform 250ms var(--wmn-ease); }
.wmn.is-open .wmn__backdrop { opacity: 1; visibility: visible; }
.wmn.is-open .wmn__panel { opacity: 1; pointer-events: auto; transform: translate3d(0, 0, 0); }

.wmn__panel-top { height: 72px; display: flex; align-items: center; justify-content: space-between; }
.wmn-brand { display: inline-flex; align-items: center; min-height: 42px; color: var(--wmn-ink); text-decoration: none; }
.wmn-brand__logo { display: block; width: auto; max-width: 152px; max-height: 28px; height: auto; object-fit: contain; }
.wmn-brand__fallback { color: var(--wmn-ink); font-size: 17px; font-weight: 700; letter-spacing: -.7px; }
.wmn__panel-actions, .wmn-full-header__actions { display: inline-flex; align-items: center; gap: 1px; }
.wmn-icon-button { width: var(--wmn-button-height); height: var(--wmn-button-height); display: grid; place-items: center; padding: 0; }
.wmn-close-button, .wmn-back-button { min-height: var(--wmn-button-height); display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 var(--wmn-button-padding-x); }

.wmn__view--landing { min-height: calc(100svh - 106px); }
.wmn__intro { padding: 42px 0 29px; }
.wmn__view--position-top .wmn__intro { padding-top: 25px; }
.wmn__view--position-center .wmn__intro { padding-top: clamp(58px, 12svh, 132px); }
.wmn__view--position-bottom .wmn__intro { padding-top: clamp(94px, 20svh, 212px); }
.wmn__intro--search { padding-top: 42px; }
.wmn-eyebrow { display: flex; align-items: center; gap: 7px; margin: 0 0 13px; color: var(--wmn-ink); font-size: 10px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.wmn-eyebrow span { width: 7px; height: 7px; display: block; border-radius: 50%; background: var(--wmn-accent); }
.wmn__intro h2, .wmn-section-heading h2 { max-width: 330px; margin: 0; color: var(--wmn-ink); font-size: clamp(31px, 9.4vw, 38px); font-weight: 700; letter-spacing: -2.25px; line-height: 1; }
.wmn__intro > p:last-child { margin: 15px 0 0; color: #4b5563; font-size: 14px; line-height: 1.58; }

.wmn-quick-actions { border-top: 1px solid var(--wmn-line); border-bottom: 1px solid var(--wmn-line); }
.wmn-quick-actions a { min-height: 58px; display: grid; grid-template-columns: 35px 1fr 25px; align-items: center; column-gap: 8px; color: var(--wmn-ink); background: var(--wmn-quick-bg); border-bottom: 1px solid var(--wmn-line); font-size: var(--wmn-menu-item-font-size); font-weight: var(--wmn-menu-weight-quick); line-height: var(--wmn-menu-line-quick); letter-spacing: var(--wmn-menu-letter-quick); text-decoration: none; transition: color var(--wmn-hover-duration) var(--wmn-ease), background-color var(--wmn-hover-duration) var(--wmn-ease), transform var(--wmn-hover-duration) var(--wmn-ease); }
.wmn-quick-actions a:last-child { border-bottom: 0; }
.wmn-quick-actions a:hover { color: var(--wmn-quick-hover-text); background: var(--wmn-quick-hover-bg); transform: var(--wmn-hover-transform); }
.wmn-quick-actions svg { justify-self: end; }
.wmn-quick-actions__number { width: 24px; height: 24px; display: grid; place-items: center; color: #fff; background: var(--wmn-ink); border-radius: 50%; font-size: 9px; font-weight: 700; letter-spacing: .04em; }

.wmn-offers { margin: 32px -20px 0; padding: 20px 20px 18px; background: var(--wmn-offer-bg); border-top: 1px solid var(--wmn-line); border-bottom: 1px solid var(--wmn-line); }
.wmn-offers__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.wmn-offers__top p { margin: 0; color: var(--wmn-ink); font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.wmn-offers__top > span { padding: 4px 7px; color: var(--wmn-ink); background: #fff; border: 1px solid #c4ebf8; border-radius: 999px; font-size: 9px; font-weight: 700; }
.wmn-offers__rail { display: flex; gap: 10px; overflow-x: auto; margin: 0 -20px; padding: 0 20px 3px; scroll-snap-type: x mandatory; scrollbar-width: none; }
.wmn-offers__rail::-webkit-scrollbar { display: none; }
.wmn-offers__card { width: min(78vw, 292px); min-height: 178px; flex: 0 0 auto; display: flex; flex-direction: column; align-items: flex-start; padding: 17px; color: var(--wmn-ink); background: var(--wmn-offer-card-bg); border: 1px solid var(--wmn-line); border-top: 3px solid var(--wmn-offer-accent); border-radius: var(--wmn-radius); box-shadow: 0 7px 16px rgba(18,64,94,.08); scroll-snap-align: start; text-decoration: none; transition: background-color var(--wmn-hover-duration) var(--wmn-ease), border-color var(--wmn-hover-duration) var(--wmn-ease), transform var(--wmn-hover-duration) var(--wmn-ease), box-shadow var(--wmn-hover-duration) var(--wmn-ease), outline-width var(--wmn-hover-duration) var(--wmn-ease); }
.wmn-offers__card:hover { background: var(--wmn-offer-hover-bg); border-color: var(--wmn-offer-hover-border); outline: var(--wmn-hover-border-width) solid var(--wmn-offer-hover-border); outline-offset: calc(var(--wmn-hover-border-width) * -1); transform: var(--wmn-hover-transform); box-shadow: var(--wmn-hover-shadow); }
.wmn-offers__card:active { transform: scale(.98); }
.wmn-offers__eyebrow { color: var(--wmn-offer-accent); font-size: 9px; font-weight: 800; letter-spacing: .11em; }
.wmn-offers__card strong { margin-top: 9px; font-size: 17px; font-weight: 700; line-height: 1.08; letter-spacing: -.6px; }
.wmn-offers__card small { margin-top: 8px; color: #4b5563; font-size: 11px; line-height: 1.45; }
.wmn-offers__cta { display: inline-flex; align-items: center; gap: 5px; margin-top: auto; color: var(--wmn-ink); font-size: 11px; font-weight: 700; }
.wmn-offers__cta svg { width: var(--wmn-icon-size); height: var(--wmn-icon-size); }
.wmn-offers__dots { display: flex; justify-content: center; gap: 5px; margin-top: 13px; }
.wmn-offers__dots span { width: 5px; height: 5px; background: #a3dced; border-radius: 50%; }
.wmn-offers__dots .is-active { width: 15px; background: var(--wmn-ink); border-radius: 6px; }
.wmn-offers__loading[hidden] { display: none; }
.wmn-offers.is-loading [data-wmn-offers-content] { display: none; }
.wmn-offers.is-loading .wmn-offers__loading { display: block; }
.wmn-offers__skeleton { width: min(78vw, 292px); min-height: 178px; flex: 0 0 auto; display: flex; flex-direction: column; gap: 10px; padding: 17px; background: #fff; border: 1px solid #c4ebf8; border-top: 3px solid #a3dced; border-radius: var(--wmn-radius); scroll-snap-align: start; }
.wmn-skeleton-line { display: block; height: 10px; background: linear-gradient(100deg, #edf5f8 28%, #f8fcfd 44%, #edf5f8 60%); background-size: 220% 100%; border-radius: 999px; animation: wmn-skeleton-shimmer 1.45s linear infinite; }
.wmn-skeleton-line--eyebrow { width: 31%; height: 7px; margin-bottom: 6px; }.wmn-skeleton-line--title { width: 79%; height: 18px; }.wmn-skeleton-line--short { width: 66%; }.wmn-skeleton-line--cta { width: 38%; height: 9px; margin-top: auto; }
@keyframes wmn-skeleton-shimmer { to { background-position: -220% 0; } }
@media (prefers-reduced-motion: reduce) { .wmn-skeleton-line { animation: none; } }

@media (max-height: 760px) {
  .wmn__view--position-center .wmn__intro { padding-top: 38px; }
  .wmn__view--position-bottom .wmn__intro { padding-top: 58px; }
}

.wmn-browse-label { margin: 34px 0 10px; color: #4b5563; font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.wmn-primary-nav { border-top: 1px solid var(--wmn-line); }
.wmn-primary-nav__item { width: 100%; min-height: 76px; display: grid; grid-template-columns: calc(var(--wmn-section-icon-size, var(--wmn-icon-size)) + 10px) minmax(0, 1fr) 24px; align-items: center; gap: 7px; padding: 11px 0; color: var(--wmn-ink); background: transparent; border: 0; border-bottom: 1px solid var(--wmn-line); font: inherit; text-align: left; transition: background-color 160ms var(--wmn-ease), transform 160ms var(--wmn-ease); cursor: pointer; }
.wmn-primary-nav__item:hover { background: #f7f7f7; }
.wmn-primary-nav__symbol { width: calc(var(--wmn-section-icon-size, var(--wmn-icon-size)) + 10px); height: calc(var(--wmn-section-icon-size, var(--wmn-icon-size)) + 10px); display: inline-flex !important; flex: 0 0 auto; align-items: center; justify-content: center; color: var(--wmn-section-icon-color, var(--wmn-icon-color)); border: 1px solid var(--wmn-line); border-radius: 50%; line-height: 0; overflow: visible; }
.wmn-primary-nav__symbol svg { width: var(--wmn-section-icon-size, var(--wmn-icon-size)) !important; height: var(--wmn-section-icon-size, var(--wmn-icon-size)) !important; display: block !important; flex: 0 0 auto; max-width: none !important; max-height: none !important; visibility: visible !important; opacity: 1 !important; color: currentColor !important; fill: none !important; stroke: currentColor !important; }
.wmn-primary-nav__copy { display: grid; gap: 3px; }
.wmn-primary-nav__copy strong { font-size: var(--wmn-menu-item-font-size); font-weight: var(--wmn-menu-weight-primary); line-height: var(--wmn-menu-line-primary); letter-spacing: var(--wmn-menu-letter-primary); }
.wmn-primary-nav__copy small { color: #4b5563; font-size: 11px; font-weight: 500; line-height: 1.35; }
.wmn-primary-nav__item > svg { justify-self: end; }
.wmn-notice { display: grid; gap: 7px; padding: 18px; color: var(--wmn-ink); background: #f7f7f7; border: 1px solid var(--wmn-line); border-radius: var(--wmn-radius); font-size: 13px; line-height: 1.5; }
.wmn-social-footer { margin: 39px 0 0; padding: 23px 0 2px; border-top: 1px solid var(--wmn-line); }
.wmn-social-footer > p { margin: 0 0 13px; color: #4b5563; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.wmn-social-footer nav { display: flex; flex-wrap: wrap; gap: 9px; }
.wmn-social-footer__link { width: max(42px, calc(var(--wmn-social-icon-size) + 18px)); height: max(42px, calc(var(--wmn-social-icon-size) + 18px)); display: grid; place-items: center; color: var(--wmn-ink); background: #fff; border: 1px solid var(--wmn-line); border-radius: 50%; text-decoration: none; transition: color 160ms var(--wmn-ease), background-color 160ms var(--wmn-ease), border-color 160ms var(--wmn-ease), transform 160ms var(--wmn-ease); }
.wmn-social-footer__link:hover { color: #fff; background: var(--wmn-ink); border-color: var(--wmn-ink); }
.wmn-social-footer__link:active { transform: scale(.96); }
.wmn-social-footer__link:hover svg { color: #fff; }
.wmn-social-footer__link svg { width: var(--wmn-social-icon-size); height: var(--wmn-social-icon-size); stroke-width: 1.65; }
.wmn-visually-hidden { 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; }

.wmn-section-heading { position: relative; min-height: 155px; padding: 34px 18px 24px; border: 1px solid var(--wmn-line); border-radius: var(--wmn-radius); background: #fff; }
.wmn-section-heading h2 { font-size: 29px; letter-spacing: -1.6px; }
.wmn-section-links { margin-top: 27px; }
.wmn-link-group { margin: 27px 0 0; }
.wmn-link-group:first-child { margin-top: 0; }
.wmn-link-group h3 { margin: 0 0 7px; color: #4b5563; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.wmn-link-group a, .wmn-simple-link { min-height: 48px; display: flex; align-items: center; justify-content: space-between; color: var(--wmn-ink); background: transparent; border-bottom: 1px solid var(--wmn-line); font-size: var(--wmn-menu-item-font-size); font-weight: var(--wmn-menu-weight-detail); line-height: var(--wmn-menu-line-detail); letter-spacing: var(--wmn-menu-letter-detail); text-decoration: none; transition: color 160ms var(--wmn-ease), background-color 160ms var(--wmn-ease), transform 160ms var(--wmn-ease); }
.wmn-link-group a:hover, .wmn-simple-link:hover { color: var(--wmn-ink); background: rgba(0, 172, 236, .06); }
.wmn-context-cta { min-height: 53px; display: flex; align-items: center; justify-content: space-between; margin-top: 35px; padding: 0 17px; color: #fff; background: var(--wmn-ink); border-radius: var(--wmn-radius); font-size: var(--wmn-menu-item-font-size); font-weight: var(--wmn-menu-weight-detail); line-height: var(--wmn-menu-line-detail); letter-spacing: var(--wmn-menu-letter-detail); text-decoration: none; transition: transform 160ms var(--wmn-ease), background-color 160ms var(--wmn-ease); }
.wmn-context-cta:hover { background: #0e334c; }

.wmn-search-form { min-height: 58px; display: flex; align-items: center; gap: 12px; padding: 0 13px 0 15px; background: #fff; border: 1px solid var(--wmn-line); border-radius: var(--wmn-radius); box-shadow: 0 8px 20px rgba(18, 64, 94, .04); }
.wmn-search-form:focus-within { border-color: var(--wmn-accent); box-shadow: 0 0 0 3px rgba(0, 172, 236, .18); }
.wmn-search-form > svg { flex: none; color: var(--wmn-ink); }
.wmn-search-form input { min-width: 0; flex: 1; padding: 0; color: var(--wmn-ink); background: transparent; border: 0; outline: 0; font: inherit; font-size: var(--wmn-menu-item-font-size); font-weight: var(--wmn-menu-weight-search); line-height: var(--wmn-menu-line-search); letter-spacing: var(--wmn-menu-letter-search); }
.wmn-search-form input::placeholder { color: #87909a; }
.wmn-search-form button { width: 34px; height: 34px; display: grid; place-items: center; padding: 0; color: var(--wmn-ink); background: #f7f7f7; border: 0; border-radius: 50%; cursor: pointer; }
.wmn-popular-searches { margin-top: 37px; }
.wmn-popular-searches > p { margin: 0 0 14px; color: #4b5563; font-size: 12px; font-weight: 700; }
.wmn-popular-searches > div { display: flex; flex-wrap: wrap; gap: 9px; }
.wmn-popular-searches a { min-height: 39px; display: inline-flex; align-items: center; gap: 7px; padding: 0 11px 0 13px; color: var(--wmn-ink); background: #fff; border: 1px solid var(--wmn-line); border-radius: var(--wmn-radius); font-size: var(--wmn-menu-item-font-size); font-weight: var(--wmn-menu-weight-search); line-height: var(--wmn-menu-line-search); letter-spacing: var(--wmn-menu-letter-search); text-decoration: none; transition: color 160ms var(--wmn-ease), border-color 160ms var(--wmn-ease), background-color 160ms var(--wmn-ease); }
.wmn-popular-searches a:hover { color: var(--wmn-ink); background: rgba(0, 172, 236, .08); border-color: var(--wmn-accent); }
.wmn-popular-searches svg { width: 14px; height: 14px; }

.wmn-full-header .wmn-brand__logo { max-width: 152px; max-height: 28px; }
@media (prefers-reduced-motion: reduce) { .wmn *, .wmn::before, .wmn::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
