@import url(https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400;1,6..72,600&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,700;1,9..40,400&display=swap);
/* Ported 1:1 from 1001/Univest_V2_Internal Review.html (.hero + .mapcard); rem converted to px at 16px root. */
:where(.uninest-v2hero),
:where(.uninest-v2hero) * { box-sizing: border-box; margin: 0; padding: 0; }
.uninest-v2hero {
  position: relative; overflow: hidden; isolation: isolate;
  padding: 76px 0 0; scroll-margin-top: 70px;
  border-bottom: 1px solid #d8d3c2;
  background: var(--uninest-v2hero-bg);
  color: var(--uninest-v2hero-body);
  font-family: "DM Sans", system-ui, sans-serif;
  font-size: 17px; line-height: 1.62; text-align: left;
  -webkit-font-smoothing: antialiased;
}
:where(.uninest-v2hero) a { color: inherit; }
:where(.uninest-v2hero) img { max-width: 100%; display: block; }
.uninest-v2hero :focus-visible { outline: 2px solid #b08c1c; outline-offset: 2px; }

.uninest-v2hero__bg { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; }
.uninest-v2hero::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background:
    linear-gradient(180deg, rgba(247,245,238,0) 55%, rgba(247,245,238,.75) 100%),
    linear-gradient(100deg,
      rgba(247,245,238,.99) 0%,
      rgba(247,245,238,.975) 44%,
      rgba(247,245,238,.935) 70%,
      rgba(247,245,238,.885) 100%);
}

.uninest-v2hero__wrap { max-width: 1180px; margin: 0 auto; padding: 0 40px; }
.uninest-v2hero__grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 64px; align-items: start; }

.uninest-v2hero__title {
  margin-bottom: 28px;
  font-family: "Newsreader", Georgia, serif; font-weight: 600;
  font-size: clamp(40px, 5.3vw, var(--uninest-v2hero-heading-size));
  line-height: 1.06; letter-spacing: -.012em;
  color: var(--uninest-v2hero-heading);
}
.uninest-v2hero__title em { font-style: italic; font-weight: 600; }

.uninest-v2hero__lede { font-size: 17.92px; max-width: 52ch; margin-bottom: 1.1em; }

.uninest-v2hero__figures {
  margin: 34px 0 30px; padding: 22px 0;
  border-top: 1px solid #d8d3c2; border-bottom: 1px solid #d8d3c2;
  display: grid; grid-template-columns: 1fr 1fr; gap: 28px; max-width: 52ch;
}
.uninest-v2hero__amt {
  font-family: "Newsreader", serif; font-weight: 600; font-size: 33.6px; line-height: 1;
  color: var(--uninest-v2hero-heading); font-variant-numeric: tabular-nums;
}
.uninest-v2hero__cap { font-size: 13.6px; color: var(--uninest-v2hero-muted); margin-top: 8px; line-height: 1.45; }

.uninest-v2hero__ctas { display: flex; flex-wrap: wrap; gap: 14px; padding-bottom: 74px; }
.uninest-v2hero__btn {
  display: inline-block; padding: 15px 30px; font-size: 14.72px; font-weight: 500;
  text-decoration: none; border: 1px solid var(--uninest-v2hero-heading);
  transition: background .18s, color .18s;
}
.uninest-v2hero__btn--solid { background: var(--uninest-v2hero-heading); color: #f7f5ee; }
.uninest-v2hero__btn--solid:hover,
.uninest-v2hero__btn--solid:focus-visible { background: var(--uninest-v2hero-accent); border-color: var(--uninest-v2hero-accent); }
.uninest-v2hero__btn--line { color: var(--uninest-v2hero-heading); }
.uninest-v2hero__btn--line:hover,
.uninest-v2hero__btn--line:focus-visible { background: var(--uninest-v2hero-heading); color: #f7f5ee; }

/* map card */
.uninest-v2hero__mapcard {
  background: var(--uninest-v2hero-card); backdrop-filter: blur(4px);
  padding: 30px 30px 26px; border: 1px solid #d8d3c2;
}
.uninest-v2hero__maphead {
  font-family: "DM Sans", sans-serif; font-size: 18.4px; font-weight: 500; line-height: 1.14;
  color: var(--uninest-v2hero-heading); margin-bottom: 4px; letter-spacing: 0;
}
.uninest-v2hero__hint { font-size: 13.28px; color: var(--uninest-v2hero-muted); margin-bottom: 16px; }

.uninest-v2hero__aus { width: 100%; height: auto; display: block; }
.uninest-v2hero__landmass { fill: #e2ded0; }
.uninest-v2hero__pin { cursor: pointer; }
.uninest-v2hero__dot { fill: var(--uninest-v2hero-heading); transition: r .18s, fill .18s; }
.uninest-v2hero__halo { fill: none; stroke: #b08c1c; stroke-width: 9; opacity: 0; }
.uninest-v2hero__leader { stroke: #b3ac97; stroke-width: 6; fill: none; }
.uninest-v2hero__pin text { font-family: "DM Sans", sans-serif; font-size: 74px; fill: var(--uninest-v2hero-body); font-weight: 500; }
.uninest-v2hero__pin:hover .uninest-v2hero__dot,
.uninest-v2hero__pin:focus-visible .uninest-v2hero__dot,
.uninest-v2hero__pin[aria-pressed="true"] .uninest-v2hero__dot { fill: var(--uninest-v2hero-accent); r: 50; }
.uninest-v2hero__pin[aria-pressed="true"] .uninest-v2hero__halo { opacity: 1; }
.uninest-v2hero__pin:focus-visible { outline: 2px solid var(--uninest-v2hero-heading); outline-offset: 3px; }

.uninest-v2hero__readout { margin-top: 18px; border-top: 1px solid #d8d3c2; padding-top: 16px; min-height: 128px; }
.uninest-v2hero__fig { position: relative; overflow: hidden; margin: 0 0 16px; height: 150px; background: #e2ded0; }
.uninest-v2hero__fig img { width: 100%; height: 100%; object-fit: cover; }
.uninest-v2hero__fig::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,26,73,.20), rgba(0,26,73,.10)); }
.uninest-v2hero__fig-placeholder { display: grid; place-items: center; height: 100%; color: var(--uninest-v2hero-muted); font-size: 13px; }
.uninest-v2hero__city { font-family: "Newsreader", serif; font-weight: 600; font-size: 24px; color: var(--uninest-v2hero-heading); margin-bottom: 6px; }
.uninest-v2hero__unis { font-size: 14.72px; margin-bottom: 9px; }
.uninest-v2hero__note { font-size: 13.92px; color: var(--uninest-v2hero-muted); line-height: 1.5; }
.uninest-v2hero__textlink {
  display: inline-block; margin-top: 16px; padding-bottom: 2px;
  font-size: 14.88px; text-decoration: none;
  color: var(--uninest-v2hero-accent); border-bottom: 1px solid #b08c1c;
  transition: color .18s, border-color .18s;
}
.uninest-v2hero__textlink:hover,
.uninest-v2hero__textlink:focus-visible { color: var(--uninest-v2hero-heading); border-bottom-color: var(--uninest-v2hero-heading); }

@media (max-width: 940px) {
  .uninest-v2hero__grid { grid-template-columns: 1fr; gap: 44px; }
  .uninest-v2hero { padding-top: 48px; padding-bottom: 48px; }
  /* Stacked layout: the desktop 74px CTA spacer plus the grid gap left a large hole above the map card. */
  .uninest-v2hero__ctas { padding-bottom: 0; }
}
@media (max-width: 860px) {
  .uninest-v2hero::before { background: rgba(247,245,238,.955); }
}
/* Not in the source HTML: below ~460px its min-content grid column overflows and clips the copy. */
@media (max-width: 479px) {
  .uninest-v2hero__grid { grid-template-columns: minmax(0, 1fr); }
  .uninest-v2hero__wrap { padding: 0 22px; }
  .uninest-v2hero__figures { gap: 18px; }
  .uninest-v2hero__amt { font-size: 27px; }
  .uninest-v2hero__mapcard { padding: 24px 20px 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .uninest-v2hero * { transition: none; }
}

