/* =========================
   MOBILE HEADER PREMIUM
   ========================= */
@media (max-width: 768px) {
  .site-header .brand,
  .header-brand,
  .navbar-brand,
  .topbar-brand {
    min-width: 0;
    flex: 1 1 auto;
  }

  .site-header .brand a,
  .header-brand a,
  .navbar-brand a,
  .topbar-brand a {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    text-decoration: none;
  }

  .site-header .brand img,
  .header-brand img,
  .navbar-brand img,
  .topbar-brand img {
    width: 52px;
    height: 52px;
    min-width: 52px;
    border-radius: 50%;
    object-fit: cover;
  }

  .site-header .brand span,
  .site-header .brand strong,
  .header-brand span,
  .header-brand strong,
  .navbar-brand span,
  .navbar-brand strong,
  .topbar-brand span,
  .topbar-brand strong {
    display: block;
    min-width: 0;
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px;
    line-height: 1.2;
  }
}

/* =========================
   HERO TITLE PREMIUM
   ========================= */
.hero-title-premium {
  margin: 0 0 18px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.2rem, 9vw, 5rem);
  line-height: 0.92;
  letter-spacing: -0.03em;
  color: #173d33;
  text-wrap: balance;
}

.hero-title-premium .hero-line {
  display: block;
  width: 100%;
  opacity: 0;
  transform: translateY(22px);
  animation: heroLineIn 0.75s cubic-bezier(.22,1,.36,1) forwards;
  animation-delay: calc(var(--d, 0) * 0.14s + 0.10s);
}

.hero-title-premium .hero-line.is-accent {
  color: #c79b5a;
  font-style: italic;
  position: relative;
}

.hero-title-premium .hero-line.is-accent::after {
  content: "";
  display: block;
  width: 82px;
  height: 3px;
  margin-top: 8px;
  border-radius: 999px;
  background: rgba(199, 155, 90, 0.35);
}

@keyframes heroLineIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 768px) {
  .hero-title-premium {
    font-size: clamp(2.1rem, 11vw, 3.7rem);
    line-height: 0.90;
    margin-bottom: 16px;
  }

  .hero-title-premium .hero-line.is-accent::after {
    width: 68px;
    height: 3px;
    margin-top: 6px;
  }
}

@media (max-width: 390px) {
  .hero-title-premium {
    font-size: clamp(1.95rem, 10.4vw, 3.25rem);
  }
}
