@font-face {
  font-family: "Montserrat";
  src: url("../assets/Montserrat-VariableFont_wght.ttf") format("truetype");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root { --navy:#162336; --teal:#2ca7a1; --gold:#d9ad46; --cream:#fff9ef; --white:#fff; }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; display:grid; place-items:center; padding:24px; background:linear-gradient(150deg,#e9f3f1,#fff9ef); color:var(--navy); font-family:Montserrat,Arial,sans-serif; }
.card-shell { width:min(100%,520px); }
.business-card { position:relative; overflow:hidden; padding:clamp(28px,7vw,48px); text-align:center; border:1px solid rgba(22,35,54,.1); border-radius:34px; background:var(--white); box-shadow:0 28px 80px rgba(22,35,54,.18); }
.business-card::before { content:""; position:absolute; width:240px; height:240px; top:-145px; right:-115px; border:22px solid rgba(44,167,161,.16); border-radius:50%; }
.logo { position:relative; width:min(100%,330px); margin:0 auto 28px; border-radius:13px; }
.portrait-wrap { position:relative; width:145px; height:145px; margin:0 auto 25px; padding:5px; border:2px solid var(--gold); border-radius:50%; }
.portrait-wrap img { width:100%; height:100%; object-fit:cover; object-position:center 35%; border-radius:50%; }
.eyebrow { margin:0 0 8px; color:#177f7b; font-size:.74rem; font-weight:700; letter-spacing:.18em; }
h1 { margin:0; font-size:clamp(2rem,8vw,3rem); line-height:1.08; letter-spacing:-.04em; }
.experience { margin:8px 0 0; color:var(--gold); font-size:.86rem; font-weight:700; }
.intro { max-width:390px; margin:22px auto 28px; color:#617080; font-size:.96rem; line-height:1.65; }
.primary-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.action { min-height:52px; display:flex; align-items:center; justify-content:center; padding:12px 16px; border:0; border-radius:999px; color:var(--navy); font:700 .86rem/1.2 Montserrat,Arial,sans-serif; text-decoration:none; cursor:pointer; }
.action-gold { background:var(--gold); }
.action-teal { background:var(--teal); color:white; }
.contact-actions { display:grid; gap:1px; margin-top:28px; overflow:hidden; border:1px solid #dce6e3; border-radius:18px; background:#dce6e3; text-align:left; }
.contact-actions a { padding:16px 18px; display:flex; justify-content:space-between; gap:16px; background:#f8fbfa; color:var(--navy); text-decoration:none; }
.contact-actions span { color:#177f7b; font-size:.74rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; }
.contact-actions strong { font-size:.83rem; overflow-wrap:anywhere; text-align:right; }
.website-link { display:inline-block; margin-top:25px; color:var(--gold); font-size:.8rem; font-weight:700; text-underline-offset:4px; }
.share-note { min-height:22px; margin:12px 0 0; color:#617080; font-size:.76rem; }
@media (max-width:440px) {
  body { padding:12px; }
  .business-card { padding:28px 20px; border-radius:24px; }
  .primary-actions { grid-template-columns:1fr; }
  .contact-actions a { flex-direction:column; gap:3px; }
  .contact-actions strong { text-align:left; }
}
