/* Premium member card: isolated from the legacy member-hub profile styles. */
.hub-member-card-section{
  width:min(100%,480px);
  margin-inline:auto;
}

.hub-member-overview{
  display:grid;
  gap:24px;
  margin-bottom:52px;
}

.hub-member-overview .hub-journey-preview{
  min-width:0;
  margin:0;
}

.hub-member-overview .hub-journey-preview--loading{
  min-height:330px;
}

.hub-member-card{
  --hub-card-rotate-x:0deg;
  --hub-card-rotate-y:0deg;
  --hub-card-glow-x:50%;
  --hub-card-glow-y:50%;
  position:relative;
  width:100%;
  aspect-ratio:1.586 / 1;
  perspective:1200px;
  border-radius:26px;
  animation:hub-member-card-arrive .72s cubic-bezier(.2,.74,.22,1) both;
  isolation:isolate;
  container-type:inline-size;
  touch-action:pan-y;
}

.hub-member-card__surface{
  position:absolute;
  inset:0;
  overflow:hidden;
  border:0;
  border-radius:inherit;
  background:#aab2b6;
  box-shadow:
    0 32px 70px rgba(15,32,44,.18),
    0 10px 24px rgba(15,32,44,.12),
    0 1px 2px rgba(15,32,44,.2);
  color:#102a3a;
  transform:rotateX(var(--hub-card-rotate-x)) rotateY(var(--hub-card-rotate-y));
  transform-style:preserve-3d;
  transition:transform .42s cubic-bezier(.2,.75,.25,1),box-shadow .42s ease;
  will-change:transform;
}

.hub-member-card__artwork{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  border-radius:inherit;
  object-fit:cover;
  pointer-events:none;
}

.hub-member-card__surface::after{
  content:"";
  position:absolute;
  inset:-80% -45%;
  background:linear-gradient(106deg,transparent 43%,rgba(255,255,255,.42) 49%,rgba(255,255,255,.12) 52%,transparent 58%);
  transform:translateX(-34%) rotate(5deg);
  animation:hub-member-card-sheen 7.5s 1.1s ease-in-out infinite;
  pointer-events:none;
}

.hub-member-card.is-interacting .hub-member-card__surface{
  box-shadow:
    0 38px 80px rgba(15,32,44,.22),
    0 14px 30px rgba(15,32,44,.14),
    0 1px 2px rgba(15,32,44,.2);
  transition-duration:90ms;
}

.hub-member-card__glow{
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:radial-gradient(circle at var(--hub-card-glow-x) var(--hub-card-glow-y),rgba(255,255,255,.48),rgba(255,255,255,.08) 21%,transparent 47%);
  opacity:.52;
  pointer-events:none;
  transition:opacity .35s ease;
}

.hub-member-card.is-interacting .hub-member-card__glow{
  opacity:.86;
}

.hub-member-card__topline,
.hub-member-card__identity,
.hub-member-card__number,
.hub-member-card__microcopy{
  position:absolute;
  z-index:2;
  transform:translateZ(18px);
}

.hub-member-card__topline{
  top:11%;
  left:8%;
  right:8%;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}

.hub-member-card__brand{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  color:#102a3a;
  font-size:clamp(9px,1.45vw,13px);
  font-weight:780;
  letter-spacing:.18em;
  line-height:1;
}

.hub-member-card__brand img{
  display:block;
  width:clamp(20px,3.3vw,29px);
  height:clamp(20px,3.3vw,29px);
  object-fit:contain;
  opacity:.9;
}

.hub-member-card__tier{
  padding-top:3px;
  color:rgba(248,250,250,.92);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(11px,1.7vw,15px);
  font-style:italic;
  letter-spacing:.055em;
  text-shadow:0 1px 7px rgba(6,19,28,.72);
  white-space:nowrap;
}

.hub-member-card__identity{
  left:8%;
  bottom:14%;
  display:flex;
  align-items:center;
  gap:clamp(12px,2.5vw,20px);
  max-width:59%;
  min-width:0;
}

.hub-member-card__avatar{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:clamp(48px,8.2vw,64px);
  height:clamp(48px,8.2vw,64px);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.74);
  border-radius:50%;
  background:rgba(229,234,235,.88);
  box-shadow:0 8px 20px rgba(3,17,27,.3),inset 0 0 0 3px rgba(255,255,255,.36);
  color:rgba(16,42,58,.58);
  outline:none;
}

.hub-member-card__avatar:focus-visible{
  box-shadow:0 0 0 3px #f7f9f8,0 0 0 6px #143a50,0 7px 16px rgba(18,38,51,.16);
}

.hub-member-card__avatar > .material-symbols-outlined{
  font-size:clamp(24px,4vw,32px) !important;
}

.hub-member-card__avatar .hub-avatar-img{
  border-radius:50%;
}

.hub-member-card__member-copy{
  min-width:0;
}

.hub-member-card__member-copy h1{
  overflow:hidden;
  margin:0 0 5px;
  color:#f8fbfb;
  font-size:clamp(16px,3.2vw,25px);
  font-weight:720;
  letter-spacing:.015em;
  line-height:1.12;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-shadow:0 2px 9px rgba(4,16,24,.72);
}

.hub-member-card__member-copy p{
  overflow:hidden;
  margin:0;
  color:rgba(242,247,248,.76);
  font-size:clamp(10px,1.75vw,13px);
  font-weight:520;
  letter-spacing:.055em;
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-shadow:0 1px 6px rgba(4,16,24,.74);
}

.hub-member-card__number{
  right:8%;
  bottom:16.5%;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:3px;
  color:rgba(244,248,249,.66);
  font-size:clamp(7px,1.05vw,9px);
  font-weight:700;
  letter-spacing:.2em;
  line-height:1;
  text-shadow:0 1px 6px rgba(4,16,24,.75);
}

.hub-member-card__number strong{
  color:#fff;
  font-family:"Inter",sans-serif;
  font-size:clamp(12px,2vw,16px);
  font-variant-numeric:tabular-nums;
  font-weight:600;
  letter-spacing:.1em;
}

.hub-member-card__microcopy{
  right:8%;
  bottom:7.5%;
  color:rgba(246,249,249,.58);
  font-size:clamp(5.5px,.82vw,7px);
  font-weight:700;
  letter-spacing:.13em;
  text-shadow:0 1px 5px rgba(4,16,24,.72);
}

.hub-member-card__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:38px;
  padding:14px 4px 0;
}

.hub-member-card__line-badge{
  min-width:0;
  color:rgba(27,28,28,.48);
  font-size:11px;
  font-weight:650;
}

.hub-member-card__line-badge span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.hub-member-card__edit{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-left:auto;
  padding:7px 2px;
  border:0;
  border-bottom:1px solid rgba(16,42,58,.28);
  border-radius:0;
  background:transparent;
  color:#102a3a;
  font:700 10px/1 "Inter",sans-serif;
  letter-spacing:.14em;
  text-decoration:none !important;
  text-transform:uppercase;
  transition:border-color .2s ease,color .2s ease,transform .2s ease;
}

.hub-member-card__edit .material-symbols-outlined{
  font-size:15px !important;
  transition:transform .2s ease;
}

.hub-member-card__edit:hover{
  border-color:#102a3a;
  color:#091f2d;
}

.hub-member-card__edit:hover .material-symbols-outlined{
  transform:translateX(2px);
}

.hub-member-card__edit:focus-visible{
  outline:2px solid #143a50;
  outline-offset:4px;
}

.hub-member-card__edit:active{
  transform:translateY(1px);
}

.hub-member-card-skeleton{
  position:relative;
  width:min(100%,480px);
  aspect-ratio:1.586 / 1;
  margin-inline:auto;
  overflow:hidden;
  border:1px solid rgba(27,28,28,.06);
  border-radius:26px;
  background:linear-gradient(145deg,#eef0f0,#dfe4e4 52%,#f1f3f2);
}

.hub-member-card-skeleton__top{
  position:absolute;
  top:11%;
  left:8%;
  right:8%;
  display:flex;
  justify-content:space-between;
  gap:24px;
}

.hub-member-card-skeleton .skeleton{
  border-radius:999px;
}

.hub-member-card-skeleton__brand{width:31%;height:18px}
.hub-member-card-skeleton__tier{width:21%;height:14px}
.hub-member-card-skeleton__identity{
  position:absolute;
  left:8%;
  bottom:14%;
  display:flex;
  align-items:center;
  gap:18px;
  width:55%;
}
.hub-member-card-skeleton__avatar{width:64px;height:64px;flex:0 0 auto}
.hub-member-card-skeleton__copy{display:grid;gap:9px;width:65%}
.hub-member-card-skeleton__copy .skeleton:first-child{height:18px;width:82%}
.hub-member-card-skeleton__copy .skeleton:last-child{height:11px;width:100%}

@keyframes hub-member-card-arrive{
  from{opacity:0;transform:translateY(14px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

@keyframes hub-member-card-sheen{
  0%,62%{transform:translateX(-34%) rotate(5deg);opacity:0}
  72%{opacity:.55}
  84%,100%{transform:translateX(34%) rotate(5deg);opacity:0}
}

@media (min-width:1100px){
  .hub-member-overview{
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    gap:clamp(24px,2.5vw,34px);
    align-items:start;
  }

  .hub-member-overview .hub-member-card-section{
    width:100%;
    margin:0;
  }

  .hub-member-overview .hub-overview-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:auto;
  }

  .hub-member-overview .hub-journey-card{
    grid-column:1 / -1;
    grid-row:auto;
  }
}

@container (max-width:440px){
  .hub-member-card__topline{left:7.5%;right:7.5%;gap:8px}
  .hub-member-card__brand{gap:6px;font-size:9px;letter-spacing:.12em}
  .hub-member-card__brand img{width:20px;height:20px}
  .hub-member-card__tier{padding-top:2px;font-size:10.5px;letter-spacing:.035em}
  .hub-member-card__identity{left:7.5%;gap:11px}
  .hub-member-card__avatar{width:52px;height:52px}
  .hub-member-card__member-copy h1{font-size:20px}
  .hub-member-card__member-copy p{font-size:10.5px}
  .hub-member-card__number{right:7.5%;font-size:7px}
  .hub-member-card__number strong{font-size:13.5px;letter-spacing:.08em}
  .hub-member-card__microcopy{right:7.5%;font-size:5.5px}
}

@media (max-width:640px){
  .hub-member-overview{gap:18px;margin-bottom:34px}
  .hub-member-card-section{width:100%}
  .hub-member-card,.hub-member-card-skeleton{border-radius:20px}
  .hub-member-card__topline{top:11%;left:7.5%;right:7.5%}
  .hub-member-card__brand{gap:6px;letter-spacing:.12em}
  .hub-member-card__identity{left:7.5%;bottom:14%;max-width:61%;gap:10px}
  .hub-member-card__number{right:7.5%;bottom:17%}
  .hub-member-card__microcopy{right:7.5%;bottom:7.5%;letter-spacing:.08em}
  .hub-member-card__toolbar{padding-top:11px}
  .hub-member-card-skeleton__avatar{width:48px;height:48px}
}

@media (max-width:1099px){
  .hub-member-overview .hub-journey-preview--loading{min-height:410px}
}

@media (max-width:359px){
  .hub-member-card__brand span{max-width:105px;overflow:hidden;text-overflow:ellipsis}
  .hub-member-card__tier{font-size:10px}
  .hub-member-card__identity{max-width:62%}
  .hub-member-card__microcopy{display:none}
  .hub-member-card__toolbar{align-items:flex-start}
  .hub-member-card__line-badge{font-size:10px}
}

@media (prefers-reduced-motion:reduce){
  .hub-member-card{animation:none}
  .hub-member-card__surface{transform:none !important;transition:none}
  .hub-member-card__surface::after{animation:none;display:none}
  .hub-member-card__glow{display:none}
  .hub-member-card__edit,.hub-member-card__edit .material-symbols-outlined{transition:none}
}
