:root{
  --bg:#070708;
  --card:#111114;
  --card-soft:#17171b;
  --ink:#f4f1eb;
  --muted:#a9a6a0;
  --gold:#d3a84b;
  --gold-2:#f0cf7d;
  --silver:#d7d7d7;
  --line:rgba(226,190,105,.19);
  --shadow:0 34px 90px rgba(0,0,0,.54),0 8px 28px rgba(0,0,0,.28);
}

*{box-sizing:border-box}
html,body{margin:0;min-height:100%}

body{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:18px 12px;
  color:var(--ink);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 12% 8%,rgba(211,168,75,.13),transparent 24rem),
    radial-gradient(circle at 92% 90%,rgba(255,255,255,.055),transparent 24rem),
    linear-gradient(145deg,#030304 0%,#0b0b0d 48%,#050506 100%);
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.22;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' seed='11' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.10'/%3E%3C/svg%3E");
}

.page-shell{width:min(100%,450px)}

.card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(219,184,99,.24);
  border-radius:30px;
  padding:24px 22px 18px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.005)),
    linear-gradient(150deg,#151518 0%,#0d0d10 62%,#111114 100%);
  box-shadow:var(--shadow);
}

.card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(120deg,transparent 0 38%,rgba(232,199,121,.035) 48%,transparent 58%),
    radial-gradient(circle at 50% -5%,rgba(241,207,125,.08),transparent 36%);
}

.gold-orbit{
  position:absolute;
  border:1px solid rgba(223,186,95,.18);
  border-radius:50%;
  pointer-events:none;
  z-index:-1;
}
.orbit-one{width:250px;height:250px;right:-165px;top:-110px}
.orbit-two{width:150px;height:150px;left:-105px;bottom:68px;border-color:rgba(216,216,216,.08)}

.brand-zone{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:96px;
  padding:2px 6px 17px;
  position:relative;
}

.brand-zone::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:2px;
  width:84px;
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
}

.logo{
  display:block;
  width:min(100%,340px);
  height:auto;
  filter:drop-shadow(0 10px 24px rgba(211,168,75,.10));
}

.identity{text-align:center;padding-top:11px}
.eyebrow{
  margin:0 0 8px;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--gold-2);
}

h1{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,8vw,2.75rem);
  font-weight:500;
  line-height:1.04;
  letter-spacing:-.025em;
  color:#f6f2e9;
}

.role{
  margin:8px 0 0;
  color:var(--silver);
  font-size:.92rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.primary-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:19px;
}

.action{
  min-height:47px;
  padding:0 10px;
  border:1px solid rgba(229,199,128,.16);
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-decoration:none;
  color:#ece9e3;
  font-size:.84rem;
  font-weight:650;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.action:hover{
  transform:translateY(-1px);
  border-color:rgba(232,199,121,.38);
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
}

.action-primary{
  color:#101012;
  border-color:rgba(246,218,151,.48);
  background:linear-gradient(135deg,#f0d58e 0%,#c89a39 52%,#f2d98f 100%);
  box-shadow:0 12px 28px rgba(197,148,48,.16),inset 0 1px 0 rgba(255,255,255,.45);
}

.action-primary:hover{background:linear-gradient(135deg,#f5dea1 0%,#d6aa4d 52%,#f7dfa0 100%)}
.action.disabled{opacity:.38;pointer-events:none}

.icon{width:17px;height:17px;display:inline-flex}
.icon svg,.social-link svg{width:100%;height:100%;fill:currentColor}

.info-panel{
  margin-top:16px;
  padding:6px 12px;
  border:1px solid rgba(223,190,111,.11);
  border-radius:16px;
  background:rgba(255,255,255,.018);
}

.info-row{
  display:grid;
  grid-template-columns:78px 1fr;
  gap:10px;
  padding:9px 2px;
}
.info-row+.info-row{border-top:1px solid rgba(255,255,255,.055)}
.info-label{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9d8b66}
.info-value{font-size:.82rem;color:#e5e1da;text-align:right}

.card-footer{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:12px;
  margin-top:16px;
}

.social{display:flex;gap:7px}
.social-link{
  width:38px;
  height:38px;
  padding:9px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#e8e4dc;
  border:1px solid rgba(229,199,128,.14);
  background:rgba(255,255,255,.025);
}
.social-link.disabled{opacity:.28;pointer-events:none}

.save-contact{
  min-height:42px;
  border:1px solid rgba(237,209,140,.31);
  border-radius:13px;
  color:#111114;
  font:inherit;
  font-size:.84rem;
  font-weight:750;
  cursor:pointer;
  background:linear-gradient(135deg,#ebce82 0%,#c39235 55%,#e9cb79 100%);
  box-shadow:0 11px 22px rgba(183,132,35,.15),inset 0 1px 0 rgba(255,255,255,.38);
  transition:transform .18s ease,filter .18s ease;
}
.save-contact:hover{filter:brightness(1.04);transform:translateY(-1px)}

.micro{
  margin:11px 0 0;
  text-align:center;
  font-size:.57rem;
  letter-spacing:.18em;
  color:#7d7568;
}

@media (max-width:380px){
  .card{padding:20px 16px 16px;border-radius:25px}
  .brand-zone{min-height:84px}
  .primary-actions{grid-template-columns:1fr 1fr}
  .card-footer{grid-template-columns:1fr}
  .social{order:2;justify-content:center}
}

@media (prefers-reduced-motion:reduce){
  *{transition:none!important;scroll-behavior:auto!important}
}
