/* De Maio (base Verona) — ajuste estrito da página individual, referência de 21/10/2026.
   Carregado por último e FORA de @layer para não perder prioridades para o tema.
   O widget oficial recebe só layout/cores; a estrutura e os dados de reserva ficam com o Motz. */
body.suite-page {
  --verona-wine: var(--vinho, #2A0B1E);
  --verona-coral: var(--coral, #E2557A);
  --verona-cream: #FAF6F4;
  --verona-ink: #1A1A1A;
  --verona-line: #E7DDD8;
  background: #fff;
}
body.suite-page .suite-reference-match {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  column-gap: clamp(46px, 4.1vw, 64px);
  max-width: 1320px;
  margin: 0 auto;
  padding: 52px var(--gutter, 32px) 110px;
  align-items: start;
}
body.suite-page .suite-ref-info {
  min-width: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 52px;
}
body.suite-page .suite-ref-intro { max-width: 790px; display: flex; flex-direction: column; gap: 18px; }
body.suite-page .suite-ref-title {
  margin: 0;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: clamp(38px, 3.35vw, 50px);
  font-weight: 800;
  letter-spacing: -.055em;
  line-height: 1.05;
  color: var(--verona-ink);
  text-wrap: balance;
}
body.suite-page .suite-ref-title em {
  font-family: 'Instrument Serif', Georgia, serif;
  font-size: 1.07em;
  font-style: italic;
  font-weight: 400;
  color: var(--verona-wine);
}
body.suite-page .suite-ref-description {
  max-width: 670px;
  margin: 0;
  font-size: 18px;
  line-height: 1.69;
  color: #6D6662;
}
body.suite-page .suite-ref-features-title {
  font-size: 33px;
  line-height: 1.15;
  letter-spacing: -.045em;
  margin: 0 0 22px;
  font-weight: 800;
}
body.suite-page .suite-ref-features-title em { color: var(--verona-wine); font-family: 'Instrument Serif', Georgia, serif; font-style: italic; font-weight: 400; }
body.suite-page .suite-ref-items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 26px;
  padding: 0;
  margin: 0;
  border-top: 1px solid var(--verona-ink);
  list-style: none;
}
body.suite-page .suite-ref-items li {
  display: flex;
  gap: 13px;
  align-items: center;
  min-width: 0;
  min-height: 53px;
  padding: 13px 0;
  border-bottom: 1px solid var(--verona-line);
  line-height: 1.4;
  font-size: 15px;
  color: var(--verona-ink);
}
body.suite-page .suite-ref-items li.b { font-weight: 700; }
body.suite-page .suite-ref-items .suite-amenity-icon { width: 22px; height: 22px; flex: 0 0 22px; color: var(--verona-coral); }
body.suite-page .suite-ref-share {
  min-height: 211px;
  width: 100%;
  padding: 35px;
  border-radius: 26px;
  background: var(--verona-wine);
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 13px;
}
body.suite-page .suite-ref-share-title { font-size: clamp(30px,2.7vw,39px); color: #fff; font-weight: 800; line-height: 1.06; }
body.suite-page .suite-ref-share-title em { font-family: 'Instrument Serif', Georgia, serif; font-style: italic; font-weight: 400; color: #FFE0D4; }
body.suite-page .suite-ref-share p { font-size: 15.5px; line-height: 1.55; margin: 0; color: #fff; }
body.suite-page .suite-ref-share a.btn { color: var(--verona-wine); background: #fff; border-radius: 99px; min-height: 52px; padding: 0 24px; font-size: 14px; }
body.suite-page .suite-ref-booking {
  width: 380px;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 32px;
  background: var(--verona-cream);
  border-radius: 28px;
  border: none;
  box-shadow: none;
  position: sticky;
  top: 24px;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 18px;
  overflow: visible;
  color: var(--verona-ink);
  font-family: 'Inter', system-ui, sans-serif;
}
body.suite-page .suite-ref-booking-title {
  margin: 0 0 12px;
  font-size: 36px;
  font-weight: 800;
  letter-spacing: -.055em;
  line-height: 1.1;
  color: var(--verona-ink);
}
body.suite-page .suite-ref-booking-title em { color: var(--verona-wine); font-family: 'Instrument Serif',Georgia,serif; font-style: italic; font-weight: 400; }
body.suite-page .suite-ref-official,
body.suite-page .suite-ref-official .motz-widget,
body.suite-page .suite-ref-official .suites-availability-go { min-width: 0; width: 100%; max-width: 100%; }
body.suite-page .suite-ref-official .motz-widget { background: transparent; margin: 0; }
body.suite-page .suite-ref-booking .booking-wa {
  display: block;
  padding-top: 17px;
  margin-top: 1px;
  border-top: 1px solid var(--verona-line);
  font-size: 14px;
  font-weight: 700;
  color: var(--verona-ink); /* como no Alphaville: link grafite sublinhado */
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.suite-page .suite-reserve-choice,
body.suite-page .suite-ref-reservation-tabs {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  align-items: stretch;
  gap: 5px;
  padding: 5px;
  border: 1.5px solid #E3D7D2; /* mesma pílula das abas do widget Motz */
  border-radius: 999px;
  background: #fff;
}
body.suite-page .suite-reserve-choice button,
body.suite-page .suite-ref-reservation-tabs button {
  min-width: 0;
  min-height: 42px;
  border: 0;
  border-radius: 999px;
  padding: 7px 8px;
  font: 700 13.5px/1.2 'Inter',system-ui,sans-serif;
  cursor: pointer;
  color: var(--verona-ink);
  background: transparent;
}
/* Igual ao widget (referência Alphaville): topo escolhido em grafite; "ir agora / ir depois" escolhido na cor de destaque */
body.suite-page .suite-reserve-choice .is-on { background: var(--verona-ink); color: #fff; }
body.suite-page .suite-ref-reservation-tabs .is-on,
body.suite-page .suite-ref-reservation-tabs .tab-later.is-on { background: var(--verona-wine); color: #fff; }
body.suite-page .suite-reserve-choice-panel { display: flex; flex-direction: column; gap: 20px; }
body.suite-page .suite-reserve-choice-panel[hidden],
body.suite-page .suite-ref-book-panel[hidden] { display: none !important; }
body.suite-page .suite-ref-book-panel { display: flex; flex-direction: column; gap: 16px; }
body.suite-page .suite-ref-book-copy { margin: 0 0 10px; font-size: 15px; line-height: 1.6; }
body.suite-page .suite-ref-price { border-bottom: 1px solid var(--verona-line); display: flex; justify-content: space-between; gap: 10px; padding: 11px 0; }
body.suite-page .suite-ref-price strong { color: var(--verona-wine); }
body.suite-page .btn-verona-book {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 56px;
  padding: 12px 15px;
  border: 0;
  border-radius: 999px;
  background: var(--verona-coral);
  color: var(--verona-ink);
  font-weight: 700;
  font-size: 16px;
  text-align: center;
  text-decoration: none;
  transition: transform .15s ease;
}
body.suite-page .btn-verona-book:hover { transform: translateY(-1px); color: var(--verona-ink); }
body.suite-page .btn-verona-outline { background: transparent; border: 1px solid var(--verona-wine); color: var(--verona-wine); }
body.suite-page .suite-reservation-request { display: flex; flex-direction: column; gap: 10px; }
body.suite-page .suite-reservation-request label { font-size: 14px; font-weight: 700; line-height: 1.3; color: var(--verona-ink); margin: 4px 0 0; }
body.suite-page .suite-reservation-request input {
  min-height: 52px;
  width: 100%;
  color: var(--verona-ink);
  background: #fff;
  border: 1.5px solid #E3D7D2;
  border-radius: 14px;
  padding: 12px 13px;
  font: 500 15px 'Inter',system-ui,sans-serif;
  color-scheme: light;
}
body.suite-page .suite-reservation-request .btn-verona-book { margin-top: 7px; }
body.suite-page .suite-motz-unavailable { padding: 16px 0; font-size: 14px; line-height: 1.55; }
body.suite-page .suite-motz-unavailable[hidden] { display: none !important; }
body.suite-page .suite-motz-unavailable .btn { margin-top: 14px; font-size: 14px; }
@media (max-width: 1080px) {
  body.suite-page .suite-reference-match { grid-template-columns: minmax(0, 1fr) 350px; gap: 30px; }
  body.suite-page .suite-ref-booking { width: 350px; padding: 24px; }
  body.suite-page .suite-ref-items { grid-template-columns: repeat(2, minmax(0,1fr)); }
  body.suite-page .suite-ref-title { font-size: 38px; }
}
@media (max-width: 780px) {
  body.suite-page .suite-reference-match { display: flex; flex-direction: column; gap: 38px; padding-top: 38px; padding-bottom: 88px; }
  body.suite-page .suite-ref-info { gap: 34px; order: 0; }
  body.suite-page .suite-ref-title { font-size: clamp(34px, 6.7vw, 46px); }
  body.suite-page .suite-ref-description { font-size: 16px; }
  body.suite-page .suite-ref-features-title { font-size: 29px; }
  body.suite-page .suite-ref-booking { width: 100%; max-width: none; position: static; order: 1; padding: 28px; }
}
@media (max-width: 450px) {
  body.suite-page .suite-ref-items { grid-template-columns: minmax(0,1fr); }
  body.suite-page .suite-ref-share { padding: 27px 24px; min-height: 180px; }
  body.suite-page .suite-ref-booking { padding: 24px 20px; }
  body.suite-page .suite-ref-booking-title { font-size: 33px; }
}

/* De Maio — convite da Experiência romântica na página da suíte (liga/desliga no painel). */
body.suite-page .rx-invite {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 35px;
  border-radius: 26px;
  background:
    radial-gradient(70% 90% at 100% 0%, color-mix(in srgb, var(--verona-coral) 22%, transparent), transparent 70%),
    var(--areia, #F3E6E4);
  color: var(--verona-ink);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 13px;
  border: 1px solid color-mix(in srgb, var(--verona-coral) 25%, transparent);
}
body.suite-page .rx-invite-k { font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--verona-wine); }
body.suite-page .rx-invite-k span { color: color-mix(in srgb, var(--verona-coral) 70%, var(--verona-wine)); }
body.suite-page .rx-invite-title { font-size: clamp(28px, 2.5vw, 36px); color: var(--verona-wine); font-weight: 800; line-height: 1.06; }
body.suite-page .rx-invite-title em { font-family: 'Instrument Serif', Georgia, serif; font-style: italic; font-weight: 400; color: color-mix(in srgb, var(--verona-coral) 75%, var(--verona-wine)); }
body.suite-page .rx-invite p { font-size: 15.5px; line-height: 1.55; margin: 0; color: var(--verona-ink); }
body.suite-page .rx-invite-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-top: 6px; }
body.suite-page .rx-invite .btn { background: var(--verona-wine); border-color: var(--verona-wine); color: #fff; border-radius: 99px; min-height: 52px; padding: 0 24px; font-size: 14px; }
body.suite-page .rx-invite .btn:hover { background: var(--verona-coral); border-color: var(--verona-coral); color: var(--verona-wine); }
body.suite-page .rx-invite-more { font-size: 14px; font-weight: 600; color: var(--verona-wine); text-decoration: underline; text-underline-offset: 4px; }

/* =========================================================
   De Maio — página da suíte com FOTO EM DESTAQUE
   Topo ameixa, foto da suíte em tela cheia com nome e selos,
   miniaturas logo abaixo e, em seguida, detalhes + reserva fixa.
   ========================================================= */
body.suite-hero-layout .site-header { background: var(--verona-wine); color: #fff; }
body.suite-hero-layout .site-header .logo, body.suite-hero-layout .site-header .logo:hover,
body.suite-hero-layout .site-header .logo-a { color: #fff; }
body.suite-hero-layout .site-header .logo-b { color: color-mix(in srgb, var(--verona-coral) 80%, #fff); }
body.suite-hero-layout .site-header .nav a { color: rgba(255,255,255,.82); }
body.suite-hero-layout .site-header .nav a:hover { color: #fff; }
body.suite-hero-layout .site-header .btn-red { background: var(--verona-coral); border-color: var(--verona-coral); color: var(--verona-wine); }
body.suite-hero-layout .site-header .menu-btn { background: transparent; border-color: rgba(255,255,255,.35); }
body.suite-hero-layout .site-header .menu-btn span { background: #fff; }
@media (max-width: 960px) {
  body.suite-hero-layout .site-header .nav { background: var(--verona-wine); border-color: rgba(255,255,255,.14); }
  body.suite-hero-layout .site-header .nav a { color: #fff; border-color: rgba(255,255,255,.14); }
}

body.suite-hero-layout .sx-top { background: var(--verona-wine); color: #fff; }
body.suite-hero-layout .sx-hero { position: relative; display: flex; align-items: flex-end; min-height: clamp(480px, 74vh, 780px); overflow: hidden; background: var(--verona-wine); }
body.suite-hero-layout .sx-hero-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
body.suite-hero-layout .sx-hero::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,.28) 0%, rgba(0,0,0,0) 28%, color-mix(in srgb, var(--verona-wine) 45%, transparent) 62%, var(--verona-wine) 100%); }
body.suite-hero-layout .sx-hero--empty { min-height: 380px; background: radial-gradient(90% 90% at 80% 0%, color-mix(in srgb, var(--verona-coral) 28%, transparent), transparent 60%), var(--verona-wine); }
body.suite-hero-layout .sx-hero-in { position: relative; z-index: 1; width: 100%; padding-top: 110px; padding-bottom: clamp(36px, 5vw, 56px); display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
body.suite-hero-layout .sx-hero .crumbs { margin-bottom: 6px; }
body.suite-hero-layout .sx-title { color: #fff; margin: 0; text-shadow: 0 2px 30px rgba(0,0,0,.25); }
body.suite-hero-layout .sx-title .it { color: color-mix(in srgb, var(--verona-coral) 70%, #fff); }
body.suite-hero-layout .sx-seals { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
body.suite-hero-layout .sx-seal { background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.28); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
body.suite-hero-layout .sx-hero-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin-top: 14px; }
body.suite-hero-layout .sx-hero-cta .btn-red { background: var(--verona-coral); border-color: var(--verona-coral); color: var(--verona-wine); min-height: 52px; padding: 0 28px; border-radius: 99px; }
body.suite-hero-layout .sx-hero-cta .btn-red:hover { background: #fff; border-color: #fff; color: var(--verona-wine); }
body.suite-hero-layout .sx-ghost { min-height: 52px; padding: 0 22px; border-radius: 99px; border: 1px solid rgba(255,255,255,.55); background: rgba(0,0,0,.18); color: #fff; font: 600 14px/1 'Inter', system-ui, sans-serif; cursor: pointer; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
body.suite-hero-layout .sx-ghost:hover { background: #fff; color: var(--verona-wine); }
body.suite-hero-layout .sx-from { font-size: 14px; color: rgba(255,255,255,.8); }
body.suite-hero-layout .sx-from strong { color: #fff; font-size: 18px; }

body.suite-hero-layout .sx-thumbs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; padding-top: 4px; padding-bottom: clamp(32px, 4vw, 48px); }
body.suite-hero-layout .sx-thumb { position: relative; padding: 0; border: 0; border-radius: 14px; overflow: hidden; aspect-ratio: 4 / 3; background: rgba(255,255,255,.08); cursor: zoom-in; }
body.suite-hero-layout .sx-thumb-img, body.suite-hero-layout .sx-thumb .ph { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease, opacity .2s; }
body.suite-hero-layout .sx-thumb:hover .sx-thumb-img { transform: scale(1.05); }
body.suite-hero-layout .sx-thumb:focus-visible { outline: 3px solid var(--verona-coral); outline-offset: 2px; }
body.suite-hero-layout .sx-more { position: absolute; inset: 0; display: grid; place-items: center; background: color-mix(in srgb, var(--verona-wine) 62%, transparent); color: #fff; font: 700 17px/1 'Inter', system-ui, sans-serif; }
body.suite-hero-layout .suite-reference-match { padding-top: clamp(48px, 6vw, 80px); }

@media (max-width: 760px) {
  body.suite-hero-layout .sx-hero { min-height: 72svh; }
  body.suite-hero-layout .sx-hero-in { padding-top: 80px; }
  body.suite-hero-layout .sx-hero-cta .btn-red, body.suite-hero-layout .sx-ghost { flex: 1 1 auto; justify-content: center; }
  body.suite-hero-layout .sx-thumbs { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0; padding-left: max(20px, env(safe-area-inset-left, 0px)); padding-right: 20px; scroll-padding-inline: 20px; }
  body.suite-hero-layout .sx-thumbs::-webkit-scrollbar { display: none; }
  body.suite-hero-layout .sx-thumb { flex: 0 0 40%; scroll-snap-align: start; }
}

/* Rodapé e abas da reserva na cor da marca */
body.suite-hero-layout .suite-ref-booking .suite-choice-btn.is-on,
body.suite-hero-layout .suite-ref-booking .tab.is-on { background: var(--verona-wine); border-color: var(--verona-wine); color: #fff; }
