/* Mind Maiden v3 overrides. Loaded after style.css so these are authoritative. */
.navScrollCue {
  display: none;
}

/*
  MIND MAIDEN ROOM EXPERIMENT
  Remove this entire block to restore the previous wallpaper, poster, and layout.
*/
#home .roomWallpaper {
  background:
    linear-gradient(rgba(130, 90, 24, 0.06), rgba(130, 90, 24, 0.14)),
    url('/resources/wallpaper-room1.png') center / 195px auto repeat !important;
}

#home .roomAstrologyPoster img {
  content: url('/resources/mind-maiden-astrology-poster-test.jpg');
}

#home .roomCouch {
  left: 34% !important;
  right: auto !important;
  bottom: 18% !important;
  width: 32% !important;
}

#home .altarKitty {
  left: 52% !important;
  right: auto !important;
  bottom: 31% !important;
  width: 12% !important;
}

#home .roomKey {
  left: 45% !important;
  right: auto !important;
  bottom: 29% !important;
  width: 10% !important;
}

#home .sideTable {
  left: 68% !important;
  right: auto !important;
  bottom: 14% !important;
  width: 34% !important;
}

#home .altarTarot { left: 70% !important; right: auto !important; bottom: 37% !important; width: 9% !important; }
#home .altarChalice { left: 75% !important; right: auto !important; bottom: 27% !important; width: 5% !important; }
#home .altarBook { left: 79% !important; right: auto !important; bottom: 27% !important; width: 10% !important; }
#home .altarCandles { left: 85% !important; right: auto !important; bottom: 30% !important; width: 10% !important; }
#home .roomCrystal { left: 90% !important; right: auto !important; bottom: 36% !important; width: 7% !important; }

/* Furniture-swap trial. Remove only this block to restore the positions above. */
#home .roomAstrologyPoster img { content: url('/resources/astrology-poster-celestial-trial.png'); }
#home .roomCouch { left: 68% !important; }
#home .altarKitty { left: 86% !important; }
#home .roomKey { left: 79% !important; }
#home .sideTable { left: 34% !important; }
#home .altarTarot { left: 36% !important; }
#home .altarChalice { left: 41% !important; }
#home .altarBook { left: 45% !important; }
#home .altarCandles { left: 51% !important; }
#home .roomCrystal { left: 56% !important; }
/* End furniture-swap trial. */

/*
  Peacock-teal background test. Remove this block to restore the prior flat teal.
  Navigation, frames, panels, and all other styling remain unchanged.
*/
.mainFrame,
.layout,
.sideNav,
.sideInfo,
.contentPanel,
.siteFooter {
  background: linear-gradient(180deg, #386D70 0%, #2E595F 100%);
}

/* Desktop sidebar rails: structural outer frames around the ornate inner modules. */
.sideNav,
.sideInfo {
  border: 1px solid rgba(190, 211, 197, 0.34);
  background: linear-gradient(180deg, #4b7777 0%, #3d686b 100%);
  box-shadow:
    inset 0 0 0 1px rgba(29, 71, 75, 0.42),
    inset 0 1px 0 rgba(225, 233, 210, 0.16);
}

/* Once the columns stack, keep only the standalone ornate cards. */
@media (max-width: 1050px) {
  .sideNav,
  .sideInfo {
    border: 0;
    background: transparent;
    box-shadow: none;
  }
}

/* Keep the full eye composition visible throughout the mobile closing sequence. */
@media (max-width: 760px) {
  .vnScene[data-scene="energyQuestion"],
  .vnScene[data-scene="energyTransformation"],
  .vnScene[data-scene="willDirection"],
  .vnScene[data-scene="energyChoice"] {
    background-size: contain;
    background-position: center center;
  }
}

/* Match the copyright bar to the established glossy teal navigation. */
.siteFooter {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--nav-gloss-edge);
  background: linear-gradient(to bottom, var(--nav-gloss-top) 0%, #659ba1 14%, var(--nav-gloss-mid) 51%, var(--nav-gloss-bottom) 100%);
  color: var(--nav-gloss-text);
  text-shadow: 0 1px 0 rgba(51, 31, 17, 0.88), 0 0 3px rgba(255, 238, 180, 0.14);
  box-shadow:
    inset 0 1px 0 rgba(227, 248, 244, 0.62),
    inset 0 -3px 5px rgba(13, 47, 54, 0.52);
}

.siteFooter::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 2px 3px auto;
  height: 43%;
  background: linear-gradient(to bottom, rgba(255, 252, 227, 0.36), rgba(255, 252, 227, 0.07));
  pointer-events: none;
}

.siteFooter > span {
  position: relative;
  z-index: 1;
}

/* Small tabletop adjustments for the cards and chalice. */
.altarTarot {
  left: 33% !important;
  right: auto !important;
  bottom: 39.5% !important;
  width: 9.5% !important;
}

.altarChalice {
  bottom: 33.5% !important;
}

.serviceImagePlaceholder,
.detailImagePlaceholder {
  display: grid;
  place-items: center;
  margin-inline: auto;
  border: 1px dashed rgba(92, 57, 32, 0.55);
  color: #6f5030;
  background: rgba(255, 248, 208, 0.36);
  font: italic 400 14px/1.3 Georgia, "Times New Roman", serif;
  text-align: center;
}

/* Launch waitlists retain the existing parchment panel and service-button language. */
.serviceNotice {
  max-width: 760px;
  margin: 14px auto 24px;
  padding: 14px 18px;
  border: 3px double #b39862;
  background: #efe1a4;
  color: #432817;
  text-align: center;
}

.serviceNotice h3,
.serviceNotice p {
  margin: 0 0 10px;
}

.waitlistCard {
  max-width: 760px;
  margin-inline: auto;
  text-align: center;
}

.waitlistFrame {
  display: block;
  width: 100%;
  height: 300px;
  margin-top: 12px;
  border: 0;
  background: transparent;
}

:root {
  --house-burgundy: #4B242F;
  --house-burgundy-deep: #351821;
  --house-cream: #eadb9c;
}

/* The astrology poster keeps its position and movement, but never receives a glow. */
.roomAstrologyPoster,
.roomAstrologyPoster:hover,
.roomAstrologyPoster:focus-visible,
.roomAstrologyPoster img,
.roomAstrologyPoster:hover img,
.roomAstrologyPoster:focus-visible img {
  filter: none !important;
  box-shadow: none !important;
}

.houseNav {
  display: none;
}

.house-theme {
  background-image: url('/resources/house-bg.gif') !important;
}

.house-theme .topNav,
.house-theme .navScrollCue {
  display: none !important;
}

.house-theme .houseNav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #351821;
  border-radius: 7px 7px 0 0;
  background: linear-gradient(#895b68 0%, #6c3948 46%, var(--house-burgundy) 52%, var(--house-burgundy-deep) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 245, 220, 0.48), inset 0 -3px 5px rgba(20, 6, 11, 0.55);
}

.house-theme .houseNav .topNavButton {
  min-height: 42px;
  border: 0;
  border-right: 1px solid rgba(225, 197, 137, 0.32);
  color: #f6e9bd;
  background: linear-gradient(180deg, rgba(255, 240, 220, 0.26), rgba(116, 57, 73, 0.12) 44%, rgba(45, 17, 26, 0.32) 45%, rgba(27, 8, 14, 0.2));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  text-shadow: 1px 1px #32131c;
}

.house-theme .houseNav .topNavButton:last-child { border-right: 0; }

.house-theme .houseNav .topNavButton:hover,
.house-theme .houseNav .topNavButton:focus-visible,
.house-theme .houseNav .topNavButton.active {
  color: #fff8d0;
  background: linear-gradient(180deg, rgba(255, 244, 221, 0.4), rgba(137, 72, 89, 0.2) 44%, rgba(59, 23, 34, 0.38) 45%, rgba(35, 10, 18, 0.26));
}

.house-theme .mainFrame,
.house-theme .layout,
.house-theme .contentPanel {
  background: linear-gradient(180deg, var(--house-burgundy), var(--house-burgundy-deep)) !important;
}

.house-theme .layout {
  display: grid;
}

.house-theme .contentPanel {
  min-height: 620px;
}

.house-theme .sideNav,
.house-theme .sideInfo {
  background: linear-gradient(180deg, #673743, #4f2833) !important;
}

.house-theme .sideNav { border-right: 1px solid #754653; }
.house-theme .sideInfo { border-left: 1px solid #754653; }
.house-theme .sideWelcome,
.house-theme .sideWidgetFrame { background: #eadb9c; }

/* Isolated House-only frame experiment: remove this block to restore ornate blue frames. */
.house-theme .houseLacePanel,
.house-theme .sideWidgetFrame,
.house-theme .houseLaceButton {
  border: 14px solid transparent !important;
  border-image: url('/resources/house-red-gold-frame.png') 58 round !important;
  background: #eadb9c;
  background-clip: padding-box;
}

/* Keep the daily information fully expanded in both site themes. */
.sideInfo .sideWidgetFrame,
body:not(.is-home-section) .sideInfo .sideWidgetFrame {
  flex: 0 0 auto;
  min-height: 0;
  max-height: none;
  height: auto;
  overflow: visible;
  padding: 16px 12px;
}

.house-theme .siteFooter {
  background: linear-gradient(#784454, var(--house-burgundy) 55%, var(--house-burgundy-deep));
}

.guidebookEntrance {
  margin-top: 16px !important;
}

.guidebookIntro {
  max-width: 720px;
  margin: 18px auto;
  color: #f6e9bd;
  text-align: center;
}

.guidebookIntro p {
  margin: 0 0 12px;
  line-height: 1.45;
}

.guidebookChoices .serviceLink,
.guidebookSuitTabs .serviceLink {
  color: #f6e9bd !important;
  border-color: rgba(246, 233, 189, 0.55);
  background: rgba(35, 78, 83, 0.34);
}

.guidebookChoices .serviceLink:hover,
.guidebookChoices .serviceLink:focus-visible,
.guidebookSuitTabs .serviceLink:hover,
.guidebookSuitTabs .serviceLink:focus-visible,
.guidebookSuitTabs .serviceLink.is-selected {
  color: #fff8d0 !important;
  background: rgba(75, 36, 47, 0.7);
}

.guidebookChoices,
.guidebookSuitTabs,
.houseArchiveGrid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin: 24px auto;
}

.tarotCardGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(110px, 1fr));
  gap: 18px 14px;
  max-width: 820px;
  margin: 22px auto;
}

.guidebookCard {
  min-width: 0;
  padding: 9px 7px 12px;
  border: 3px double #b39862;
  background: #eadb9c;
  color: #4B242F;
  font: 700 14px/1.25 Georgia, "Times New Roman", serif;
  cursor: pointer;
  transition: transform 150ms ease, box-shadow 150ms ease;
}

.guidebookCard:hover,
.guidebookCard:focus-visible {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 5px 8px rgba(43, 24, 17, 0.28);
  outline: 2px solid #4B242F;
}

.guidebookCard img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 190px;
  margin: 0 auto 8px;
  object-fit: contain;
}

.tarotQuickView[hidden] { display: none; }

.tarotQuickView {
  position: fixed;
  z-index: 10000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(22, 8, 13, 0.76);
}

.tarotQuickView__panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(150px, 230px) minmax(0, 1fr);
  gap: 22px;
  width: min(760px, 100%);
  max-height: calc(100vh - 40px);
  overflow: auto;
  padding: 26px;
  border: 13px solid transparent;
  border-image: url('/resources/ornate-frame.png') 48 round;
  background: #eadb9c;
  color: #3b261c;
}

.tarotQuickView__image { width: 100%; height: auto; }
.tarotQuickView__copy h2 { color: #4B242F; }
.tarotQuickView__facts { display: grid; grid-template-columns: max-content 1fr; gap: 5px 12px; }
.tarotQuickView__facts dt { font-weight: 700; color: #4B242F; }
.tarotQuickView__facts dd { margin: 0; }
.tarotQuickView__close { position: absolute; top: 7px; right: 9px; border: 0; color: #4B242F; background: transparent; font-size: 28px; cursor: pointer; }
.serviceLink.is-disabled { opacity: 0.62; cursor: default; }

.secretLips {
  display: block;
  margin: 12px auto 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.secretLips .aboutGif { margin: 0; }

.housePlaceholder,
.houseArchiveFields {
  max-width: 850px;
  margin: 22px auto;
  padding: 24px;
  border: 3px double #c8a86a;
  background: rgba(53, 24, 33, 0.76);
  color: var(--house-cream);
}

.houseRoom {
  background: #532f42;
}

.houseRoom .roomWallpaper {
  inset: 0 0 25%;
  border-bottom-color: rgba(127, 91, 100, 0.76);
  background:
    linear-gradient(rgba(20, 8, 24, 0.05), rgba(20, 8, 24, 0.18)),
    url('/resources/house-room-wallpaper.jpg') center / 155px auto repeat;
}

.houseRoom .roomFloor {
  height: 26%;
  background:
    repeating-linear-gradient(90deg, transparent 0 52px, rgba(26, 10, 15, 0.3) 53px 55px),
    linear-gradient(#5d382f, #2d1919);
}

.houseObject {
  position: absolute;
  display: block;
  max-width: none;
  height: auto;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}

.houseRug { z-index: 3; left: 2%; bottom: -3%; width: 32%; }
.houseVanity { z-index: 6; left: 1%; bottom: 17%; width: 23%; }
.houseLamp { z-index: 5; left: 20%; bottom: 18%; width: 18%; }
.houseBass { z-index: 7; left: 28%; bottom: 18%; width: 17%; }
.houseDresser { z-index: 6; left: 43%; bottom: 18%; width: 29%; }
.houseBed { z-index: 6; right: 0; bottom: 18%; width: 36%; transform: scaleX(-1); }
.houseKitty { z-index: 8; left: 67%; bottom: 17%; width: 11%; }

.deityFrame {
  position: absolute;
  z-index: 9;
  width: 10.5%;
  padding: 0;
  border: 0;
  color: var(--house-cream);
  background: transparent;
  font: 700 18px Georgia, serif;
  cursor: pointer;
}

.deityFrame img { display: block; width: 100%; height: auto; }
.deityFrame--aphrodite { top: 24%; left: 38%; width: 8%; }
.deityFrame--pomba { top: 24%; left: 48%; width: 8%; }
.deityFrame--yemaya {
  top: 24%;
  left: 58%;
  width: 8%;
}
.deityFrame .objectMessage {
  position: absolute;
  top: -27px;
  bottom: auto;
  left: 50%;
  z-index: 20;
  width: max-content;
  padding: 2px 5px;
  color: #f8edc6;
  background: rgba(55, 22, 31, 0.88);
  text-shadow: 1px 1px #241017;
  opacity: 0;
  pointer-events: none;
  transform: translateX(-50%);
}
.deityFrame:hover .objectMessage,
.deityFrame:focus-visible .objectMessage { opacity: 1; }
.deityFrame:hover img,
.deityFrame:focus-visible img { transform: none; filter: none; }
.houseArchiveLink { padding: 14px 22px; border: 3px double #c8a86a; color: var(--house-cream); background: var(--house-burgundy); font: 700 18px Georgia, serif; cursor: pointer; }
.houseArchiveLink.is-placeholder { opacity: 0.7; cursor: default; }
.houseAltarPage,
.houseLongformPage { text-align: center; }
.houseAltarImage { width: min(280px, 70%); height: auto; }
.houseDeityDetail,
.houseBlogArticle {
  width: min(760px, 100%);
  margin: 18px auto;
  padding: 26px clamp(20px, 5vw, 54px);
  color: #3b261c;
  text-align: center;
}
.houseArchiveFields {
  display: block;
  max-width: 640px;
  margin: 24px auto 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #3b261c;
  text-align: center;
}
.houseArchiveField { padding: 18px 0; border: 0; }
.houseArchiveField h3 { margin: 0 0 8px; color: #7b2834; text-align: center; }
.houseArchiveField p { margin: 0; color: #3b261c; font-style: normal; line-height: 1.6; text-align: center; }

.houseDeityCopy {
  max-width: 640px;
  margin: 20px auto 0;
  text-align: left;
  line-height: 1.6;
}

.houseDeityCopy p { margin: 0 0 18px; }
.houseDeityCopy p:last-child { margin-bottom: 0; }
.house-theme .sectionTitle,
.house-theme .sectionTitle::first-letter { color: #f6e9bd !important; }
.houseAltarGrid { max-width: 820px; margin-inline: auto; }
.houseAltarGrid .serviceCard { background: #eadb9c; }

.house-theme .houseRoom,
.house-theme .houseAltarGrid .serviceCard,
.house-theme .houseDeityDetail,
.house-theme .houseBlogArticle {
  box-sizing: border-box;
  border: 14px solid transparent !important;
  border-image: url('/resources/house-red-gold-frame.png') 58 round !important;
  background-clip: padding-box;
}
.houseServiceImage { width: auto; max-width: 78%; height: 220px; object-fit: contain; }
.houseFutureCard .serviceImageBlank { min-height: 220px; }

.houseRoomUtility { margin-top: 10px; }
.houseVisitorCounter { margin-bottom: 8px; }
.house-theme .charmRow--footer { display: flex !important; }

.houseBlogList {
  display: grid;
  gap: 14px;
  width: min(760px, 100%);
  margin: 24px auto;
}

.houseBlogPreview {
  display: grid;
  gap: 5px;
  width: 100%;
  padding: 18px 22px;
  border: 13px solid transparent;
  border-image: url('/resources/house-red-gold-frame.png') 58 round;
  color: #3b261c;
  background: #eadb9c;
  text-align: left;
  transition: filter 150ms ease, transform 150ms ease;
}
.houseBlogPreview time { color: #7b2834; font-weight: 700; }
.houseBlogPreview strong { font-size: 20px; }
.houseBlogPreview span { line-height: 1.45; }
.houseBlogPreview:hover,
.houseBlogPreview:focus-visible { filter: brightness(1.06); transform: translateY(-2px); outline: none; }
.houseBlogDate { margin-top: -8px; color: #7b2834; font-weight: 700; }
.houseBlogContent { text-align: center; line-height: 1.65; }
.houseBlogImage { display: block; max-width: 100%; height: auto; margin: 20px auto; }
.houseBlogImage.houseBlogStamp { width: 100px; margin: 12px auto; }
.houseBlogImage[hidden] { display: none; }

.houseDeityDetail .sectionTitle,
.houseBlogArticle .sectionTitle {
  color: #7b2834 !important;
}
.houseDeityDetail .sectionTitle::first-letter,
.houseBlogArticle .sectionTitle::first-letter {
  color: #3b261c !important;
}

.house-theme .houseNav button,
.house-theme .houseNav button *,
.house-theme .deityFrame,
.house-theme .deityFrame *,
.house-theme .serviceCard,
.house-theme .serviceCard *,
.house-theme .serviceLink,
.house-theme .backLink,
.house-theme .houseBlogPreview,
.house-theme .charmButton,
.secretLips,
.secretLips * {
  cursor: url('/resources/cursor-hover.gif') 8 8, pointer !important;
}

.serviceImagePlaceholder {
  width: min(150px, 72%);
  aspect-ratio: 1;
}

.detailImagePlaceholder {
  width: min(230px, 70%);
  aspect-ratio: 1;
  margin-bottom: 18px;
}

.guestbookFrame {
  width: 100%;
  max-width: 700px;
  margin: 0 auto 20px;
}

.guestbookEmbed {
  min-width: 0;
  min-height: 450px;
}

.guestbookEmbed iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 450px;
  border: 0;
}

@media (max-width: 680px) {
  .house-theme .houseNav {
    grid-template-columns: repeat(4, minmax(112px, 1fr));
    overflow-x: auto;
  }

  .tarotCardGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding-inline: 8px;
  }

  .guidebookCard img { height: 170px; }

  .tarotQuickView__panel {
    display: block;
    padding: 24px 18px;
  }

  .tarotQuickView__image {
    display: block;
    width: auto;
    max-width: 68%;
    max-height: 42vh;
    margin: 0 auto 14px;
  }

  .house-theme .layout { display: flex; }
  .house-theme .contentPanel { min-height: 0; }
  .is-house-home-section .contentPanel { padding-bottom: 0 !important; }
  .is-house-home-section .sideNav,
  .is-house-home-section .sideInfo { padding-block: 8px; }
  .deityFrame { width: 10.5%; }
  .deityFrame--aphrodite { top: 24%; left: 38%; width: 8%; }
  .deityFrame--pomba { top: 24%; left: 48%; width: 8%; }
  .deityFrame--yemaya { top: 24%; left: 58%; width: 8%; }

  .serviceNotice {
    margin-inline: 12px;
  }

  .waitlistFrame {
    height: 330px;
  }

  .siteTitle {
    font-size: clamp(30px, 9vw, 48px) !important;
    white-space: nowrap;
  }

  /* The shine belongs to each button, so it continues across the full menu. */
  .topNav::before {
    display: none !important;
  }

  .topNav .topNavButton,
  .topNav .navButton {
    min-width: 132px !important;
    background:
      linear-gradient(180deg, rgba(226, 248, 244, 0.64) 0%, rgba(158, 211, 210, 0.34) 38%, rgba(42, 93, 105, 0.08) 39%, rgba(15, 56, 69, 0.22) 100%) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.7),
      inset 0 -1px 0 rgba(17, 58, 69, 0.48) !important;
  }

  .topNav .topNavButton:hover,
  .topNav .topNavButton:focus-visible,
  .topNav .topNavButton.active,
  .topNav .topNavButton[aria-current="page"] {
    background:
      linear-gradient(180deg, rgba(238, 255, 250, 0.76) 0%, rgba(174, 224, 220, 0.46) 38%, rgba(52, 104, 115, 0.16) 39%, rgba(17, 59, 72, 0.3) 100%) !important;
  }

  .navScrollCue {
    display: grid;
    grid-template-columns: 30px minmax(80px, 1fr) 30px;
    align-items: center;
    gap: 6px;
    margin: -1px 12px 10px;
    color: #f6e9bd;
  }

  .navScrollArrow {
    display: grid;
    width: 30px;
    height: 25px;
    padding: 0;
    place-items: center;
    border: 1px solid rgba(232, 219, 156, 0.72);
    border-radius: 3px;
    color: #f6e9bd;
    background: linear-gradient(#568e98, #244f5d);
    box-shadow: inset 1px 1px rgba(255, 255, 255, 0.35), 1px 1px rgba(16, 44, 53, 0.75);
    font: 700 24px/1 Georgia, "Times New Roman", serif;
    cursor: pointer;
  }

  .navScrollArrow:active {
    border-style: inset;
    transform: translate(1px, 1px);
  }

  .navScrollTrack {
    position: relative;
    height: 11px;
    overflow: hidden;
    border: 2px inset #89b1b5;
    background: #1f5260;
  }

  .navScrollThumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 34%;
    height: 100%;
    border: 1px outset #c8e0dd;
    background: linear-gradient(#b8dcda, #5d949c 55%, #315f6a);
    box-shadow: inset 1px 1px rgba(255, 255, 255, 0.55);
    transform: translateX(0);
  }

  .navScrollLabel {
    grid-column: 1 / -1;
    margin-top: -2px;
    text-align: center;
    font: 400 11px/1.35 Georgia, "Times New Roman", serif;
    letter-spacing: 0.02em;
    text-shadow: none;
  }

  /* On phones the home screen reads as room, welcome, daily notes, replay, visitors. */
  .contentPanel { order: 1; }
  .sideNav { order: 2; }
  .sideInfo { order: 3; }
  .layout > .roomUtility { order: 4; width: 100%; padding: 2px 13px 18px; }
  .layout > .visitorCounter { order: 5; width: 100%; margin: 22px auto 12px; }

  body:not(.is-home-section) .layout > [data-room-section="home"],
  body:not(.is-house-home-section) .layout > [data-room-section="house-of-my-mind"] {
    display: none !important;
  }

  .layout > .roomUtility > span {
    display: none;
  }

  /* One coordinate system: the phone now scales the desktop room composition. */
  .roomCouch { left: 65% !important; right: auto !important; bottom: 19% !important; width: 37% !important; }
  .roomCabinet { left: 1% !important; right: auto !important; bottom: 20% !important; width: 29% !important; }
  .sideTable { left: 29% !important; right: auto !important; bottom: 10% !important; width: 43% !important; }
  .roomCarpet { left: 49% !important; right: auto !important; bottom: 0 !important; width: 30% !important; }
  .altarMirror { left: 18% !important; right: auto !important; bottom: 49% !important; width: 9% !important; }
  .roomRose { left: 6% !important; right: auto !important; bottom: 59% !important; width: 10% !important; }
  .altarKitty { left: 85% !important; right: auto !important; bottom: 35% !important; width: 13% !important; }
  .altarTarot { left: 33% !important; right: auto !important; bottom: 39.5% !important; width: 9.5% !important; }
  .altarChalice { top: auto !important; left: 40% !important; right: auto !important; bottom: 39% !important; width: 5% !important; }
  .altarBook { top: auto !important; left: 45% !important; right: auto !important; bottom: 34% !important; width: 11% !important; }
  .roomCrystal { left: 56% !important; right: auto !important; bottom: 38% !important; width: 7% !important; }
  .altarCandles { left: 51% !important; right: auto !important; bottom: 44% !important; width: 14% !important; }
  .roomKey { left: 77% !important; right: auto !important; bottom: 34% !important; width: 10% !important; }
  .roomSweetening { left: 15% !important; right: auto !important; bottom: 49% !important; width: 7% !important; }
  .roomRoadOpener { left: 12% !important; right: auto !important; bottom: 49% !important; width: 7% !important; }
  .roomProtection { left: 7% !important; right: auto !important; bottom: 47% !important; width: 8% !important; }

  .roomAstrologyPoster {
    top: 14.5% !important;
    right: 4% !important;
    width: 19.5% !important;
  }

  #home .altarChalice { bottom: 38% !important; }
  #home .altarBook { bottom: 35% !important; }

  .vnScene[data-scene="houseGardenGreeting"],
  .vnScene[data-scene="houseGardenQuestion"] {
    background-position: 75% center;
  }

  #tarot .serviceGrid,
  #spells .serviceGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px;
    padding-inline: 8px;
  }

  #tarot .serviceCard,
  #spells .serviceCard {
    min-width: 0;
    padding: 12px 8px;
  }

  #tarot .serviceCard h3,
  #spells .serviceCard h3 {
    font-size: 14px;
    line-height: 1.3;
    overflow-wrap: anywhere;
    min-height: 3.9em;
  }

  #tarot .serviceImage,
  #spells .serviceImage {
    max-width: 100%;
    object-fit: contain;
  }

  #tarot .serviceLink,
  #spells .serviceLink {
    font-size: 14px;
    padding-inline: 0;
  }
}
.dailyTarot { text-align: center; max-width: 640px; margin: 20px auto; }
#dailyCardImage { display: block; width: 190px; height: 330px; object-fit: contain; margin: 0 auto 20px; }
.dailyTarot .serviceLink:disabled { opacity: .65; cursor: default; }
.tarotLesson { padding: 20px 0; border-bottom: 1px solid #a7b8ad; }
.tarotLesson h3 { color: #eadb9c; font-size: 24px; }
.tarotLesson p { color: #eadb9c; line-height: 1.6; }
.tarotLessonCards { display: flex; flex-wrap: wrap; gap: 12px 16px; }
.tarotLessonCards .serviceLink { font-size: 14px; color: #eadb9c; }
.guidebookChoices { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
.dailyPickAction { display: flex; justify-content: center; margin: 24px 0 20px; }
.dailyPickAction .actionPill { font-size: 16px; min-width: 160px; }
.tarotConstruction { text-align: center; padding: 35px 16px; color: #eadb9c; }
.tarotConstruction .constructionGif { display: block; margin: 20px auto; }
.ticker--top {
  background: #0e4dad;
  color: #F5DF9F;
  border: 0;
  box-shadow: inset 0 1px 0 #3975c7, 0 2px 5px #093574;
}
.house-theme .ticker--top {
  background: linear-gradient(180deg, #976775 0%, #683847 45%, #3b1e2d 100%);
  color: #f3e5b4;
  box-shadow: inset 0 1px 0 #bd94a0, 0 2px 5px #28121f;
}
.tarotSuitEssay { color: #f1e6bc; line-height: 1.65; }
.tarotSuitEssay h3 { color: #eadb9c; margin: 32px 0 12px; }
.tarotSuitEssay p { margin: 0 0 22px; }
.tarotSuitGallery { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 10px; margin: 22px 0; }
.tarotSuitGallery--court { grid-template-columns: repeat(4, minmax(0, 1fr)); width: 40%; margin: 22px auto 40px; }
.tarotSuitCard { padding: 0; border: 0; background: transparent; color: #f1e6bc; font: inherit; font-size: 12px; line-height: 1.4; cursor: pointer; }
.tarotSuitCard img { display: block; width: 100%; aspect-ratio: 3 / 5; object-fit: contain; margin-bottom: 8px; }
.tarotSuitCard span { text-decoration: underline; color: #8f2f32; }
.welcomeAboutPrompt a { color: #8f2f32; }
.sideWelcome .welcomeAboutHeading + p { margin-top: 14px; font-size: 14px; line-height: 1.45; }
.sideWelcome .welcomeAboutHeading + p a { font: inherit; }
.tarotSuitCard:hover span, .tarotSuitCard:focus-visible span,
.welcomeAboutPrompt a:hover, .welcomeAboutPrompt a:focus-visible { color: #702327; }
@media (max-width: 760px) {
  .tarotSuitGallery { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
  .tarotSuitGallery--court { grid-template-columns: repeat(4, minmax(0, 1fr)); width: 80%; }
}
