:root{--navy:#1a2e40;--navy-deep:#102537;--cream:#fcfaf5;--cream-darker:#f5f1e8;--gold:#b79462;--rule:#cdb488;--text:#203348;--white:#fff;--ink-shadow:rgba(18,33,43,.22)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#e6e4e0;color:var(--text);font-family:Palatino,'Palatino Linotype','Book Antiqua',Georgia,serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
button{font:inherit}
.icon-library{position:absolute;width:0;height:0;overflow:hidden}
.icon{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.skip-link{position:absolute;top:-90px;left:10px;background:var(--cream);z-index:100;padding:12px}
.skip-link:focus{top:10px}
.desktop-surface{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:32px 20px 44px;background:radial-gradient(circle at 50% 25%,#f6f3ed,#dadcd9 86%)}
.card{width:min(100%,429px);border:7px solid #242a31;border-radius:48px;box-shadow:0 20px 48px rgba(13,27,39,.20),0 2px 8px rgba(13,27,39,.13);background:var(--cream);overflow:hidden;isolation:isolate}
.card-header{min-height:83px;display:flex;align-items:center;justify-content:center;padding:10px 23px 9px;background:#fcfbf7}
.brand{display:block;width:247px;max-width:84%;outline-offset:5px}
.brand img{display:block;width:100%;height:auto}
.hero{height:345px;position:relative;overflow:hidden;background:#ded3c5}
.hero-office{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:42% 48%}
.hero-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,246,230,.07) 3%,rgba(20,39,54,.03) 76%,rgba(20,39,54,.09) 100%);z-index:1}
.hero-person{height:148%;width:auto;max-width:none;position:absolute;bottom:-22%;left:57%;transform:translateX(-50%);z-index:2;filter:drop-shadow(0 1px 2px rgba(20,31,38,.11))}
.card-body{background:var(--cream);padding:15px 26px 19px}
.identity h1{font-size:clamp(28px,8.8vw,36px);line-height:1.13;font-weight:500;letter-spacing:-.045em;margin:0;color:var(--navy);white-space:nowrap}
.role{font-size:21px;color:#b08a50;line-height:1.2;margin:4px 0 9px;letter-spacing:.02em}
.role-divider{margin:0 5px;color:#bc9b69}
.city{font-size:14.4px;line-height:1.4;letter-spacing:.005em;margin:0;display:flex;align-items:center;gap:9px;color:#293e52}
.city .icon{color:var(--gold);width:16px;height:17px;fill:var(--gold);stroke:var(--gold)}
.contacts{margin-top:18px;padding-top:12px;border-top:1px solid var(--rule)}
.contacts-heading{display:flex;align-items:center;gap:17px;font-family:Palatino,'Palatino Linotype',Georgia,serif;text-transform:uppercase;color:var(--navy);font-size:12px;font-weight:400;letter-spacing:.17em;white-space:nowrap;margin:0 0 11px}
.contacts-heading:after{content:"";height:1px;flex:1;min-width:5px;background:var(--rule)}
.contact-list{display:grid;gap:7px}
.contact-action{display:grid;grid-template-columns:28px 1fr 20px;align-items:center;gap:10px;min-height:48px;padding:8px 16px;border:1.3px solid #26445d;background:transparent;border-radius:999px;color:var(--navy);text-decoration:none;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}
.contact-action>span{text-align:center;font-size:17.5px;line-height:1.24;letter-spacing:.003em}
.contact-action .icon{height:22px;width:22px}
.contact-action .chevron{height:19px;width:19px;color:#b38b4e;stroke-width:2.15}
.contact-action-primary{background:var(--navy);border-color:var(--navy);color:white;min-height:53px;margin-bottom:1px}
.contact-action-primary>span{font-size:18px}
.contact-action-primary .icon{width:24px;height:24px}
.contact-action:hover{background:#f2ede4;transform:translateY(-1px);box-shadow:0 2px 6px rgba(22,43,59,.08)}
.contact-action-primary:hover{background:#29475f}
.contact-action:active{transform:translateY(0)}
.card-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:13px;align-items:center;margin-top:20px;padding:4px 4px 2px}
.footer-line{height:1px;background:var(--rule)}
.share-button{display:inline-flex;align-items:center;gap:8px;padding:5px 0;color:var(--navy);border:0;background:none;font-size:15.3px;cursor:pointer;white-space:nowrap}
.share-button .icon{width:20px;height:20px}
.share-button:hover{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.toast{position:fixed;z-index:999;left:50%;transform:translate(-50%,15px);bottom:28px;background:var(--navy);color:white;font-family:system-ui,sans-serif;font-size:13px;padding:12px 18px;border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,.22);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;max-width:calc(100% - 30px);text-align:center}
.toast.visible{opacity:1;transform:translate(-50%,0)}
:focus-visible{outline:3px solid var(--gold)!important;outline-offset:3px}
@media (max-width:540px){
 .desktop-surface{min-height:100svh;display:block;padding:0;background:var(--cream)}
 .card{width:100%;max-width:none;border:0;border-radius:0;box-shadow:none}
 .card-header{min-height:75px;padding-top:max(10px,env(safe-area-inset-top))}
 .brand{width:228px}
 .hero{height:clamp(285px,90vw,370px)}
 .card-body{padding-left:clamp(19px,6.6vw,28px);padding-right:clamp(19px,6.6vw,28px);padding-bottom:max(20px,env(safe-area-inset-bottom))}
}
@media (max-width:355px){
 .card-header{min-height:70px}
 .brand{width:208px}
 .identity h1{font-size:28px}
 .role{font-size:19px}
 .city{font-size:12.5px;gap:6px}
 .contacts-heading{font-size:10.5px;letter-spacing:.15em}
 .contact-action{min-height:46px;padding:7px 12px;gap:7px}
 .contact-action>span{font-size:16px}
 .contact-action-primary>span{font-size:17px}
 .share-button{font-size:14px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.desktop-surface{padding:0}.card{border:0;box-shadow:none}.toast{display:none}}
