/* IAA product page only. Existing product pages and screenshots remain intact. */
.iaa-hero {
  overflow: hidden;
  isolation: isolate;
  background-color: #050408;
  background-image: radial-gradient(ellipse at 84% 35%, rgba(181, 51, 153, .13) 0%, transparent 43%), radial-gradient(ellipse at 72% 76%, rgba(39, 171, 192, .08) 0%, transparent 40%), linear-gradient(105deg, #050408 0%, #090610 46%, #1b102b 100%);
  border-bottom-color: #51405f;
  color: #fff;
}
.iaa-hero-inner { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: center; gap: 60px; }
.iaa-hero-copy { min-width: 0; }
.iaa-hero .eyebrow { color: #e4d6ef; }
.iaa-hero .eyebrow::before { background: #d9bbf1; }
.iaa-hero h1 { max-width: 680px; color: #fff; }
.iaa-accent { color: #e1c8f4; }
.iaa-hero .iaa-name-accent { color: #e99ddd; }
.iaa-hero-copy > p { max-width: 530px; margin-top: 24px; color: #eee6f5; font-size: 16px; line-height: 1.85; }
.iaa-hero-copy > .iaa-hero-status { margin-top: 20px; color: #e1c8f4; font-family: var(--heading); font-size: 12px; }
.iaa-hero .hero-actions { flex-wrap: wrap; }
.iaa-hero .button { background: #e3cef5; border-color: #e3cef5; color: #332241; }
.iaa-hero .button:hover { background: #f4e8ff; border-color: #f4e8ff; }
.iaa-hero .text-link { color: #f3eafb; }
.iaa-hero .text-link:hover { color: #fff; }
.iaa-hero-visual { width: min(100%, 500px); min-width: 0; justify-self: end; }
.iaa-hero-halo { display: block; width: 100%; max-width: 500px; height: auto; mix-blend-mode: screen; }
.iaa-brand-stage { position: relative; display: grid; place-items: center; justify-self: end; width: min(100%, 420px); aspect-ratio: 1; }
.iaa-halo { position: absolute; width: 93%; aspect-ratio: 1; border: 1px solid #dbc2f247; border-top-color: #e4d1f7b3; border-right-color: #bc95e57a; border-radius: 50%; transform: rotate(-35deg); }
.iaa-halo-inner { width: 73%; border-color: #e7d7f344; border-bottom-color: #dac1f78a; transform: rotate(25deg); }
.iaa-brand-disc { position: relative; z-index: 1; display: grid; place-items: center; width: 47%; aspect-ratio: 1; border: 1px solid #efe5f7; border-radius: 50%; background: #fff; box-shadow: 0 0 70px #d3aef31f; }
.iaa-brand-disc img { width: 78%; height: auto; }
.iaa-brand-caption { position: absolute; bottom: 0; display: flex; flex-direction: column; align-items: center; gap: 5px; color: #efe3f9; }
.iaa-brand-caption strong { font-family: 'Lato', Arial, sans-serif; font-size: 32px; font-weight: 300; letter-spacing: .12em; }
.iaa-brand-caption span { font-size: 8px; letter-spacing: .17em; }
.iaa-intro-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 65px; }
.iaa-intro h2 { max-width: 570px; }
.iaa-intro-copy p { font-size: 14px; line-height: 1.95; margin-bottom: 18px; }
.iaa-intro-copy .iaa-intro-note { padding-left: 18px; border-left: 2px solid #b298ca; margin-bottom: 0; color: #655073; font-size: 12px; }
.iaa-workflow-section { background: #faf8fc; border-top: 1px solid #e9e1ef; border-bottom: 1px solid #e9e1ef; }
.iaa-workflow-inner { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 70px; align-items: start; }
.iaa-workflow-heading { min-width: 0; }
.iaa-workflow-heading > p { max-width: 350px; margin-top: 22px; color: #736679; font-size: 14px; line-height: 1.9; }
.iaa-workflows { list-style: none; padding: 0; margin: 0; }
.iaa-workflows li { display: flex; align-items: flex-start; gap: 22px; padding: 23px 0; border-top: 1px solid #ded2e8; }
.iaa-workflows li:first-child { padding-top: 0; border-top: 0; }
.iaa-workflow-number { flex-shrink: 0; padding-top: 3px; color: #9274af; font-family: var(--heading); font-size: 11px; }
.iaa-workflows h3 { margin-bottom: 9px; font-size: 21px; line-height: 1.4; }
.iaa-workflows p { font-size: 13px; line-height: 1.85; }
.iaa-invitation-inner { display: flex; justify-content: space-between; align-items: center; gap: 50px; }
.iaa-invitation-inner > div:first-child { max-width: 650px; }
.iaa-invitation h2 { margin-bottom: 20px; }
.iaa-invitation p { max-width: 570px; font-size: 14px; line-height: 1.9; }
.iaa-invitation-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; flex-shrink: 0; }
@media (max-width: 1000px) {
  .iaa-hero-inner { gap: 30px; }
  .iaa-intro-inner, .iaa-workflow-inner { gap: 38px; }
  .iaa-invitation-inner { gap: 32px; }
  .iaa-invitation-actions .button { padding: 14px 18px; font-size: 12px; }
}
@media (max-width: 800px) {
  .iaa-hero-inner, .iaa-intro-inner, .iaa-workflow-inner { grid-template-columns: minmax(0, 1fr); gap: 35px; }
  .iaa-hero-visual { justify-self: center; width: min(100%, 360px); }
  .iaa-brand-stage { justify-self: center; width: min(100%, 320px); }
  .iaa-intro h2 { max-width: 650px; }
  .iaa-workflow-heading > p { max-width: 550px; }
  .iaa-invitation-inner { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 560px) {
  .iaa-hero-copy > p { font-size: 14px; }
  .iaa-hero .hero-actions { gap: 20px; }
  .iaa-hero-visual { width: min(100%, 300px); }
  .iaa-brand-stage { width: min(100%, 270px); }
  .iaa-brand-caption strong { font-size: 26px; }
  .iaa-brand-caption span { font-size: 7px; }
  .iaa-workflows li { gap: 17px; }
  .iaa-workflows h3 { font-size: 19px; }
}

/* Owner-confirmed Halo activation, learning and closing-day workflows. */
.halo-how-section { border-bottom: 1px solid #e9e1ef; }
.halo-how-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 70px; align-items: start; }
.halo-how-heading { min-width: 0; }
.halo-how-heading h2 { max-width: 550px; }
.halo-how-heading > p { max-width: 380px; margin-top: 22px; color: #736679; font-size: 14px; line-height: 1.9; }
.halo-how-steps { list-style: none; padding: 0; margin: 0; }
.halo-how-steps li { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 18px; padding: 24px 0; border-top: 1px solid #e3d8eb; }
.halo-how-steps li:first-child { padding-top: 0; border-top: 0; }
.halo-how-steps li > div { min-width: 0; }
.halo-how-number { padding-top: 4px; color: #745388; font-family: var(--heading); font-size: 11px; }
.halo-how-steps h3 { margin-bottom: 10px; font-size: 22px; line-height: 1.4; }
.halo-how-steps p { color: #736679; font-size: 14px; line-height: 1.9; }
.halo-how-steps .halo-how-phrases { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 12px; margin: 10px 0 12px; }
.halo-how-phrases q { color: #963570; font-family: var(--heading); font-size: 22px; line-height: 1.45; }
.halo-how-phrases span { color: #79677f; font-size: 11px; }
.halo-how-examples { margin-top: 40px; padding-top: 30px; border-top: 1px solid #e3d8eb; }
.halo-how-examples > h3 { margin-bottom: 25px; font-size: 26px; line-height: 1.4; }
.halo-how-example-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; list-style: none; padding: 0; margin: 0; }
.halo-how-example-list li { min-width: 0; padding-left: 18px; border-left: 2px solid #b799cb; }
.halo-how-example-list h4 { margin-bottom: 10px; font-family: var(--heading); font-size: 18px; line-height: 1.5; }
.halo-how-example-list p { color: #736679; font-size: 13px; line-height: 1.85; }
@media (max-width: 1000px) {
  .halo-how-layout { gap: 38px; }
  .halo-how-example-list { gap: 22px; }
}
@media (max-width: 800px) {
  .halo-how-layout { grid-template-columns: minmax(0, 1fr); gap: 35px; }
  .halo-how-heading > p { max-width: 550px; }
  .halo-how-example-list { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 560px) {
  .halo-how-steps li { grid-template-columns: 24px minmax(0, 1fr); gap: 14px; }
  .halo-how-steps h3 { font-size: 20px; }
  .halo-how-phrases q { font-size: 20px; }
  .halo-how-examples > h3 { font-size: 23px; }
}

/* Existing-member upgrade disclosure; no changes to the original invitation. */
.halo-member-upgrade { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-top: 36px; padding: 26px 30px; border: 1px solid #e3d8eb; border-left: 3px solid #b799cb; border-radius: 14px; background: #faf7fc; }
.halo-member-upgrade-copy { min-width: 0; max-width: 750px; }
.halo-member-upgrade h3 { margin-bottom: 10px; font-family: var(--heading); font-size: 22px; line-height: 1.4; }
.halo-member-upgrade p { color: #736679; font-size: 14px; line-height: 1.85; }
.halo-member-upgrade .text-link { flex-shrink: 0; color: #7053a3; white-space: normal; }
.halo-member-upgrade .text-link:hover { color: #503674; }
.halo-member-upgrade .text-link:focus-visible { outline: 2px solid #963570; outline-offset: 5px; border-radius: 4px; }
@media (max-width: 800px) {
  .halo-member-upgrade { flex-direction: column; align-items: flex-start; gap: 22px; padding: 22px 20px; }
}
@media (max-width: 560px) {
  .halo-member-upgrade h3 { font-size: 20px; }
}

/* Decorative task icons echo the homepage toolkit tiles without changing the grid. */
.halo-how-example-icon-wrap { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin-bottom: 14px; border-radius: 10px; background: #f2edf8; color: #7861ad; }
.halo-how-example-icon { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.halo-how-example-icon-wrap + h4 { margin-top: 0; }

/* Owner-provided hands-free/team-voice screenshot; palette matches the black IRIS Radar section. */
.halo-command-section {
  background: #000000;
  color: #ffffff;
}
.halo-command-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 60px;
}
.halo-command-copy { min-width: 0; }
.halo-command-section .eyebrow { color: #d7b7ff; }
.halo-command-section .eyebrow::before { background: #d7b7ff; }
.halo-command-section h2 { margin-bottom: 18px; color: #ffffff; }
.halo-command-section .halo-command-name { color: #e99ddd; }
.halo-command-section .halo-command-lead {
  margin: 0 0 22px;
  color: #d7b7ff;
  font-family: var(--heading);
  font-size: 24px;
  line-height: 1.4;
}
.halo-command-copy > p:not(.halo-command-lead) {
  margin: 0 0 18px;
  color: #d8cfe0;
  font-size: 14px;
  line-height: 1.95;
}
.halo-command-copy h3 {
  margin: 26px 0 12px;
  color: #ffffff;
  font-family: var(--heading);
  font-size: 21px;
  line-height: 1.4;
}
.halo-command-copy > p:last-child { margin-bottom: 0; }
.halo-command-stage {
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid #382944;
  border-radius: 20px;
  background: #08060c;
}
.halo-command-stage > a { display: block; }
.halo-command-stage img {
  display: block;
  width: 100%;
  max-width: 832px;
  height: auto;
  object-fit: contain;
}
.halo-command-stage figcaption {
  margin-top: 12px;
  color: #d8cfe0;
  font-size: 11px;
  line-height: 1.7;
  text-align: right;
}
.halo-command-section a { color: #d7b7ff; }
.halo-command-section a:hover { color: #ffffff; }
.halo-command-section a:focus-visible {
  outline: 2px solid #e99ddd;
  outline-offset: 4px;
  border-radius: 4px;
}
@media (max-width: 1000px) {
  .halo-command-layout { gap: 38px; }
}
@media (max-width: 800px) {
  .halo-command-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .halo-command-stage { width: min(100%, 560px); justify-self: center; }
}
@media (max-width: 560px) {
  .halo-command-stage { padding: 9px; }
  .halo-command-section .halo-command-lead { font-size: 22px; }
}

/* Dedicated single-image Halo viewer, matching the standalone site lightboxes. */
.halo-lightbox {
  box-sizing: border-box;
  width: min(980px, calc(100vw - 36px));
  max-width: calc(100vw - 36px);
  max-height: calc(100vh - 36px);
  max-height: calc(100dvh - 36px);
  margin: auto;
  padding: 24px;
  overflow: auto;
  border: 1px solid #d8c9e6;
  border-radius: 20px;
  background: #f7f3fb;
  color: #171322;
  box-shadow: 0 24px 64px #17132259;
}
.halo-lightbox::backdrop { background: #171322d9; }
.halo-lightbox-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; margin-bottom: 18px; }
.halo-lightbox-heading h2 { flex: 1 1 300px; margin: 0; font-size: 18px; line-height: 1.35; }
.halo-lightbox-close { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 10px 14px; border: 1px solid #bda9d1; border-radius: 999px; background: #fff; color: var(--purple-dark, #3f2854); font: inherit; font-size: 12px; font-weight: 600; line-height: 1.2; cursor: pointer; }
.halo-lightbox-image { display: block; width: auto; height: auto; max-width: 100%; max-height: max(80px, calc(100vh - 200px)); max-height: max(80px, calc(100dvh - 200px)); margin: 0 auto; object-fit: contain; }
.halo-lightbox-original { display: inline-block; margin-top: 16px; color: var(--purple, #76518e); font-size: 11px; font-weight: 600; line-height: 1.5; }
.halo-lightbox-close:focus-visible, .halo-lightbox-original:focus-visible { outline: 3px solid var(--purple, #76518e); outline-offset: 4px; }
body.halo-lightbox-open { overflow: hidden; }
@media (max-width: 560px) {
  .halo-lightbox { width: min(980px, calc(100vw - 24px)); max-width: calc(100vw - 24px); padding: 16px; border-radius: 14px; }
  .halo-lightbox-heading { gap: 10px 14px; margin-bottom: 14px; }
  .halo-lightbox-heading h2 { flex-basis: 220px; font-size: 16px; }
  .halo-lightbox-image { max-height: max(80px, calc(100vh - 172px)); max-height: max(80px, calc(100dvh - 172px)); }
}

/* Match the approved IRIS Radar title; preserve existing size, spacing and colors. */
#halo-command-title {
  font-family: 'Lato', Arial, sans-serif;
  font-weight: 300;
}
