/*
 * YY Enhance 3 - hero truck visual override + lighter theme polish
 * Override prior enhance.css hero panel styles.
 */

/* Hero text sizing adjustments */
.yy-hero { min-height: clamp(480px, 66vh, 680px); padding-block: var(--yy-sp-6) var(--yy-sp-7); }
.yy-hero__text h1 {
  font-size: clamp(1.85rem, 3.2vw, 3rem) !important;
  letter-spacing: -0.025em !important;
  line-height: 1.1 !important;
  text-wrap: balance;
  margin-block: var(--yy-sp-3) var(--yy-sp-3) !important;
  max-width: 18ch;
}
.yy-hero__text .yy-sub {
  font-size: var(--yy-fs-base);
  line-height: 1.65;
  max-width: 56ch;
  color: var(--yy-text-mute);
}

/* Hero grid: restore image layout */
.yy-hero__grid {
  display: grid;
  gap: var(--yy-sp-6);
  grid-template-columns: 1fr;
  align-items: center !important;
}
@media (min-width: 1024px) {
  .yy-hero__grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) !important;
    gap: var(--yy-sp-7);
  }
}

/* HERO VISUAL - truck */
.yy-hero__visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: var(--yy-sp-4);
}
.yy-hero__visual-wrap {
  position: relative;
  width: 100%;
  max-width: 680px;
  aspect-ratio: 7 / 5;
  display: flex;
  align-items: center;
  justify-content: center;
}
.yy-hero__visual-wrap::before {
  content: '';
  position: absolute;
  inset: 10% 8% 15% 8%;
  background: radial-gradient(ellipse at 50% 60%, rgba(36, 107, 253, 0.55), transparent 70%);
  filter: blur(48px);
  z-index: 0;
}
.yy-hero__visual-wrap::after {
  content: '';
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 6%;
  height: 40px;
  background: radial-gradient(ellipse at center, rgba(0,0,0,0.55), transparent 70%);
  filter: blur(18px);
  z-index: 1;
}
.yy-hero__visual-wrap img {
  position: relative;
  z-index: 2;
  width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0 30px 50px rgba(0, 0, 0, 0.55))
    drop-shadow(0 10px 25px rgba(36, 107, 253, 0.35));
  animation: yy-bob-slow 7s ease-in-out infinite;
}
@keyframes yy-bob-slow {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-10px); }
}

/* Hero live chip */
.yy-hero__live {
  display: inline-flex;
  align-items: center;
  gap: var(--yy-sp-2);
  padding: 8px 16px;
  background: var(--yy-glass-strong);
  border: 1px solid var(--yy-border-strong);
  border-radius: var(--yy-r-full);
  color: var(--yy-text);
  font-size: var(--yy-fs-xs);
  font-weight: 600;
  backdrop-filter: blur(12px);
  box-shadow: var(--yy-shadow-sm);
}
.yy-hero__live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--yy-success);
  box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.6);
  animation: yy-pulse 2s infinite;
  flex-shrink: 0;
}

/* Hero eyebrow sleeker */
.yy-hero__text .yy-eyebrow {
  padding: 6px 14px;
  font-size: var(--yy-fs-xs);
  letter-spacing: 0.04em;
}

/* Hero CTAs more compact */
.yy-hero__ctas {
  gap: var(--yy-sp-3);
  margin-top: var(--yy-sp-5);
}
.yy-hero__ctas .yy-btn-lg {
  padding: 0.875rem 1.5rem;
  font-size: var(--yy-fs-base);
}

/* Hero badges compact inline */
.yy-hero__badges {
  margin-top: var(--yy-sp-5);
  padding-top: var(--yy-sp-4);
  gap: var(--yy-sp-5);
}
.yy-hero__badge {
  font-size: var(--yy-fs-xs);
}
.yy-hero__badge svg { width: 16px; height: 16px; }

/* Hero sub font size for service/region sub pages */
.yy-hero--sub h1 {
  font-size: clamp(1.7rem, 3vw, 2.6rem) !important;
}

/* Override: hide old hero panel style */
.yy-hero__panel { display: none !important; }

/* Section background contrast lift */
.yy-section { position: relative; }
.yy-why { background: linear-gradient(180deg, var(--yy-bg) 0%, var(--yy-surface) 100%); }
.yy-process { background: transparent; }
.yy-stats { background: linear-gradient(180deg, var(--yy-surface) 0%, var(--yy-bg) 100%); }

/* Lighter card surfaces */
.yy-card {
  background: linear-gradient(180deg, color-mix(in srgb, var(--yy-surface) 92%, white 8%), var(--yy-surface));
}

/* Emergency strip a bit more vibrant */
.yy-emergency__bg {
  background: linear-gradient(135deg, #1A52D4 0%, #246BFD 45%, #2AA9E6 100%);
}

/* Surfaces with visible border */
.yy-process__step,
.yy-features__col,
.yy-compare__table,
.yy-ks__col,
.yy-region-seo__main,
.yy-region-seo__box,
.yy-seocontent__main,
.yy-seocontent__box,
.yy-review,
.yy-side-cta,
.yy-quote-card,
.yy-faq__item {
  background: linear-gradient(180deg, color-mix(in srgb, var(--yy-surface) 94%, white 6%), var(--yy-surface));
}

/* Mobile: swap truck order to below text */
@media (max-width: 1023px) {
  .yy-hero__grid { grid-template-columns: 1fr !important; }
  .yy-hero__visual { order: 2; margin-top: var(--yy-sp-5); }
  .yy-hero__text { order: 1; }
  .yy-hero__visual-wrap { max-width: 440px; aspect-ratio: 7/5; margin: 0 auto; }
  .yy-hero { min-height: auto; }
}
