:root{
  --profile-navy:#102b52;
  --profile-deep:#0a1e3a;
  --profile-gold:#c6a15b;
  --profile-text:#172033;
  --profile-muted:#64748b;
  --profile-line:#dbe3ee;
  --profile-bg:#eef3f9;
}
*{box-sizing:border-box}
body.profile-page{margin:0;background:var(--profile-bg);color:var(--profile-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
.profile-main{width:min(1180px,calc(100% - 48px));margin:42px auto 56px}
.profile-hero{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:center;gap:58px;padding:58px 68px;background:#fff;border:1px solid rgba(16,43,82,.10);border-radius:28px;box-shadow:0 18px 48px rgba(15,23,42,.09);position:relative;overflow:hidden}
.profile-hero::after{content:"";position:absolute;right:-110px;top:-150px;width:390px;height:390px;border-radius:50%;border:1px solid rgba(198,161,91,.22);box-shadow:0 0 0 48px rgba(198,161,91,.035),0 0 0 96px rgba(16,43,82,.025);pointer-events:none}
.profile-symbol{width:210px;height:210px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(145deg,#fff,#f5f7fb);box-shadow:inset 0 0 0 1px rgba(16,43,82,.08),0 18px 36px rgba(16,43,82,.10)}
.profile-symbol svg{width:150px;height:150px;overflow:visible}
.profile-symbol path{fill:none;stroke-linecap:round;stroke-width:8.5}
.profile-symbol-gold{stroke:var(--profile-gold)}
.profile-symbol-navy{stroke:var(--profile-navy)}
.profile-symbol-dot{fill:var(--profile-gold)}
.profile-hero-copy{position:relative;z-index:1}
.profile-role{margin:0 0 13px;color:var(--profile-gold);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:17px;font-weight:700;letter-spacing:.18em}
.profile-hero h1{margin:0;color:var(--profile-deep);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:52px;font-weight:600;letter-spacing:.12em;line-height:1.2}
.profile-roman{margin:13px 0 0;color:var(--profile-navy);font-family:Georgia,"Times New Roman",serif;font-size:15px;letter-spacing:.24em}
.profile-lead{max-width:680px;margin:30px 0 0;color:#3d4b61;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:21px;line-height:2;letter-spacing:.035em}
.profile-actions{margin-top:31px}
.profile-primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:999px;background:var(--profile-navy);color:#fff;text-decoration:none;font-weight:800;letter-spacing:.04em;box-shadow:0 8px 20px rgba(16,43,82,.18);transition:transform .18s ease,background .18s ease}
.profile-primary-button:hover{background:var(--profile-deep);transform:translateY(-1px)}
.profile-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.profile-card{padding:36px 38px;background:#fff;border:1px solid var(--profile-line);border-radius:22px;box-shadow:0 10px 26px rgba(15,23,42,.055)}
.profile-card.profile-details{grid-column:1/-1}
.profile-section-kicker{margin:0 0 9px;color:var(--profile-gold);font-family:Georgia,"Times New Roman",serif;font-size:12px;font-weight:700;letter-spacing:.23em}
.profile-card h2{margin:0 0 19px;color:var(--profile-deep);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:27px;letter-spacing:.06em}
.profile-card p:not(.profile-section-kicker){margin:0;color:#48566a;font-size:16px;line-height:2}
.profile-pending{padding:20px 22px;border-left:4px solid var(--profile-gold);background:#f8fafc;border-radius:0 12px 12px 0}
.profile-footer{padding:24px;text-align:center;color:#7a8799;font-family:Georgia,"Times New Roman",serif;font-size:13px;letter-spacing:.08em}
@media(max-width:900px){
  .profile-main{width:min(100% - 28px,760px);margin-top:26px}
  .profile-hero{grid-template-columns:1fr;gap:28px;padding:38px 32px;text-align:center}
  .profile-symbol{width:155px;height:155px;margin:auto}
  .profile-symbol svg{width:112px;height:112px}
  .profile-hero h1{font-size:42px}
  .profile-lead{margin-left:auto;margin-right:auto;font-size:18px}
  .profile-content{grid-template-columns:1fr}
  .profile-card.profile-details{grid-column:auto}
}
@media(max-width:520px){
  .profile-main{width:calc(100% - 20px);margin-top:18px}
  .profile-hero{padding:30px 21px;border-radius:20px}
  .profile-symbol{width:126px;height:126px}
  .profile-symbol svg{width:92px;height:92px}
  .profile-role{font-size:14px}
  .profile-hero h1{font-size:34px;letter-spacing:.08em}
  .profile-roman{font-size:11px;letter-spacing:.18em}
  .profile-lead{font-size:16px;line-height:1.9}
  .profile-card{padding:28px 23px}
}
