.home-hero {
  position: relative;
  display: flex;
  align-items: flex-start;
  min-height: calc(100svh - var(--header-height, 72px));
  padding: clamp(42px, 6vh, 68px) clamp(20px, 2.5vw, 40px) 48px;
  overflow: visible;
  background:
    radial-gradient(circle at 76% 43%, rgba(225, 240, 255, .5), transparent 31%),
    linear-gradient(180deg, #fff 0%, #fdfefe 100%);
}

.home-hero-layout {
  width: 100%;
  max-width: 1800px !important;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
  gap: clamp(40px, 4vw, 76px) !important;
  align-items: center !important;
}

.home-hero-copy { padding-top: 0; }
.home-hero-copy h1 { max-width: 740px; font-size: clamp(42px, 3.7vw, 66px) !important; line-height: 1.07 !important; }
.home-hero-copy > p:first-of-type { max-width: 620px !important; font-size: clamp(17px, 1.08vw, 20px) !important; }
.home-hero-cta { justify-content: center; text-align: center; text-decoration: none; }
.home-hero-cta .material-symbols-rounded {
  font-size: 19px;
  line-height: 1;
  font-variation-settings: "FILL" 0, "wght" 650, "GRAD" 0, "opsz" 20;
}
.hero-pathway-visual { position: relative; min-width: 0; isolation: isolate; }
.hero-pathway-visual::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  width: 108%;
  height: 105%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: radial-gradient(ellipse closest-side, transparent 57%, rgba(41, 54, 66, .13) 72%, rgba(41, 54, 66, .06) 84%, transparent 100%);
  filter: blur(16px);
  pointer-events: none;
}
.hero-pathway-stage {
  position: relative;
  z-index: 1;
  width: 100%;
  height: clamp(680px, calc(100svh - var(--header-height, 72px)), 780px);
  overflow: visible;
  isolation: isolate;
}
.hero-pathway-stage::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(88%, 700px);
  height: 82%;
  transform: translate(-50%, -50%) rotate(-5deg);
  z-index: 0;
  border: 1px solid rgba(221, 214, 195, .88);
  border-radius: 38px;
  background: linear-gradient(140deg, rgba(247, 244, 236, .82), rgba(239, 234, 224, .42) 54%, rgba(227, 221, 204, .64));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .76),
    0 26px 60px rgba(65, 58, 42, .11);
  backdrop-filter: blur(10px);
  pointer-events: none;
}
.hero-pathway-stage::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(82%, 660px);
  height: 78%;
  transform: translate(-50%, -50%) rotate(5deg);
  z-index: 0;
  border: 1px solid rgba(227, 221, 204, .9);
  border-radius: 34px;
  background: linear-gradient(145deg, rgba(252, 250, 245, .62), rgba(239, 234, 224, .36));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .82);
  backdrop-filter: blur(7px);
  pointer-events: none;
}
.hero-pathway-orbits {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(108%, 840px);
  height: min(108%, 714px);
  transform: translate(-50%, -50%);
  display: none;
  overflow: visible;
  pointer-events: none;
}
.hero-pathway-orbit { fill: none; stroke-width: 1.3; }
.hero-pathway-orbit--outer { stroke: rgba(116, 151, 47, .26); }
.hero-pathway-orbit--middle { stroke: rgba(42, 110, 194, .3); }
.hero-pathway-orbit--inner { stroke: rgba(42, 110, 194, .17); }
.hero-pathway-card {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(84%, 650px);
  height: 620px;
  min-height: 440px;
  transform: translate(-50%, -50%);
  z-index: 2;
  display: grid;
  place-items: center;
  padding: 7px;
  border: 1px solid rgba(221, 214, 195, .9);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(252, 250, 245, .96), rgba(239, 234, 224, .88));
  box-shadow:
    0 24px 54px rgba(65, 58, 42, .14),
    0 52px 75px -42px rgba(35, 47, 59, .22),
    0 0 0 7px rgba(255, 255, 255, .42);
  overflow: hidden;
}
.hero-pathway-card iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 13px;
  background: transparent;
  overflow: hidden;
}

.hero-float {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  padding: 17px 18px;
  border: 1px solid #dae5f2;
  border-radius: 16px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 12px 30px rgba(15, 56, 105, .08);
  color: #213557;
  text-align: start;
  display: none;
}
.hero-float--intent { top: 50px; left: 0; width: 320px; box-shadow: 0 18px 42px rgba(127, 157, 51, .19), 0 6px 18px rgba(15, 56, 105, .05); }
.hero-float--occupation { top: 58px; right: 0; width: 280px; box-shadow: 0 18px 42px rgba(67, 126, 206, .2), 0 6px 18px rgba(15, 56, 105, .05); }
.hero-float__icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 37px;
  height: 37px;
  border-radius: 11px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
}
.hero-float__icon--intent { background: #eef5df; color: #58731a; }
.hero-float__icon--occupation { background: #eaf2ff; color: #0b3e91; }
.hero-float__label {
  display: block;
  margin: 2px 0 7px;
  color: #506c97;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .09em;
  line-height: 1.25;
  text-transform: uppercase;
}
.hero-float p { margin: 0; color: #233b60; font-size: 14px; font-weight: 700; line-height: 1.4; }
.hero-float strong { display: block; color: #193b70; font-size: 14px; font-weight: 800; line-height: 1.3; }
.hero-float small { display: block; margin-top: 5px; color: #73829b; font-size: 11px; font-weight: 650; }
.hero-float__sample { margin-inline-start: 4px; color: #778e2d; font-size: 9px; white-space: nowrap; }
.hero-float__visa {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-top: 1px solid #e9eef5;
}
.hero-float__visa span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 28px;
  border-radius: 8px;
  background: #edf4ff;
  color: #0b3e91;
  font-size: 10px;
  font-weight: 800;
}
.hero-float__visa strong { font-size: 12px; white-space: nowrap; }
html:not([lang^="en"]) .hero-float__visa strong { white-space: normal; }

@media (max-height: 730px) and (min-width: 961px) {
  .home-hero { padding-block: 30px; }
  .hero-pathway-stage { height: 680px; }
  .hero-pathway-card { height: 620px; }
  .hero-pathway-map { width: min(94%, 680px); }
  .hero-float--intent { top: 18px; }
  .hero-float--occupation { top: 28px; }
  .hero-float--visas { bottom: 15px; }
}
@media (min-width: 961px) and (max-width: 1240px) {
  .hero-float--intent { top: 18px; width: min(62%, 320px); }
  .hero-float--occupation { top: 130px; width: min(54%, 280px); }
  .hero-float--visas { width: min(64%, 320px); }
}
@media (max-width: 960px) {
  .home-hero { min-height: auto; align-items: stretch; padding-block: 42px 56px; }
  .home-hero-layout { grid-template-columns: minmax(0, 1fr) !important; max-width: 680px !important; gap: 28px !important; }
  .home-hero-copy { padding-top: 0; }
  .home-hero-copy h1 { font-size: clamp(33px, 5vw, 48px) !important; }
  .hero-pathway-stage { height: 660px; min-height: 0; }
  .hero-pathway-orbits { overflow: hidden; }
  .hero-pathway-card { width: min(88%, 620px); height: 620px; min-height: 0; }
  .hero-float--intent { width: min(53%, 290px); }
  .hero-float--occupation { width: min(47%, 240px); }
  .hero-float--visas { right: 8px; width: min(48%, 270px); }
}
@media (max-width: 720px) {
  .hero-pathway-stage { height: 660px; min-height: 0; }
  .hero-pathway-card { width: 92%; height: 620px; border-radius: 18px; }
  .hero-pathway-card iframe { border-radius: 11px; }
  .hero-pathway-map { width: 84%; }
  .hero-float--intent { top: 10px; width: min(53%, 290px); }
  .hero-float--occupation { top: 14px; width: min(43%, 240px); }
  .hero-float--visas { right: 5%; bottom: 9px; width: min(53%, 270px); }
}
@media (max-width: 540px) {
  .home-hero-actions { display: grid !important; grid-template-columns: 1fr; width: 100%; gap: 10px !important; }
  .home-hero-cta { display: inline-flex !important; width: 100%; min-height: 52px; align-items: center; }
  .hero-pathway-visual::before { width: 100%; height: 100%; opacity: .7; }
  .hero-pathway-stage { height: 620px; min-height: 620px; overflow: visible; }
  .hero-pathway-stage::before,
  .hero-pathway-stage::after { display: none; }
  .hero-pathway-card {
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: 16px;
    background: transparent;
    box-shadow: 0 18px 42px rgba(35, 47, 59, .12);
    overflow: hidden;
  }
  .hero-pathway-card iframe { border-radius: 16px; }
  .hero-pathway-map { width: 92%; }
  .hero-float { gap: 7px; padding: 11px 12px; border-radius: 15px; }
  .hero-float__icon { width: 27px; height: 27px; border-radius: 8px; font-size: 14px; }
  .hero-float__label { margin: 1px 0 5px; font-size: 8.5px; }
  .hero-float p, .hero-float strong { font-size: 11px; }
  .hero-float small { font-size: 9px; }
  .hero-float--intent { top: 10px; width: min(70%, 300px); }
  .hero-float--occupation { top: 105px; width: 54%; }
  .hero-float--visas { bottom: 8px; width: 53%; }
  .hero-float__sample { font-size: 8px; }
  .hero-float__visa { grid-template-columns: 27px minmax(0, 1fr); gap: 6px; padding: 6px 0; }
  .hero-float__visa span { width: 27px; height: 23px; font-size: 9px; }
  .hero-float__visa strong { font-size: 10.5px; }
}
@media (max-width: 365px) {
  .hero-pathway-stage { height: 620px; min-height: 620px; }
  .hero-float--intent { width: 78%; }
  .hero-float--occupation { top: 115px; width: 61%; }
  .hero-float--visas { right: 1%; width: 63%; }
}
