/*
 * PromptMyImage Theme 1.6.1 — institutional hero transparency hotfix
 * About, Contact, Privacy Policy and Terms of Service.
 */

.pmi-institutional-page {
  --pmi-institutional-ink: #0b1733;
  --pmi-institutional-copy: #53627b;
  --pmi-institutional-soft: #f6f8fc;
  --pmi-institutional-line: rgba(15, 23, 42, .09);
  --pmi-institutional-blue: #3275ff;
  --pmi-institutional-purple: #7653f6;
  --pmi-institutional-pink: #db35b1;
  position: relative;
  overflow: clip;
  padding: clamp(34px, 5vw, 76px) 0 clamp(72px, 9vw, 128px);
  background:
    radial-gradient(circle at 7% 4%, rgba(50, 117, 255, .10), transparent 27%),
    radial-gradient(circle at 94% 9%, rgba(219, 53, 177, .08), transparent 25%),
    linear-gradient(180deg, #fbfdff 0%, #f7f9fd 42%, #ffffff 100%);
  color: var(--pmi-institutional-ink);
}

.pmi-institutional-page::before,
.pmi-institutional-page::after {
  position: absolute;
  z-index: 0;
  border-radius: 999px;
  pointer-events: none;
  content: "";
}

.pmi-institutional-page::before {
  top: 170px;
  left: -190px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(87, 103, 239, .08);
}

.pmi-institutional-page::after {
  top: 70px;
  right: -150px;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(116, 83, 246, .07), transparent 68%);
}

.pmi-institutional-page .pmi-managed-template__inner {
  position: relative;
  z-index: 1;
  width: min(1240px, calc(100% - 48px));
  margin-inline: auto;
}

.pmi-institutional-article,
.pmi-institutional-content,
.pmi-institutional-content > * {
  min-width: 0;
}

.pmi-institutional-breadcrumb {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 22px;
  color: #7b879d;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.5;
}

.pmi-institutional-breadcrumb a {
  color: #4f5e78;
  text-decoration: none;
  transition: color .18s ease;
}

.pmi-institutional-breadcrumb a:hover {
  color: var(--pmi-institutional-blue);
}

.pmi-institutional-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin-bottom: clamp(28px, 4vw, 48px);
  padding: clamp(32px, 5vw, 64px);
  border: 1px solid rgba(96, 111, 178, .13);
  border-radius: 34px;
  background:
    radial-gradient(circle at 0% 0%, rgba(71, 145, 255, .16), transparent 36%),
    radial-gradient(circle at 100% 10%, rgba(224, 54, 177, .13), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(249,250,255,.94));
  box-shadow: 0 28px 85px rgba(28, 43, 86, .08);
}

.pmi-institutional-hero::before {
  position: absolute;
  z-index: -1;
  top: -95px;
  right: 6%;
  width: 240px;
  height: 240px;
  border: 1px solid rgba(98, 77, 238, .12);
  border-radius: 50%;
  box-shadow:
    0 0 0 38px rgba(98, 77, 238, .035),
    0 0 0 80px rgba(50, 117, 255, .025);
  content: "";
}

.pmi-institutional-hero__content {
  max-width: 900px;
}

.pmi-institutional-page .pmi-institutional-hero__content > .pmi-page-hero,
.pmi-institutional-page .pmi-page-hero {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

.pmi-institutional-page .pmi-page-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin: 0 0 18px;
  padding: 7px 12px;
  border: 1px solid rgba(86, 87, 231, .12);
  border-radius: 999px;
  background: rgba(239, 239, 255, .88) !important;
  color: #5e4bd8 !important;
  font-size: 12px !important;
  font-weight: 850;
  letter-spacing: .09em;
  line-height: 1.35;
  text-transform: uppercase;
}

.pmi-institutional-page .pmi-page-hero h1 {
  max-width: 880px;
  margin: 0;
  color: var(--pmi-institutional-ink);
  font-size: clamp(42px, 5.4vw, 72px);
  font-weight: 800;
  letter-spacing: -.058em;
  line-height: .99;
  text-wrap: balance;
}

.pmi-institutional-page .pmi-page-hero p:last-child {
  max-width: 780px;
  margin: 20px 0 0;
  color: #53617a;
  font-size: clamp(16px, 1.7vw, 19px);
  line-height: 1.72;
}

.pmi-institutional-signals {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 34px;
}

.pmi-institutional-signal {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 58px;
  padding: 12px 14px;
  border: 1px solid rgba(15, 23, 42, .075);
  border-radius: 16px;
  background: rgba(255, 255, 255, .72);
  color: #34425e;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.4;
  backdrop-filter: blur(8px);
}

.pmi-institutional-signal__icon,
.pmi-institutional-side-card__icon,
.pmi-institutional-note-card__icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  border-radius: 11px;
  background: linear-gradient(135deg, #edf3ff, #f4edff);
  color: #5c58df;
}

.pmi-institutional-icon,
.pmi-institutional-signal .pmi-icon,
.pmi-institutional-side-card .pmi-icon,
.pmi-institutional-note-card .pmi-icon,
.pmi-institutional-help-link .pmi-icon,
.pmi-policy-nav-card .pmi-icon {
  width: 19px;
  height: 19px;
}

.pmi-institutional-icon .pmi-icon-svg,
.pmi-institutional-signal .pmi-icon-svg,
.pmi-institutional-side-card .pmi-icon-svg,
.pmi-institutional-note-card .pmi-icon-svg,
.pmi-institutional-help-link .pmi-icon-svg,
.pmi-policy-nav-card .pmi-icon-svg {
  display: block;
  width: 100%;
  height: 100%;
}

.pmi-institutional-layout {
  display: grid;
  grid-template-areas: "main sidebar";
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: clamp(22px, 3vw, 34px);
  align-items: start;
}

.pmi-institutional-layout.is-legal {
  grid-template-areas: "sidebar main";
  grid-template-columns: minmax(250px, 292px) minmax(0, 1fr);
}

.pmi-institutional-main {
  grid-area: main;
}

.pmi-institutional-sidebar {
  display: grid;
  grid-area: sidebar;
  gap: 18px;
}

.pmi-institutional-content > .pmi-seo-content,
.pmi-institutional-content > .pmi-legal-content {
  max-width: none;
  margin: 0;
  padding: clamp(28px, 4vw, 46px);
  border: 1px solid var(--pmi-institutional-line) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, .94) !important;
  box-shadow: 0 22px 68px rgba(29, 43, 83, .065) !important;
}

.pmi-institutional-content > .pmi-seo-content h2,
.pmi-institutional-content > .pmi-legal-content h2 {
  margin: 0 0 16px;
  color: var(--pmi-institutional-ink);
  font-size: clamp(28px, 3vw, 42px);
  letter-spacing: -.04em;
  line-height: 1.08;
  text-wrap: balance;
}

.pmi-institutional-content > .pmi-seo-content h3,
.pmi-institutional-content > .pmi-legal-content h3 {
  color: #1a2945;
  font-size: 20px;
  line-height: 1.3;
}

.pmi-institutional-content p,
.pmi-institutional-content li {
  color: var(--pmi-institutional-copy);
  font-size: 15px;
  line-height: 1.78;
}

.pmi-institutional-content p:last-child {
  margin-bottom: 0;
}

.pmi-institutional-content strong {
  color: #26344f;
}

.pmi-institutional-content a:not(.pmi-page-button) {
  color: #365edc;
  font-weight: 700;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.pmi-institutional-content .pmi-page-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  margin: 8px 8px 0 0;
  padding: 0 19px;
  border: 1px solid transparent;
  border-radius: 14px;
  background: linear-gradient(135deg, #3479ff, #7653f6 58%, #d735b0);
  box-shadow: 0 14px 30px rgba(84, 78, 223, .18);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease;
}

.pmi-institutional-content .pmi-page-button + .pmi-page-button {
  border-color: rgba(15, 23, 42, .10);
  background: #f5f7fb;
  box-shadow: none;
  color: #2d3a55;
}

.pmi-institutional-content .pmi-page-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 17px 34px rgba(84, 78, 223, .23);
}

.pmi-institutional-content .pmi-page-button + .pmi-page-button:hover {
  border-color: rgba(75, 85, 180, .22);
  background: #eef1fa;
  box-shadow: none;
}

.pmi-institutional-side-card,
.pmi-institutional-note-card,
.pmi-policy-nav-card,
.pmi-institutional-help-link,
.pmi-institutional-mini-grid > div {
  border: 1px solid var(--pmi-institutional-line);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 18px 55px rgba(28, 43, 86, .055);
}

.pmi-institutional-side-card {
  padding: 26px;
  border-radius: 25px;
}

.pmi-institutional-side-card.is-accent {
  background:
    radial-gradient(circle at 100% 0%, rgba(224, 54, 177, .11), transparent 35%),
    radial-gradient(circle at 0% 100%, rgba(50, 117, 255, .11), transparent 38%),
    #ffffff;
}

.pmi-institutional-side-card.is-support {
  background:
    linear-gradient(180deg, rgba(245, 248, 255, .97), rgba(255,255,255,.98));
}

.pmi-institutional-side-card__icon {
  width: 42px;
  height: 42px;
  margin-bottom: 20px;
  border-radius: 14px;
}

.pmi-institutional-side-card__eyebrow {
  margin: 0 0 8px !important;
  color: #6252d8 !important;
  font-size: 12px !important;
  font-weight: 850;
  letter-spacing: .08em;
  line-height: 1.4 !important;
  text-transform: uppercase;
}

.pmi-institutional-side-card h2 {
  margin: 0 0 13px;
  color: var(--pmi-institutional-ink);
  font-size: 25px;
  letter-spacing: -.035em;
  line-height: 1.16;
}

.pmi-institutional-side-card p,
.pmi-institutional-side-card li {
  color: #5a6880;
  font-size: 13px;
  line-height: 1.65;
}

.pmi-institutional-side-card ul {
  display: grid;
  gap: 11px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.pmi-institutional-side-card li {
  position: relative;
  padding-left: 22px;
}

.pmi-institutional-side-card li::before {
  position: absolute;
  top: .52em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(135deg, #3479ff, #d735b0);
  box-shadow: 0 0 0 4px rgba(94, 81, 220, .07);
  content: "";
}

.pmi-institutional-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 45px;
  margin-top: 10px;
  padding: 0 16px;
  border-radius: 13px;
  background: #0d1934;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.pmi-institutional-mini-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.pmi-institutional-mini-grid > div {
  padding: 18px;
  border-radius: 18px;
}

.pmi-institutional-mini-grid strong,
.pmi-institutional-mini-grid span {
  display: block;
}

.pmi-institutional-mini-grid strong {
  margin-bottom: 5px;
  color: #1c2a46;
  font-size: 13px;
  line-height: 1.35;
}

.pmi-institutional-mini-grid span {
  color: #69758c;
  font-size: 12px;
  line-height: 1.55;
}

.pmi-institutional-help-link {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 18px;
  border-radius: 19px;
  color: inherit;
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease;
}

.pmi-institutional-help-link:hover {
  transform: translateY(-2px);
  border-color: rgba(72, 91, 195, .22);
}

.pmi-institutional-help-link > span:first-child {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  background: #fff4db;
  color: #b46b08;
}

.pmi-institutional-help-link strong,
.pmi-institutional-help-link small {
  display: block;
}

.pmi-institutional-help-link strong {
  color: #1b2944;
  font-size: 13px;
  line-height: 1.4;
}

.pmi-institutional-help-link small {
  margin-top: 3px;
  color: #6b7790;
  font-size: 12px;
  line-height: 1.5;
}

.pmi-institutional-help-link > span:last-child {
  color: #53617a;
  font-size: 18px;
}

/* Legal-page navigation and section cards. */
.pmi-policy-sidebar {
  position: sticky;
  top: 108px;
}

.pmi-policy-nav-card {
  overflow: hidden;
  border-radius: 22px;
}

.pmi-policy-nav-card__heading {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 18px 19px;
  border-bottom: 1px solid var(--pmi-institutional-line);
  color: #1c2944;
  font-size: 13px;
}

.pmi-policy-nav-card__heading > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background: #f0efff;
  color: #5d56db;
}

.pmi-policy-nav-card nav {
  display: grid;
  padding: 10px;
}

.pmi-policy-nav-card nav a {
  display: block;
  padding: 10px 11px;
  border-radius: 10px;
  color: #58657c;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
  text-decoration: none;
  transition: background .18s ease, color .18s ease;
}

.pmi-policy-nav-card nav a:hover,
.pmi-policy-nav-card nav a:focus-visible {
  background: #f2f4fb;
  color: #405ac3;
}

.pmi-institutional-note-card {
  padding: 20px;
  border-radius: 20px;
}

.pmi-institutional-note-card__icon {
  width: 38px;
  height: 38px;
  margin-bottom: 14px;
  background: #eaf8f0;
  color: #168755;
}

.pmi-institutional-note-card strong {
  display: block;
  color: #1c2944;
  font-size: 14px;
  line-height: 1.4;
}

.pmi-institutional-note-card p {
  margin: 7px 0 12px;
  color: #68758c;
  font-size: 12px;
  line-height: 1.6;
}

.pmi-institutional-note-card a {
  color: #405ac3;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.pmi-policy-sections {
  display: grid;
  gap: 16px;
}

.pmi-policy-section {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 18px;
  padding: clamp(24px, 3.5vw, 38px);
  scroll-margin-top: 112px;
  border: 1px solid var(--pmi-institutional-line);
  border-radius: 25px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 54px rgba(28, 43, 86, .05);
}

.pmi-policy-section__index {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(86, 87, 231, .10);
  border-radius: 15px;
  background: linear-gradient(135deg, #eef4ff, #f5edff);
  color: #6257d8;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .05em;
}

.pmi-policy-section__body h2 {
  margin: 2px 0 12px;
  color: var(--pmi-institutional-ink);
  font-size: clamp(23px, 2.3vw, 31px);
  letter-spacing: -.035em;
  line-height: 1.15;
  text-wrap: balance;
}

.pmi-policy-section__body p,
.pmi-policy-section__body li {
  max-width: 790px;
  color: var(--pmi-institutional-copy);
  font-size: 14px;
  line-height: 1.78;
}

.pmi-policy-section__body p:last-child {
  margin-bottom: 0;
}

.pmi-policy-section:target {
  border-color: rgba(72, 91, 195, .29);
  box-shadow: 0 20px 64px rgba(69, 76, 178, .10), 0 0 0 4px rgba(83, 91, 205, .05);
}

@media (max-width: 1020px) {
  .pmi-institutional-layout,
  .pmi-institutional-layout.is-legal {
    grid-template-areas:
      "sidebar"
      "main";
    grid-template-columns: minmax(0, 1fr);
  }

  .pmi-policy-sidebar {
    position: static;
  }

  .pmi-policy-nav-card nav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }

  .pmi-policy-nav-card nav a {
    flex: 0 1 auto;
    border: 1px solid rgba(15, 23, 42, .07);
    background: #f8f9fc;
  }

  .pmi-institutional-note-card {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0 14px;
    align-items: start;
  }

  .pmi-institutional-note-card__icon {
    grid-row: 1 / span 3;
    margin: 0;
  }

  .pmi-institutional-note-card p,
  .pmi-institutional-note-card a {
    grid-column: 2;
  }
}

@media (max-width: 760px) {
  .pmi-institutional-page {
    padding: 24px 0 72px;
  }

  .pmi-institutional-page .pmi-managed-template__inner {
    width: min(100% - 24px, 1240px);
  }

  .pmi-institutional-breadcrumb {
    margin-bottom: 16px;
  }

  .pmi-institutional-hero {
    padding: 27px 22px;
    border-radius: 25px;
  }

  .pmi-institutional-hero::before {
    top: -125px;
    right: -90px;
  }

  .pmi-institutional-page .pmi-page-hero h1 {
    font-size: clamp(37px, 11vw, 54px);
    line-height: 1.01;
  }

  .pmi-institutional-page .pmi-page-hero p:last-child {
    margin-top: 16px;
    font-size: 16px;
    line-height: 1.65;
  }

  .pmi-institutional-signals {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 24px;
  }

  .pmi-institutional-signal {
    min-height: 52px;
  }

  .pmi-institutional-content > .pmi-seo-content,
  .pmi-institutional-content > .pmi-legal-content,
  .pmi-institutional-side-card {
    padding: 23px;
    border-radius: 22px !important;
  }

  .pmi-institutional-mini-grid {
    grid-template-columns: 1fr;
  }

  .pmi-policy-nav-card__heading {
    padding: 15px 16px;
  }

  .pmi-policy-nav-card nav {
    display: grid;
  }

  .pmi-policy-nav-card nav a {
    width: 100%;
  }

  .pmi-policy-section {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 23px;
    border-radius: 22px;
  }

  .pmi-policy-section__index {
    width: 42px;
    height: 42px;
  }

  .pmi-institutional-content .pmi-page-button {
    width: 100%;
    margin-right: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pmi-institutional-content .pmi-page-button,
  .pmi-institutional-help-link,
  .pmi-institutional-breadcrumb a,
  .pmi-policy-nav-card nav a {
    transition: none;
  }
}

.pmi-policy-nav-card nav a.is-active,
.pmi-policy-nav-card nav a[aria-current="location"] {
  background: linear-gradient(135deg, #edf3ff, #f4efff);
  color: #4f55c7;
  font-weight: 800;
}
