/* A entrada de Natal do QB: verde pinheiro, marfim e um apontamento de ouro. */
.ui-arrow { width: 16px; height: 16px; flex: 0 0 auto; vertical-align: middle; }
.ui-star { width: 15px; height: 15px; flex: 0 0 auto; }
.announcement.christmas-announcement { background: #0c241c; color: #e6d5b2; }
.christmas-announcement .announcement-action { display: inline-flex; align-items: center; gap: 7px; }
.festive-header { height: 96px; background: #102d23; color: #f4eee1; border-bottom: 1px solid #dcc39330; gap: 24px; }
.festive-header .wordmark .brand-image { width: 112px; height: 78px; }
.festive-header nav { gap: 18px; font-size: 13px; }
.festive-header nav a:hover { color: #e1c48c; }
.festive-header nav .christmas-nav { border-color: #dcc39370; color: #e1c48c; }
.festive-header .header-book { display: inline-flex; align-items: center; gap: 16px; border-color: #dcc39390; color: #f4eee1; padding: 11px 15px; font-size: 13px; white-space: nowrap; }
.festive-header .header-book:hover { background: #dcc39315; }
.festive-header .menu-toggle { color: #f4eee1; appearance: none; -webkit-appearance: none; }
.festive-header .menu-toggle svg { width: 20px; height: 20px; }
.hero.holiday-hero { background: #102d23; color: #faf5e9; padding: 68px 7% 120px; min-height: 650px; overflow: hidden; }
.holiday-hero .hero-content { position: relative; z-index: 1; }
.holiday-hero .hero-evergreen { position: absolute; top: -30px; right: -15px; width: 280px; height: 280px; color: #d8c091; opacity: .22; pointer-events: none; }
.holiday-hero .eyebrow { display: flex; align-items: center; gap: 12px; color: #dcc393; font-size: 11px; letter-spacing: 3.4px; }
.holiday-hero h1 { font-size: clamp(44px, 4.5vw, 68px); line-height: 1.14; letter-spacing: -2px; margin-bottom: 26px; }
.holiday-hero h1 em { color: #e8d6b1; }
.holiday-hero .hero-description { max-width: 520px; color: #dce2d7; font-size: 16px; line-height: 1.85; }
.holiday-hero .hero-actions { gap: 24px; margin-top: 28px; }
.holiday-hero .button.light { background: #ead9b6; color: #183329; padding: 16px 22px; gap: 20px; }
.holiday-hero .button.light:hover { background: #f5e7cb; }
.holiday-hero .text-link { display: inline-flex; align-items: center; gap: 18px; border-color: #dcc39380; color: #f4eee1; padding-bottom: 6px; }
.holiday-hero .christmas-hero-link { color: #ddcba6; font-size: 12px; line-height: 1.8; border-color: #dcc39350; gap: 10px; margin-top: 27px; }
.holiday-hero .hero-photo { position: relative; z-index: 1; background: #15372b; border: 1px solid #dcc39350; padding: 10px; box-shadow: none; max-height: 480px; }
.holiday-hero .hero-bottom { border-color: #dcc39340; }
.holiday-hero .hero-bottom > span { color: #c4d1c1; }
.holiday-hero .hero-bottom b { color: #f4eee1; }
.holiday-hero .hero-bottom > a { display: flex; color: #dcc393; }
@media (min-width: 721px) and (max-width: 1200px) {
  .festive-header .menu-toggle { display: flex; align-items: center; gap: 10px; border: 0; background: transparent; font-size: 14px; padding: 10px; order: 3; }
  .festive-header .header-book { margin-left: auto; }
  .festive-header nav { display: none; position: absolute; top: 96px; left: 0; right: 0; padding: 22px 7%; background: #102d23; color: #f4eee1; flex-direction: column; align-items: stretch; gap: 0; border-bottom: 1px solid #dcc39350; box-shadow: 0 15px 20px #0001; }
  .festive-header nav.open { display: flex; }
  .festive-header nav a { padding: 12px 0; font-size: 16px; }
  .festive-header nav .christmas-nav { padding: 12px; margin: 6px 0; }
}
@media (max-width: 720px) {
  html { scroll-padding-top: 82px; }
  .festive-header { height: 82px; gap: 12px; padding: 0 5%; }
  .festive-header .wordmark .brand-image { width: 90px; height: 64px; }
  .festive-header .header-book { padding: 10px 11px; font-size: 11px; gap: 0; }
  .festive-header .header-book .ui-arrow { display: none; }
  .festive-header .menu-toggle { padding: 9px 0 9px 5px; font-size: 12px; gap: 8px; }
  .festive-header .menu-toggle svg { width: 18px; height: 18px; }
  .festive-header nav { top: 82px; background: #102d23; color: #f4eee1; align-items: stretch; border-color: #dcc39350; }
  .festive-header nav .christmas-nav { color: #e1c48c; }
  .hero.holiday-hero { padding: 42px 7% 112px; min-height: 0; gap: 32px; }
  .holiday-hero .hero-evergreen { width: 170px; height: 180px; right: -26px; top: -24px; opacity: .19; }
  .holiday-hero .eyebrow { font-size: 10px; letter-spacing: 3px; margin-bottom: 22px; }
  .holiday-hero h1 { font-size: clamp(34px, 9.7vw, 47px); letter-spacing: -1.2px; line-height: 1.16; margin-bottom: 23px; }
  .holiday-hero .hero-description { font-size: 14px; line-height: 1.85; }
  .holiday-hero .hero-description br { display: none; }
  .holiday-hero .hero-actions { flex-direction: column; align-items: flex-start; gap: 22px; margin-top: 26px; }
  .holiday-hero .button.light { max-width: 100%; font-size: 13px; padding: 15px 18px; gap: 18px; }
  .holiday-hero .christmas-hero-link { margin-top: 25px; font-size: 11px; gap: 8px; }
  .holiday-hero .hero-photo { width: 68%; max-width: 245px; padding: 8px; max-height: none; }
  .holiday-hero .hero-bottom { gap: 14px; }
  .mobile-reserve { background: #102d23; color: #f4eee1; border-color: #dcc39370; font-size: 13px; align-items: center; gap: 10px; }
  .mobile-reserve > span { display: inline-flex; align-items: center; gap: 6px; color: #e5cf9f; font-size: 12px; white-space: nowrap; }
  .mobile-reserve .ui-arrow { width: 14px; height: 14px; }
}
