/* ============================================
   LAYOUT STYLES
   Header, footer, navigation, and page structure
   ============================================ */

/* ===========================================
   ANIMATED BACKGROUND
   =========================================== */
.magic-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: -1;
  overflow: hidden;
}

.magic-bg::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle at 20% 80%, rgba(106, 17, 203, 0.03) 0%, transparent 50%),
              radial-gradient(circle at 80% 20%, rgba(37, 117, 252, 0.03) 0%, transparent 50%),
              radial-gradient(circle at 40% 40%, rgba(237, 2, 130, 0.02) 0%, transparent 30%);
  animation: floatBg 30s ease-in-out infinite;
}

@keyframes floatBg {
  0%, 100% { transform: translate(0, 0) rotate(0deg); }
  25% { transform: translate(2%, -2%) rotate(1deg); }
  50% { transform: translate(-1%, 2%) rotate(-1deg); }
  75% { transform: translate(-2%, -1%) rotate(0.5deg); }
}

/* Sparkle particles */
.sparkle {
  position: absolute;
  width: 4px;
  height: 4px;
  background: var(--disney-gold);
  border-radius: 50%;
  animation: sparkle 3s ease-in-out infinite;
  opacity: 0;
}

@keyframes sparkle {
  0%, 100% { opacity: 0; transform: scale(0) translateY(0); }
  50% { opacity: 1; transform: scale(1) translateY(-20px); }
}

/* ===========================================
   HEADER
   =========================================== */
.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: var(--z-fixed);
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--border-color);
  transition: all var(--transition-base);
}

.header.scrolled {
  box-shadow: var(--shadow-md);
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height);
}

/* Logo */
.logo {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
  font-family: var(--font-display);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--disney-blue);
}

.logo:hover {
  color: var(--disney-blue);
}

.logo-icon {
  width: 48px;
  height: 48px;
  background: var(--magic-gradient);
  clip-path: path('M24 0C33.9411 0 42 8.05887 42 18C42 27.9411 24 48 24 48C24 48 6 27.9411 6 18C6 8.05887 14.0589 0 24 0Z');
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: var(--font-size-xl);
  box-shadow: var(--shadow-magic);
  position: relative;
  overflow: hidden;
}

.logo-icon::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(45deg, transparent 40%, rgba(255,255,255,0.3) 50%, transparent 60%);
  animation: shimmer 3s infinite;
}

@keyframes shimmer {
  0% { transform: translateX(-100%) rotate(45deg); }
  100% { transform: translateX(100%) rotate(45deg); }
}

/* ===========================================
   NAVIGATION
   =========================================== */
.nav {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
}

.nav-item {
  position: relative;
}

.nav-link {
  padding: var(--spacing-2) var(--spacing-4);
  font-weight: var(--font-weight-medium);
  color: var(--text-primary);
  border-radius: var(--radius-full);
  transition: all var(--transition-fast);
  position: relative;
}

.nav-link:hover {
  color: var(--disney-pink);
  background: var(--magic-gradient-soft);
}

.nav-link.active {
  background: var(--magic-gradient);
  color: white;
}

.nav-link.active:hover {
  color: white;
}

/* Dropdown Nav Link */
.nav-link.has-dropdown {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
}

.nav-link.has-dropdown i {
  font-size: 10px;
  transition: transform var(--transition-fast);
}

.nav-item:hover .nav-link.has-dropdown i {
  transform: rotate(180deg);
}

/* Nav Dropdown Menu */
.nav-item > .dropdown-menu {
  left: 50%;
}

.nav-item:hover > .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

/* Nav CTA */
.nav-cta {
  margin-left: var(--spacing-4);
}

/* ===========================================
   MEGA MENU
   =========================================== */
.mega-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  background: white;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-xl);
  padding: var(--spacing-6);
  width: max-content;
  max-width: 90vw;
  opacity: 0;
  visibility: hidden;
  transition: all var(--transition-fast);
  z-index: var(--z-dropdown);
}

.nav-item:hover .mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.mega-menu::before {
  content: '';
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid white;
}

.mega-menu-grid {
  display: flex;
  gap: var(--spacing-6);
}

.mega-menu-column {
  min-width: 165px;
}

.mega-menu-column h4 {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin-bottom: var(--spacing-3);
  padding-bottom: var(--spacing-2);
  border-bottom: 2px solid transparent;
  background: var(--magic-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.coming-soon-icon {
  position: relative;
  margin-left: 4px;
  cursor: help;
  font-style: normal;
  -webkit-text-fill-color: initial;
  background: none;
}

.coming-soon-icon .tooltip-text {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: #1a1a2e;
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  padding: 5px 10px;
  border-radius: 6px;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.15s, visibility 0.15s;
  pointer-events: none;
  margin-bottom: 6px;
  -webkit-text-fill-color: #fff;
}

.coming-soon-icon:hover .tooltip-text {
  opacity: 1;
  visibility: visible;
}

.mega-menu-links {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-1);
}

.mega-menu-link {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  padding: var(--spacing-2) var(--spacing-3);
  color: var(--text-secondary);
  font-size: var(--font-size-sm);
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
}

.mega-menu-link:hover {
  background: var(--magic-gradient-soft);
  color: #6a11cb;
}

.mega-menu-link i {
  width: 16px;
  font-size: var(--font-size-xs);
  color: var(--disney-pink);
}

/* ===========================================
   BOOKING BAR
   =========================================== */
.booking-bar {
  background: white;
  border-bottom: 1px solid var(--border-color);
  padding: var(--spacing-4) 0;
  position: fixed;
  top: var(--header-height);
  left: 0;
  right: 0;
  z-index: calc(var(--z-fixed) - 1);
  box-shadow: var(--shadow-sm);
  transition: all var(--transition-base);
}

.booking-bar.hidden {
  transform: translateY(-100%);
  opacity: 0;
}

.booking-bar-inner {
  display: flex;
  align-items: center;
  gap: var(--spacing-4);
  flex-wrap: wrap;
}

.booking-fields {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
  flex: 1;
  flex-wrap: wrap;
}

.booking-field {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-1);
  min-width: 140px;
  flex: 1;
}

.booking-field-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.booking-field-input {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  padding: var(--spacing-2) var(--spacing-3);
  background: var(--background-color);
  border: 2px solid var(--border-color);
  border-radius: var(--radius-md);
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color: var(--text-primary);
  cursor: pointer;
  transition: all var(--transition-fast);
}

.booking-field-input:hover,
.booking-field-input:focus-within {
  border-color: var(--disney-pink);
}

.booking-field-input i {
  color: var(--disney-pink);
  font-size: var(--font-size-sm);
}

.booking-field input,
.booking-field select {
  border: none;
  background: transparent;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color: var(--text-primary);
  cursor: pointer;
  width: 100%;
}

.booking-field input:focus,
.booking-field select:focus {
  outline: none;
}

.booking-field select {
  appearance: none;
  padding-right: var(--spacing-4);
}

/* Guest Selector */
.guest-selector {
  position: relative;
}

.guest-dropdown {
  position: absolute;
  top: calc(100% + var(--spacing-2));
  left: 0;
  background: white;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-xl);
  padding: var(--spacing-4);
  min-width: 280px;
  z-index: var(--z-dropdown);
  display: none;
}

.guest-dropdown.active {
  display: block;
}

.guest-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-3) 0;
  border-bottom: 1px solid var(--border-color);
}

.guest-row:last-child {
  border-bottom: none;
}

.guest-info h5 {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  margin-bottom: 2px;
}

.guest-info span {
  font-size: var(--font-size-xs);
  color: var(--text-secondary);
}

.guest-counter {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
}

.guest-counter button {
  width: 32px;
  height: 32px;
  border: 2px solid var(--border-color);
  background: white;
  border-radius: 50%;
  cursor: pointer;
  font-size: var(--font-size-base);
  color: var(--text-primary);
  transition: all var(--transition-fast);
}

.guest-counter button:hover:not(:disabled) {
  border-color: var(--disney-pink);
  color: var(--disney-pink);
}

.guest-counter button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.guest-counter span {
  font-weight: var(--font-weight-semibold);
  min-width: 24px;
  text-align: center;
}

.booking-search-btn {
  padding: var(--spacing-3) var(--spacing-6);
  white-space: nowrap;
  align-self: flex-end;
  margin-bottom: 2px;
}

/* ===========================================
   MOBILE HEADER
   =========================================== */
.mobile-header-actions {
  display: none;
  align-items: center;
  gap: var(--spacing-2);
}

.booking-toggle-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: none;
  background: var(--magic-gradient-soft);
  border-radius: var(--radius-md);
  cursor: pointer;
  color: #6a11cb;
  font-size: var(--font-size-lg);
  transition: all var(--transition-fast);
}

.booking-toggle-btn:hover,
.booking-toggle-btn.active {
  background: var(--magic-gradient);
  color: white;
}

.mobile-menu-btn {
  display: none;
  width: 44px;
  height: 44px;
  border: none;
  background: transparent;
  cursor: pointer;
  position: relative;
}

.mobile-menu-btn span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--text-primary);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: all var(--transition-fast);
}

.mobile-menu-btn span:nth-child(1) { top: 14px; }
.mobile-menu-btn span:nth-child(2) { top: 21px; }
.mobile-menu-btn span:nth-child(3) { top: 28px; }

.mobile-menu-btn.active span:nth-child(1) {
  top: 21px;
  transform: translateX(-50%) rotate(45deg);
}

.mobile-menu-btn.active span:nth-child(2) { opacity: 0; }

.mobile-menu-btn.active span:nth-child(3) {
  top: 21px;
  transform: translateX(-50%) rotate(-45deg);
}

/* ===========================================
   MOBILE NAVIGATION
   =========================================== */
.mobile-nav {
  position: fixed;
  top: var(--header-height-mobile);
  left: 0;
  right: 0;
  bottom: 0;
  background: white;
  padding: var(--spacing-5);
  padding-top: 80px;
  transform: translateX(100%);
  transition: transform var(--transition-base);
  z-index: calc(var(--z-fixed) - 2);
  overflow-y: auto;
}

.mobile-nav.active {
  transform: translateX(0);
}

.mobile-nav-links {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2);
}

.mobile-nav-link {
  padding: var(--spacing-4);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-medium);
  border-radius: var(--radius-lg);
  transition: all var(--transition-fast);
}

.mobile-nav-link:hover,
.mobile-nav-link.active {
  background: var(--magic-gradient-soft);
  color: #6a11cb;
}

/* ===========================================
   FOOTER
   =========================================== */
.footer {
  background: var(--disney-blue);
  color: white;
  padding: var(--spacing-10) 0 var(--spacing-6);
}

.footer-grid {
  display: grid;
  grid-template-columns: 2fr repeat(3, 1fr);
  gap: var(--spacing-8);
  margin-bottom: var(--spacing-8);
}

.footer-brand {
  max-width: 300px;
}

.footer-logo {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
  font-family: var(--font-display);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  margin-bottom: var(--spacing-4);
  color: white;
}

.footer-logo:hover {
  color: white;
}

.footer-logo-icon {
  width: 40px;
  height: 40px;
  background: var(--magic-gradient);
  clip-path: path('M20 0C28.2843 0 35 6.71573 35 15C35 23.2843 20 40 20 40C20 40 5 23.2843 5 15C5 6.71573 11.7157 0 20 0Z');
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer-description {
  font-size: var(--font-size-sm);
  opacity: 0.8;
  line-height: var(--line-height-relaxed);
}

.footer-info-notice {
  margin-top: var(--spacing-5);
  padding-top: var(--spacing-4);
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.footer-info-text {
  font-size: var(--font-size-xs);
  opacity: 0.7;
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-2);
}

.footer-info-text:last-child {
  margin-bottom: 0;
}

.footer-disclaimer {
  opacity: 0.55;
  font-style: italic;
}

.footer-title {
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--spacing-4);
  font-size: var(--font-size-sm);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #ffffff;
}

.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-links li {
  margin-bottom: var(--spacing-2);
}

.footer-links a {
  font-size: var(--font-size-sm);
  opacity: 0.8;
  transition: all var(--transition-fast);
}

.footer-links a:hover {
  opacity: 1;
  color: var(--disney-pink);
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: var(--spacing-6);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--spacing-4);
}

.footer-copyright {
  font-size: var(--font-size-sm);
  opacity: 0.7;
}

.footer-social {
  display: flex;
  gap: var(--spacing-3);
}

.footer-social a {
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition-fast);
}

.footer-social a:hover {
  background: var(--disney-pink);
  transform: translateY(-2px);
  color: white;
}

/* ===========================================
   SECTION STYLES
   =========================================== */
.section {
  padding: var(--spacing-12) 0;
}

.section-header {
  text-align: center;
  margin-bottom: var(--spacing-10);
}

.section-title {
  font-family: var(--font-display);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  margin-bottom: var(--spacing-4);
}

.section-description {
  font-size: var(--font-size-lg);
  color: var(--text-secondary);
  max-width: 600px;
  margin: 0 auto;
}

/* ===========================================
   RESPONSIVE - TABLET
   =========================================== */
@media (max-width: 1024px) {
  .footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .mega-menu {
    width: 550px;
    max-width: 90vw;
  }

  .mega-menu-grid {
    flex-wrap: wrap;
  }

  .mega-menu-column {
    flex: 1 1 200px;
  }

  .booking-bar-inner {
    flex-wrap: wrap;
  }
}

/* ===========================================
   RESPONSIVE - MOBILE
   =========================================== */
@media (max-width: 768px) {
  .nav {
    display: none;
  }

  .mobile-header-actions {
    display: flex;
  }

  .mobile-menu-btn {
    display: block;
  }

  .header-inner {
    height: var(--header-height-mobile);
  }

  .booking-bar {
    top: var(--header-height-mobile);
    padding: var(--spacing-3) 0;
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
  }

  .booking-bar.mobile-visible {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }

  .booking-bar-inner {
    gap: var(--spacing-3);
  }

  .booking-fields {
    width: 100%;
  }

  .booking-field {
    flex: 1;
    min-width: calc(50% - var(--spacing-2));
  }

  .booking-search-btn {
    width: 100%;
  }

  .guest-dropdown {
    position: fixed;
    left: var(--spacing-4);
    right: var(--spacing-4);
    top: auto;
    bottom: var(--spacing-4);
    width: auto;
    border-radius: var(--radius-xl);
  }

  .section {
    padding: var(--spacing-8) 0;
  }

  .section-title {
    font-size: var(--font-size-2xl);
  }

  .footer-grid {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-brand {
    max-width: none;
  }

  .footer-logo {
    justify-content: center;
  }

  .footer-bottom {
    flex-direction: column;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .booking-field {
    min-width: 100%;
  }

  .logo span {
    font-size: var(--font-size-base);
  }
}

/* ===========================================
   CUSTOM CASTLE ICON
   Replaces non-existent fas fa-castle with custom SVG
   =========================================== */
.fa-castle::before {
  content: '' !important;
}

.fa-castle {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.985882,21.8347107 C18.0073753,21.8760331 18.0073753,21.9173554 17.9643887,21.9380165 C17.9428955,21.9793388 17.9214022,22 17.8784156,22 L13.945143,22 C13.8806631,22 13.8161832,21.9380165 13.8161832,21.8760331 C13.8161832,18.5702479 12.1182131,18.3842975 12.0322399,18.3636364 C12.0107466,18.3636364 10.2697899,18.5702479 10.2482966,21.8760331 C10.2482966,21.9380165 10.2053101,22 10.1408302,22 L6.12158442,22 C6.07859784,22 6.05710455,21.9793388 6.03561125,21.9380165 C5.99262467,21.9173554 5.99262467,21.8760331 6.01411796,21.8347107 C6.27203747,20.9049587 6.46547711,18.1363636 6.4869704,17.4958678 C6.16457101,17.4132231 6.10009113,17.3305785 6.07859784,17.3099174 C6.03561125,17.2479339 6.03561125,17.1859504 6.10009113,17.1446281 C6.10009113,17.1239669 7.23923565,16.1115702 7.49715516,14.5826446 C7.51864846,14.5206612 7.56163504,14.4793388 7.62611492,14.4793388 C7.6905948,14.4793388 7.75507468,14.5206612 7.75507468,14.5619835 C7.88403443,15.2644628 8.16344724,15.8636364 8.44286004,16.3181818 L9.28109846,15.553719 L9.28109846,13.322314 C8.93720578,13.2809917 8.89421919,13.2190083 8.8727259,13.1983471 C8.82973931,13.1570248 8.80824602,13.0950413 8.85123261,13.053719 C8.85123261,13.0330579 9.71096432,11.8347107 9.71096432,10.1198347 C9.71096432,10.0371901 9.7539509,9.99586777 9.81843078,9.99586777 C9.90440395,9.99586777 9.94739054,10.0371901 9.94739054,10.1198347 C9.94739054,11.6280992 10.6136826,12.7438017 10.7641357,12.9917355 L10.8071223,12.9917355 L10.8071223,9.29338843 C10.4417363,9.23140496 10.3557631,9.14876033 10.3127765,9.08677686 C10.2912832,9.0661157 10.2697899,9.00413223 10.2912832,8.96280992 C10.3127765,8.94214876 11.3444546,6.81404959 11.6023741,3.61157025 C11.4304277,3.54958678 11.301468,3.38429752 11.301468,3.17768595 C11.301468,2.97107438 11.451921,2.80578512 11.6453607,2.74380165 C11.666854,2.53719008 11.666854,2.33057851 11.666854,2.12396694 C11.666854,2.04132231 11.7313338,2 11.7958137,2 C11.8602936,2 11.9247735,2.04132231 11.9247735,2.12396694 L11.9247735,2.74380165 C12.1397064,2.80578512 12.2686662,2.97107438 12.2686662,3.17768595 C12.2686662,3.38429752 12.1611997,3.52892562 11.9892534,3.61157025 C12.1182131,5.2231405 12.4621058,6.5661157 12.7630119,7.45454545 C12.9134649,7.12396694 13.0424247,6.69008264 13.0424247,6.17355372 C13.0424247,6.11157025 13.1069046,6.04958678 13.1713845,6.04958678 C13.2358643,6.04958678 13.3003442,6.11157025 13.3003442,6.17355372 C13.3003442,7.26859504 14.0096229,8.03305785 14.0311162,8.03305785 C14.0741028,8.09504132 14.0741028,8.15702479 14.0096229,8.19834711 C14.0096229,8.21900826 13.9021564,8.30165289 13.7946899,8.36363636 L13.7946899,9.2107438 L13.7731967,9.2107438 C13.7946899,9.23140496 13.7946899,9.25206612 13.7946899,9.25206612 C13.7946899,9.62396694 13.4722906,9.91322314 13.0854113,9.91322314 C12.9994381,9.91322314 12.9134649,9.91322314 12.8274918,9.87190083 L12.8274918,12.4338843 L13.7731967,12.4338843 C13.8376765,12.4338843 13.8806631,12.4752066 13.9021564,12.5371901 C14.1600759,13.9214876 15.2992204,14.8719008 15.3207137,14.8719008 C15.3637003,14.9132231 15.3637003,14.9958678 15.3207137,15.0371901 C15.2777271,15.0991736 15.191754,15.1198347 14.9338345,15.1818182 C14.8908479,15.1818182 14.8478613,15.1818182 14.8048747,15.2024793 L14.8048747,17.2066116 L14.8693546,17.2066116 C14.8908479,17.2066116 14.8908479,17.2066116 14.8908479,17.1859504 C14.9123412,17.1859504 15.9655125,16.1115702 16.2449253,14.5619835 C16.2449253,14.5206612 16.3094052,14.4793388 16.3738851,14.4793388 C16.438365,14.4793388 16.4813515,14.5206612 16.5028448,14.5826446 C16.7607644,16.1115702 17.8999089,17.1239669 17.8999089,17.1446281 C17.9428955,17.1859504 17.9643887,17.2479339 17.9214022,17.3099174 C17.8999089,17.3305785 17.835429,17.4132231 17.5130296,17.4958678 C17.5345229,18.1363636 17.7279625,20.9049587 17.985882,21.8347107 Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.985882,21.8347107 C18.0073753,21.8760331 18.0073753,21.9173554 17.9643887,21.9380165 C17.9428955,21.9793388 17.9214022,22 17.8784156,22 L13.945143,22 C13.8806631,22 13.8161832,21.9380165 13.8161832,21.8760331 C13.8161832,18.5702479 12.1182131,18.3842975 12.0322399,18.3636364 C12.0107466,18.3636364 10.2697899,18.5702479 10.2482966,21.8760331 C10.2482966,21.9380165 10.2053101,22 10.1408302,22 L6.12158442,22 C6.07859784,22 6.05710455,21.9793388 6.03561125,21.9380165 C5.99262467,21.9173554 5.99262467,21.8760331 6.01411796,21.8347107 C6.27203747,20.9049587 6.46547711,18.1363636 6.4869704,17.4958678 C6.16457101,17.4132231 6.10009113,17.3305785 6.07859784,17.3099174 C6.03561125,17.2479339 6.03561125,17.1859504 6.10009113,17.1446281 C6.10009113,17.1239669 7.23923565,16.1115702 7.49715516,14.5826446 C7.51864846,14.5206612 7.56163504,14.4793388 7.62611492,14.4793388 C7.6905948,14.4793388 7.75507468,14.5206612 7.75507468,14.5619835 C7.88403443,15.2644628 8.16344724,15.8636364 8.44286004,16.3181818 L9.28109846,15.553719 L9.28109846,13.322314 C8.93720578,13.2809917 8.89421919,13.2190083 8.8727259,13.1983471 C8.82973931,13.1570248 8.80824602,13.0950413 8.85123261,13.053719 C8.85123261,13.0330579 9.71096432,11.8347107 9.71096432,10.1198347 C9.71096432,10.0371901 9.7539509,9.99586777 9.81843078,9.99586777 C9.90440395,9.99586777 9.94739054,10.0371901 9.94739054,10.1198347 C9.94739054,11.6280992 10.6136826,12.7438017 10.7641357,12.9917355 L10.8071223,12.9917355 L10.8071223,9.29338843 C10.4417363,9.23140496 10.3557631,9.14876033 10.3127765,9.08677686 C10.2912832,9.0661157 10.2697899,9.00413223 10.2912832,8.96280992 C10.3127765,8.94214876 11.3444546,6.81404959 11.6023741,3.61157025 C11.4304277,3.54958678 11.301468,3.38429752 11.301468,3.17768595 C11.301468,2.97107438 11.451921,2.80578512 11.6453607,2.74380165 C11.666854,2.53719008 11.666854,2.33057851 11.666854,2.12396694 C11.666854,2.04132231 11.7313338,2 11.7958137,2 C11.8602936,2 11.9247735,2.04132231 11.9247735,2.12396694 L11.9247735,2.74380165 C12.1397064,2.80578512 12.2686662,2.97107438 12.2686662,3.17768595 C12.2686662,3.38429752 12.1611997,3.52892562 11.9892534,3.61157025 C12.1182131,5.2231405 12.4621058,6.5661157 12.7630119,7.45454545 C12.9134649,7.12396694 13.0424247,6.69008264 13.0424247,6.17355372 C13.0424247,6.11157025 13.1069046,6.04958678 13.1713845,6.04958678 C13.2358643,6.04958678 13.3003442,6.11157025 13.3003442,6.17355372 C13.3003442,7.26859504 14.0096229,8.03305785 14.0311162,8.03305785 C14.0741028,8.09504132 14.0741028,8.15702479 14.0096229,8.19834711 C14.0096229,8.21900826 13.9021564,8.30165289 13.7946899,8.36363636 L13.7946899,9.2107438 L13.7731967,9.2107438 C13.7946899,9.23140496 13.7946899,9.25206612 13.7946899,9.25206612 C13.7946899,9.62396694 13.4722906,9.91322314 13.0854113,9.91322314 C12.9994381,9.91322314 12.9134649,9.91322314 12.8274918,9.87190083 L12.8274918,12.4338843 L13.7731967,12.4338843 C13.8376765,12.4338843 13.8806631,12.4752066 13.9021564,12.5371901 C14.1600759,13.9214876 15.2992204,14.8719008 15.3207137,14.8719008 C15.3637003,14.9132231 15.3637003,14.9958678 15.3207137,15.0371901 C15.2777271,15.0991736 15.191754,15.1198347 14.9338345,15.1818182 C14.8908479,15.1818182 14.8478613,15.1818182 14.8048747,15.2024793 L14.8048747,17.2066116 L14.8693546,17.2066116 C14.8908479,17.2066116 14.8908479,17.2066116 14.8908479,17.1859504 C14.9123412,17.1859504 15.9655125,16.1115702 16.2449253,14.5619835 C16.2449253,14.5206612 16.3094052,14.4793388 16.3738851,14.4793388 C16.438365,14.4793388 16.4813515,14.5206612 16.5028448,14.5826446 C16.7607644,16.1115702 17.8999089,17.1239669 17.8999089,17.1446281 C17.9428955,17.1859504 17.9643887,17.2479339 17.9214022,17.3099174 C17.8999089,17.3305785 17.835429,17.4132231 17.5130296,17.4958678 C17.5345229,18.1363636 17.7279625,20.9049587 17.985882,21.8347107 Z'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  vertical-align: -0.125em;
}
