/* The original page moves aside as the profile enters from the right. */
#profile-dialog{inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);overflow:hidden;box-shadow:none}
#profile-dialog::backdrop{background:transparent;backdrop-filter:none}
#profile-dialog .profile-shell{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,56fr);width:100%;height:100%;overflow:hidden}
#profile-dialog .profile-visual{display:none}
#profile-dialog .profile-panel{grid-column:2;min-width:0;min-height:0;height:100%;padding:64px clamp(30px,5vw,76px);overflow-y:auto;overscroll-behavior:contain;border-left:1px solid var(--line);background:var(--paper);transform:translateX(100%);transition:transform .42s cubic-bezier(.22,.76,.25,1)}
#profile-dialog[data-state='open'] .profile-panel{transform:translateX(0)}
#profile-dialog .profile-close{position:absolute;z-index:2;top:23px;right:27px;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid #cdb9aa;border-radius:50%;background:var(--paper);color:var(--brand);font-size:25px;line-height:1;opacity:0;transition:opacity .18s,background .18s,color .18s}
#profile-dialog[data-state='open'] .profile-close,#profile-dialog[data-state='closing'] .profile-close{opacity:1}
#profile-dialog .profile-close:hover{background:var(--brand);color:#fff}
#profile-dialog .profile-panel-role{margin:0 0 17px;color:var(--brand);font-size:11px;font-weight:600;letter-spacing:.08em}
#profile-dialog #profile-panel-name{margin:0 0 26px;font-family:var(--sans);font-size:clamp(34px,3.8vw,54px);font-weight:500;letter-spacing:-.07em;line-height:1.38}
#profile-dialog .profile-panel-intro{margin:0 0 40px;color:var(--muted);font-size:16px;line-height:1.9}
#profile-dialog .profile-histories{border-top:1px solid #cdb9aa}
#profile-dialog .profile-history{padding:27px 0;border-bottom:1px solid var(--line)}
#profile-dialog .profile-history h3,#profile-dialog .profile-gallery h3{margin:0 0 14px;color:var(--brand);font-family:var(--sans);font-size:18px;font-weight:500}
#profile-dialog .profile-history ul{display:grid;gap:9px;margin:0;padding:0;list-style:none;color:#534a46;font-size:14px;line-height:1.8}
#profile-dialog .profile-history li{position:relative;padding-left:14px}
#profile-dialog .profile-history li::before{content:'';position:absolute;top:.8em;left:0;width:3px;height:3px;border-radius:50%;background:#a05a50}
#profile-dialog .profile-gallery{padding-top:27px}
#profile-dialog .profile-gallery>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#profile-dialog .profile-gallery figure{margin:0}
#profile-dialog .profile-gallery img{width:100%;height:auto}
#profile-dialog .profile-gallery figcaption{margin-top:8px;color:var(--muted);font-size:12px}
#profile-dialog .profile-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
#profile-dialog .profile-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 21px;border:1px solid var(--brand);background:transparent;color:var(--brand);font-size:13px}
#profile-dialog .profile-actions .profile-contact{background:var(--brand);color:#fff}
#profile-dialog .profile-actions a:hover{background:#eee4db}
#profile-dialog .profile-actions .profile-contact:hover{background:var(--brand-dark)}
#profile-dialog [data-profile-reveal]{opacity:0;transform:translateX(16px);transition:opacity .2s ease,transform .24s cubic-bezier(.22,.76,.25,1);transition-delay:0ms}
#profile-dialog[data-state='open'] [data-profile-reveal]{opacity:1;transform:translateX(0);transition-delay:calc(55ms + var(--profile-order)*38ms)}
body main,body .site-footer{width:100%;transition:width .42s cubic-bezier(.22,.76,.25,1)}
body.profile-pushing{overflow-anchor:none}
body .site-header{width:100%;transition:background .25s,color .25s,box-shadow .25s,width .42s cubic-bezier(.22,.76,.25,1)}
@media(min-width:761px){
  body.profile-pushing main,body.profile-pushing .site-footer,body.profile-pushing .site-header{width:44%}
  body.profile-pushing .site-header{grid-template-columns:minmax(0,1fr);padding-inline:28px}
  body.profile-pushing .site-header .brand{width:min(260px,100%);margin-inline:auto}
  body.profile-pushing .site-header>.contact-pill,body.profile-pushing .header-right{display:none}
  body.profile-pushing .professional{min-height:calc(100dvh - 104px);padding:32px 0 48px}
  body.profile-pushing .professional>.wrap{width:calc(100% - 64px);min-width:0;margin-inline:auto}
  body.profile-pushing .professional .section-heading{font-size:clamp(25px,2.6vw,38px);line-height:1.5;letter-spacing:-1px;overflow-wrap:anywhere}
  body.profile-pushing .professional-grid{grid-template-columns:minmax(0,1fr);gap:20px;width:100%;margin:28px auto 0}
  body.profile-pushing .portrait-frame{width:min(100%,360px,calc((100dvh - 340px)*.8 + 24px));max-width:100%;padding-right:24px;padding-bottom:24px;margin-inline:auto}
  body.profile-pushing .portrait-frame::after{inset:20px 0 0 20px}
  body.profile-pushing .professional-copy{min-width:0}
  body.profile-pushing .professional-copy .profile-name{flex-wrap:wrap;gap:5px 12px;margin:0;font-size:clamp(24px,2.1vw,30px)}
  body.profile-pushing .professional-copy .profile-intro,body.profile-pushing .professional-copy .profile-role,body.profile-pushing .professional-copy .text-link{display:none}
}
@media(max-width:760px){
  #profile-dialog .profile-shell{grid-template-columns:minmax(0,1fr)}
  #profile-dialog .profile-panel{grid-column:1;padding:72px 25px 48px}
  #profile-dialog .profile-close{top:17px;right:17px;width:38px;height:38px}
  #profile-dialog #profile-panel-name{font-size:34px}
  #profile-dialog .profile-panel-intro{margin-bottom:30px;font-size:14px}
  #profile-dialog .profile-history{padding:23px 0}
  #profile-dialog .profile-history ul{font-size:13px}
  #profile-dialog .profile-actions{display:grid;grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  #profile-dialog .profile-panel,#profile-dialog .profile-close,#profile-dialog [data-profile-reveal],body .site-header,body main,body .site-footer,body .floating-kakao,body .mobile-contact{transition:none}
}
