/* Warsaw mobile portrait and pricing card. */
@media (max-width: 767px) {
  #guru-warsaw-main .guru-hero-intro {
    display: contents !important;
  }

  #guru-warsaw-main .guru-portrait-column {
    grid-row: 1 !important;
  }

  #guru-warsaw-main .guru-hero-copy {
    grid-row: 2 !important;
  }

  #guru-warsaw-main .guru88-breadcrumbs {
    margin-bottom: 14px !important;
  }

  #guru-warsaw-main .guru-portrait-column .guru88-heading {
    margin-bottom: 10px !important;
  }

  #guru-warsaw-main .guru-portrait-column .guru-portrait-scene {
    width: 90%;
    max-width: 320px;
    margin-top: 24px;
  }




  #guru-warsaw-main .guru-task-plaque[data-guru-monthly] .guru-task-card {
    padding-right: 78px;
    gap: 4px;
  }

  #guru-warsaw-main .guru-task-plaque[data-guru-monthly] #guru-task-title {
    font-size: clamp(.83rem, 3.65vw, .96rem);
    line-height: 1.12;
  }

  #guru-warsaw-main .guru-task-plaque[data-guru-monthly] .guru91-title-kind {
    display: block;
    white-space: nowrap;
  }

  #guru-warsaw-main #guru-task-card[href="#custom-html-12j"]:is(:hover, :focus-visible) .guru-task-bottom {
    text-decoration: underline;
    text-underline-offset: 2px;
  }

  #guru-warsaw-main #custom-html-12j {
    scroll-margin-top: 114px;
  }

  /* Keep the original live token inside its scene so its pause and cycle still work. */
  #guru-warsaw-main .guru-hero-intro .guru-accounting-motion {
    position: fixed !important;
    inset: 32px clamp(81px, 20vw, 155px) auto auto !important;
    width: 76px !important;
    height: 38px !important;
    z-index: 1040;
    margin: 0 !important;
    overflow: hidden;
    pointer-events: none;
  }

  #guru-warsaw-main .guru-accounting-token {
    inset: 0 auto auto 0 !important;
    min-height: 38px;
    width: 100%;
    gap: 3px;
    animation: none;
  }

  #guru-warsaw-main :is(.guru-token-frame, .guru-token-icon svg) {
    width: 34px;
    height: 34px;
  }

  #guru-warsaw-main .guru-token-frame {
    flex-basis: 34px;
  }

  #guru-warsaw-main .guru-token-trail {
    display: none;
  }

  #guru-warsaw-main .guru-accounting-token .guru-token-label {
    max-width: 39px;
    min-width: 0;
    white-space: normal;
    font-size: .54rem;
    line-height: 1.12;
  }

  #guru-warsaw-main .guru-accounting-token[data-phase="2"] .guru-token-label,
  #guru-warsaw-main .guru-accounting-token[data-phase="4"] .guru-token-label {
    white-space: pre-line;
  }

  body:has(#menu4-1hi .navbar-toggler[aria-expanded="true"]) #guru-warsaw-main .guru-accounting-motion {
    visibility: hidden;
  }
}

@media (max-width: 359px) {
  #guru-warsaw-main .guru-hero-intro .guru-accounting-motion {
    inset-inline-end: 82px !important;
    width: 35px !important;
  }

  #guru-warsaw-main .guru-portrait-column .guru-portrait-scene {
    width: 82%;
  }

  #guru-warsaw-main .guru-accounting-token .guru-token-label {
    display: none;
  }
}

/* Warsaw-only refinements. */
#guru-warsaw-main .guru94-heading-brand {
  font-size: inherit !important;
  font-weight: 600 !important;
  background: linear-gradient(145deg, #476d27, #71952c 52%, #50713d);
  background-clip: text;
  -webkit-background-clip: text;
  color: #50713d;
  -webkit-text-fill-color: transparent;
}

#guru-warsaw-main .guru-portrait-caption {
  left: var(--guru94-caption-left, 0px) !important;
}

#guru86-context .site86-related a {
  font: var(--guru94-faq-font, 500 1.4rem/1.45 Poppins, sans-serif) !important;
  color: #285477 !important;
  text-align: left;
}

#guru86-context .guru94-related-label {
  font: inherit !important;
  background: linear-gradient(105deg, #285477, #50713d);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

#warsaw-hero-details .guru94-calc-key {
  fill: var(--guru94-key-base, #e5edfa);
}

#warsaw-hero-details.guru94-icons-running .guru94-calc-key {
  animation: guru94KeyPulse 7.2s linear infinite;
  animation-delay: var(--guru94-key-delay);
}

@keyframes guru94KeyPulse {
  0%, 16.66%, 100% { fill: var(--guru94-key-base, #e5edfa); }
  4%, 11% { fill: #96be3e; }
}

#warsaw-hero-details .guru94-vat-rim {
  stroke-dashoffset: 0;
}

#warsaw-hero-details.guru94-icons-running .guru94-vat-rim {
  animation: guru94VatRim 3.6s linear infinite;
}

@keyframes guru94VatRim {
  to { stroke-dashoffset: -100; }
}

#warsaw-hero-details .guru-clock-tick {
  fill: none;
  stroke: #61829a;
  stroke-width: 1.4;
  stroke-linecap: round;
}

#warsaw-hero-details .guru-clock-numerals {
  fill: #315579;
  font: 600 9px Roboto, Arial, sans-serif;
}

#warsaw-hero-details .guru-clock-pin {
  fill: #315579;
}

#warsaw-hero-details .guru-clock-sweep {
  fill: none;
  stroke: #86a932;
  stroke-width: 2.8;
  stroke-linecap: round;
  transform-origin: 37px 35px;
  transform: rotate(-90deg);
}

#warsaw-hero-details .guru-clock-open { fill: #93b739; }
#warsaw-hero-details .guru-clock-close { fill: #b7c3cc; }

#warsaw-hero-details.guru94-icons-running .guru-clock-sweep {
  animation: guruOfficeSweep 10s cubic-bezier(.36, 0, .25, 1) infinite;
}

#warsaw-hero-details.guru94-icons-running .guru-clock-open {
  animation: guruOpenGlow 10s linear infinite;
}

#warsaw-hero-details.guru94-icons-running .guru-clock-close {
  animation: guruCloseGlow 10s linear infinite;
}

.guru-motion-paused #warsaw-hero-details :is(.guru94-calc-key, .guru94-vat-rim, .guru-clock-sweep, .guru-clock-open, .guru-clock-close) {
  animation-play-state: paused !important;
}

@media (max-width: 767px) {
  #guru-warsaw-main .guru-hero-intro .guru-accounting-motion {
    width: 96px !important;
    height: 38px !important;
    overflow: visible;
  }

  #guru-warsaw-main .guru-accounting-token .guru-token-label {
    max-width: 59px;
    font-size: .57rem;
    line-height: 1.15;
  }

  #guru-warsaw-main .guru-accounting-token[data-phase="2"] .guru-token-label {
    white-space: nowrap;
  }

  #guru-warsaw-main .guru-accounting-token[data-phase="4"] .guru-token-label {
    white-space: normal;
  }
}

@media (max-width: 399px) {
  #guru-warsaw-main .guru-hero-intro .guru-accounting-motion {
    width: 78px !important;
  }

  #guru-warsaw-main :is(.guru-token-frame, .guru-token-icon svg) {
    width: 28px;
    height: 32px;
  }

  #guru-warsaw-main .guru-token-frame { flex-basis: 28px; }
  #guru-warsaw-main .guru-accounting-token .guru-token-label {
    max-width: 47px;
    font-size: .52rem;
  }
}

@media (max-width: 359px) {
  body:has(#guru-warsaw-main) #menu4-1hi .menu-logo .navbar-brand {
    transform: translateX(-24px);
  }

  #guru-warsaw-main .guru-hero-intro .guru-accounting-motion {
    inset-inline-end: 82px !important;
    width: 62px !important;
  }

  #guru-warsaw-main :is(.guru-token-frame, .guru-token-icon svg) {
    width: 25px;
    height: 30px;
  }

  #guru-warsaw-main .guru-token-frame { flex-basis: 25px; }
  #guru-warsaw-main .guru-accounting-token { gap: 2px; }
  #guru-warsaw-main .guru-accounting-token .guru-token-label {
    display: inline;
    max-width: 35px;
    font-size: .48rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  #warsaw-hero-details :is(.guru94-calc-key, .guru94-vat-rim, .guru-clock-sweep, .guru-clock-open, .guru-clock-close) {
    animation: none !important;
  }

  #warsaw-hero-details .guru-clock-sweep { transform: rotate(-90deg); }
}
