/* Stage 6 — editorial hero headline and primary call to action */
.hero-copy {
  position: absolute;
  z-index: 6;
  top: clamp(7.8rem, 14.5vh, 10.5rem);
  left: 50%;
  display: flex;
  width: min(47rem, calc(100% - 28rem));
  flex-direction: column;
  align-items: center;
  text-align: center;
  transform: translateX(-50%);
  text-shadow: 0 2px 22px rgb(0 19 43 / 26%);
}
.hero-copy__eyebrow {
  margin: 0 0 .72rem;
  color: #b8eaff;
  font-size: clamp(.58rem, .78vw, .75rem);
  font-weight: 700;
  letter-spacing: .28em;
  line-height: 1.5;
  text-transform: uppercase;
}
.hero-copy__title {
  margin: 0;
  color: #f8fcff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.7rem, 4.5vw, 4.65rem);
  font-weight: 500;
  letter-spacing: -.045em;
  line-height: .98;
  text-wrap: balance;
  text-shadow: 0 3px 24px rgb(1 32 65 / 35%), 0 0 26px rgb(163 231 255 / 16%);
}
.hero-copy__title span { color: #eaf7ff; }
.hero-copy__countries {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(.65rem, 1.5vw, 1.3rem);
  margin: .85rem 0 .7rem;
  color: #f5fbff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.05rem, 1.65vw, 1.48rem);
  font-style: italic;
  line-height: 1.3;
}
.hero-copy__separator { color: var(--color-cyan); font-family: ui-sans-serif, system-ui, sans-serif; font-size: .9em; font-style: normal; }
.hero-copy__description {
  max-width: 27rem;
  margin: 0;
  color: #e5f4ff;
  font-size: clamp(.78rem, .92vw, .91rem);
  line-height: 1.55;
  text-wrap: balance;
}
.hero-cta {
  display: inline-flex;
  min-width: 12.2rem;
  min-height: 3.15rem;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 1.25rem;
  padding: .72rem 1.15rem .72rem 1.4rem;
  border: 1px solid rgb(101 224 255 / 78%);
  border-radius: 999px;
  color: #f8fcff;
  background: linear-gradient(110deg, rgb(0 76 131 / 88%), rgb(17 146 202 / 78%), rgb(10 82 139 / 83%));
  box-shadow: 0 0 0 1px rgb(255 255 255 / 8%) inset, 0 0 24px rgb(49 190 255 / 28%), 0 10px 28px rgb(0 21 48 / 20%);
  font-size: .85rem;
  font-weight: 700;
  text-decoration: none;
  transition: transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out);
  -webkit-backdrop-filter: blur(12px) saturate(140%);
  backdrop-filter: blur(12px) saturate(140%);
}
.hero-cta:hover {
  transform: translateY(-2px);
  border-color: #d0f7ff;
  background: linear-gradient(110deg, rgb(0 93 152 / 94%), rgb(34 176 225 / 88%), rgb(13 99 160 / 92%));
  box-shadow: 0 0 0 1px rgb(255 255 255 / 13%) inset, 0 0 32px rgb(49 190 255 / 42%), 0 14px 30px rgb(0 21 48 / 25%);
}
.hero-cta:active { transform: translateY(0); }
.hero-cta__arrow { display: grid; width: 1.5rem; height: 1.5rem; place-items: center; border: 1px solid rgb(192 242 255 / 43%); border-radius: 50%; color: #fff; font-size: 1rem; line-height: 1; transition: transform var(--motion-fast) var(--ease-out); }
.hero-cta:hover .hero-cta__arrow { transform: translateX(3px); }
.hero-cta:focus-visible { outline: 3px solid #dcf7ff; outline-offset: 4px; }

@media (max-width: 1150px) {
  .hero-copy { width: min(42rem, calc(100% - 24rem)); top: clamp(8.4rem, 17vh, 10.2rem); }
  .hero-copy__title { font-size: clamp(2.65rem, 5vw, 4rem); }
}
@media (max-width: 760px) {
  .hero-copy { top: clamp(8.6rem, 18vh, 10.4rem); width: calc(100% - 2rem); max-width: 34rem; }
  .hero-copy__eyebrow { max-width: 24rem; margin-bottom: .55rem; font-size: .58rem; letter-spacing: .19em; }
  .hero-copy__title { font-size: clamp(2.45rem, 8.8vw, 3.7rem); line-height: .99; }
  .hero-copy__countries { gap: .7rem; margin: .7rem 0 .55rem; font-size: clamp(1rem, 4.1vw, 1.3rem); }
  .hero-copy__description { max-width: 24rem; font-size: .78rem; }
  .hero-cta { min-height: 2.9rem; margin-top: 1rem; }
}
@media (max-width: 430px) {
  .hero-copy { top: 8.65rem; width: calc(100% - 1.5rem); }
  .hero-copy__title { font-size: clamp(2.25rem, 9.6vw, 2.8rem); }
  .hero-copy__countries { font-size: 1rem; }
  .hero-copy__description { max-width: 21rem; font-size: .73rem; }
  .hero-cta { min-height: 2.75rem; margin-top: .85rem; font-size: .79rem; }
}
@media (max-height: 720px) and (min-width: 761px) {
  .hero-copy { top: 7.2rem; }
  .hero-copy__eyebrow { margin-bottom: .35rem; }
  .hero-copy__countries { margin-block: .5rem; }
  .hero-copy__description { max-width: 25rem; }
  .hero-cta { min-height: 2.8rem; margin-top: .8rem; }
}
