@font-face {
  font-family: "Google Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/googlesans/v76/4Ua_rENHsxJlGDuGo1OIlJfC6l_24rlCK1Yo_Iqcsih3SAyH6cAwhX9RFD48TE63OOYKtrw2IJllpynAFyo4R4o.woff2") format("woff2");
  unicode-range: U+0000-00FF;
}

.rooms-home {
  color: var(--ink);
  --home-green: #163d30;
}

.rooms-home-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  align-items: start;
  gap: 22px clamp(24px, 4.5vw, 58px);
  isolation: isolate;
  padding: clamp(26px, 5vw, 62px);
  border: 1px solid #dbe4d6;
  border-radius: 24px;
  background: linear-gradient(120deg, #f5f8ed, #e4eee2);
}

.rooms-home-intro {
  container-type: inline-size;
  display: grid;
  min-width: 0;
  gap: 14px;
}

#rooms-home-title {
  color: var(--home-green);
  font-size: clamp(22px, 3.3vw, 40px);
  font-size: clamp(22px, 9.1cqi, 40px);
  font-weight: 780;
  line-height: 1.25;
  letter-spacing: -.05em;
}

#rooms-home-title span { display: block; }

#rooms-home-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  margin-top: 0;
  padding: clamp(14px, 2.4vw, 25px);
  border-color: #dbe4d6;
}

@media (min-width: 600px) and (pointer: fine) {
  #rooms-home-panel .rooms-hours-timeline:not(:has([data-stacked-labels])) { padding-block-end: 34px; }
}

.rooms-panel-content {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}

.rooms-panel-content > h2,
.rooms-panel-heading > h2 {
  justify-self: start;
  min-inline-size: 0;
  max-inline-size: 100%;
  color: var(--home-green);
  font-size: clamp(19px, 2.2vw, 27px);
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.rooms-panel-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

#rooms-joined {
  display: grid;
  gap: 8px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

#rooms-joined-title { color: var(--home-green); }

#rooms-joined .room-list-row {
  flex: 1;
  min-inline-size: 0;
  min-block-size: 44px;
  justify-content: center;
  padding: 6px 9px;
  border-color: var(--line);
  border-radius: 7px;
  text-align: center;
}

#rooms-joined .rooms-name-suffix {
  flex: none;
  font-size: 13px;
  font-weight: 650;
}

#rooms-join-account {
  color: var(--muted);
  overflow-wrap: anywhere;
}

#rooms-home-panel .rooms-feedback:empty {
  position: absolute;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}

#rooms-join-feedback, #rooms-flow-notice-text {
  line-height: 1.65;
  white-space: pre-line;
}

.rooms-action-divider {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-size: 13px;
}

.rooms-action-divider::before, .rooms-action-divider::after {
  flex: 1;
  border-top: 1px solid var(--line);
  content: '';
}

#rooms-flow-dismiss {
  inline-size: auto;
  min-block-size: 44px;
  margin-inline-start: 8px;
  padding-inline: clamp(6px, 1.3vw, 12px);
  font-size: 13px;
  white-space: nowrap;
}

#rooms-flow-login-label { overflow-wrap: anywhere; }

.rooms-embed .rooms-home-hero {
  display: block;
  padding: 0;
  border: 0;
  background: none;
}

.rooms-embed :is(.rooms-home-intro, .rooms-home-scenes, .rooms-home-guide) { display: none; }

.rooms-join-name-line {
  display: flex;
  white-space: nowrap;
}

.rooms-join-name-line > :last-child { flex: none; }

.rooms-home-intro > p {
  max-width: 29em;
  font-size: clamp(14px, 1.45vw, 17px);
  line-height: 1.85;
  color: #40574b;
  overflow-wrap: anywhere;
}

.rooms-home-scenes { margin-block-start: 5px; }

.rooms-home-scenes h2 {
  color: var(--home-green);
  font-size: 15px;
}

.rooms-home-scenes ul {
  display: grid;
  gap: 10px;
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
}

.rooms-home-scenes li {
  --scene-window-size: clamp(64px, 12vw, 76px);
  display: grid;
  grid-template: "image copy" / var(--scene-window-size) minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  font-size: 13px;
  line-height: 1.5;
}

.rooms-home-scenes li:nth-child(even) {
  grid-template: "copy image" / minmax(0, 1fr) var(--scene-window-size);
}

.rooms-home-scenes img {
  display: block;
  grid-area: image;
  width: var(--scene-window-size);
  height: var(--scene-window-size);
  object-fit: cover;
  border-radius: 50%;
}

.rooms-home-scenes li > div { grid-area: copy; }

.rooms-home-scenes h3 { color: var(--home-green); font-size: inherit; }
.rooms-home-scenes p { margin-block-start: 2px; color: #40574b; }

.rooms-panel-action {
  display: flex;
  inline-size: 100%;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 8px;
  font-weight: 650;
  text-decoration: none;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}

#rooms-join-form .rooms-panel-action,
#rooms-home-panel:has(#rooms-join:not([hidden])) #rooms-flow-login {
  inline-size: min(90%, 20rem);
  justify-self: center;
}

.rooms-panel-action.settings-primary {
  border-color: var(--home-green);
  background: var(--home-green);
  color: #fff;
}

.rooms-panel-action.settings-primary:hover:not(:disabled) {
  border-color: #205640;
  background: #205640;
}

#rooms-home-panel .google-signin {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) 20px;
  gap: 10px;
  background: #fff;
  border-color: #747775;
  color: #1f1f1f;
  font-family: "Google Sans", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

/* The 20px Google mark from Google's light Android + Web sign-in artwork. */
.google-signin::before {
  width: 20px;
  height: 20px;
  background: url("data:image/png;base64,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") center / contain no-repeat;
  content: "";
}

#rooms-home-panel .google-signin:hover:not(:disabled) {
  box-shadow: 0 1px 3px #1f1f1f26;
}

.rooms-home-note {
  color: #40574b;
  font-size: 13px;
}

.rooms-home-guide {
  padding: clamp(27px, 4vw, 47px) clamp(4px, 2.4vw, 28px) 12px;
}

.rooms-home-guide h2 {
  color: var(--home-green);
  font-size: clamp(21px, 2.7vw, 28px);
  letter-spacing: -.03em;
}

.rooms-home-guide ol {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 27px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: home-step;
}

.rooms-home-guide li {
  position: relative;
  padding: 13px 0 0 32px;
  border-top: 1px solid #d7dfd1;
  counter-increment: home-step;
}

.rooms-home-guide li::before {
  position: absolute;
  inset: 12px auto auto 0;
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 50%;
  background: #e0ebdc;
  color: var(--home-green);
  content: counter(home-step);
  font-size: 11px;
  font-weight: 750;
}

.rooms-home-guide h3 { font-size: 15px; }
.rooms-home-guide p { margin-top: 4px; color: #465b50; font-size: 13px; line-height: 1.75; }

.home-trial {
  margin-block-start: clamp(27px, 4vw, 47px);
  scroll-margin-block-start: 12px;
}

#home-trial-frame {
  display: block;
  width: 100%;
  height: 680px;
  border: 0;
  border-radius: 12px;
  background: var(--paper);
  box-shadow: 0 0 0 1px var(--line);
}

@media (min-width: 781px) {
  .rooms-home-hero { grid-template-rows: auto 1fr; }
  #rooms-home-panel { grid-column: 2; grid-row: 1 / span 2; }
  .rooms-home-scenes { grid-column: 1; grid-row: 2; }
}

@media (max-width: 780px) {
  .rooms-home-hero { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 540px) {
  .rooms-home-hero { gap: 20px; padding: 16px; border-radius: 16px; }
  .rooms-home-intro { gap: 12px; }
  .rooms-home-guide ol { grid-template-columns: minmax(0, 1fr); }
}
