/* Brand and interaction motion; CSS only, no navigation interception or timers. */
.site-header > .cheapotp-brand-logo {
  position: relative;
  padding: 12px 18px;
  border: 0;
  border-radius: 14px;
  font-size: 32px;
  line-height: 1.1;
  background: transparent;
  box-shadow: none;
}
.site-header .cheapotp-brand-logo .cheapotp-icon {
  width: 30px;
  height: 34px;
  margin-inline-end: 10px;
  filter: drop-shadow(0 0 7px currentColor);
}
html[data-theme="dark"] .site-header .text-cheap { text-shadow: 0 0 16px rgba(255,215,100,.2); }
.site-header .text-otp-gradient { filter: drop-shadow(0 0 7px rgba(255,183,3,.38)); }
.site-header .cheapotp-status-dot { width: 7px; height: 7px; margin-top: 2px; }
.site-footer .cheapotp-brand-logo { font-size: 28px; }
.site-footer .cheapotp-icon { width: 25px; height: 28px; }
/* Color-only animation stays active with reduced motion: no scaling or flashing. */
.cheapotp-brand-logo .cheapotp-icon {
  fill: currentColor;
  animation: bolt-colors 21s linear infinite;
  filter: drop-shadow(0 0 7px currentColor);
}
.cheapotp-brand-logo .cheapotp-icon path { fill: currentColor; }
@keyframes bolt-colors {
  0%,100% { color: #ffb703; }
  14.285% { color: #fb8500; }
  28.571% { color: #ff5a75; }
  42.857% { color: #ba7cff; }
  57.143% { color: #619cff; }
  71.429% { color: #24d2e5; }
  85.714% { color: #46dc9b; }
}
@keyframes surface-enter {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes content-enter { from { opacity: .4; } to { opacity: 1; } }
@keyframes selection-glow {
  from { box-shadow: inset 3px 0 #ffcf54, 0 0 14px rgba(96,165,250,.25); }
  to { box-shadow: inset 3px 0 #82b5ff, 0 0 0 rgba(96,165,250,0); }
}
@keyframes feedback-enter { from { opacity: .5; transform: translateY(5px); } to { opacity: 1; transform: none; } }
@keyframes announcement-drop {
  from { opacity: 0; transform: translateY(-32px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: no-preference) {
  body > main { animation: content-enter .3s ease-out; }
  .store-hero-copy { animation: surface-enter .55s cubic-bezier(.2,.7,.3,1) both; }
  .store-preview { animation: surface-enter .55s .1s cubic-bezier(.2,.7,.3,1) both; }
  .store-service-card, .store-guide-grid > article, .guest-info-grid > article { animation: surface-enter .4s ease-out both; }
  :is(.store-service-card,.store-guide-grid > article,.guest-info-grid > article):nth-child(2) { animation-delay: .06s; }
  :is(.store-service-card,.store-guide-grid > article,.guest-info-grid > article):nth-child(3) { animation-delay: .12s; }
  :is(.store-service-card,.store-guide-grid > article):nth-child(4) { animation-delay: .18s; }
  :is(.button,.wallet-topup-plus,.notification-bell,.theme-toggle,.logout-icon) {
    transition: transform .18s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
  }
  :is(.button,.wallet-topup-plus,.notification-bell,.theme-toggle,.logout-icon):active:not(:disabled) { transform: scale(.96); }
  :is(.store-service-card,.store-preview-row,.rental-service-row,.country-options a) {
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
  }
  .rental-service-row.is-selected { animation: selection-glow .4s ease-out; }
  .rental-card { animation: surface-enter .35s ease-out; }
  .rental-card.received { animation: feedback-enter .35s ease-out; }
  .notification-panel:not([hidden]), #announcement-dialog[open], .language-picker[open] .language-options, .country-picker[open] .country-options {
    animation: surface-enter .22s ease-out;
  }
  .portal-toast { animation: feedback-enter .22s ease-out; }
  #announcement-dialog[open] { animation: announcement-drop .65s cubic-bezier(.22,.61,.36,1) both; }
  @media (hover: hover) {
    .store-service-card:hover { border-color: rgba(130,181,255,.7); box-shadow: 0 8px 24px rgba(34,104,210,.14); }
    .button:hover:not(:disabled) { transform: translateY(-2px); }
  }
  @view-transition { navigation: auto; }
  ::view-transition-old(root) { animation: content-enter .16s ease-in reverse; }
  ::view-transition-new(root) { animation: content-enter .22s ease-out; }
}
@media (max-width: 780px) {
  .site-header > .cheapotp-brand-logo { font-size: 28px; padding: 10px 12px; border-radius: 12px; }
  .site-header .cheapotp-brand-logo .cheapotp-icon { width: 25px; height: 29px; margin-inline-end: 8px; }
}
@media (max-width: 359px) {
  .site-header > .cheapotp-brand-logo { font-size: 25px; padding: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-header > .cheapotp-brand-logo { animation: none; }
  @view-transition { navigation: none; }
}
