/* A branded card offered to the visitor, with native contact actions on its face. */
.contact-object{max-width:1000px;margin:0 auto 40px}
.contact-object-stage{position:relative;display:grid;place-items:center;padding:90px 95px;isolation:isolate;perspective-origin:50% 50%;touch-action:auto}
.contact-object-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}
.contact-object-canvas[hidden]{display:none}
.contact-surface{position:relative;width:100%;max-width:700px;padding:0;border:1px solid #333336;border-radius:12px;background:#101012;color:#fff;box-shadow:0 30px 60px -35px #0009,0 3px 0 #2852e5;transform-origin:50% 50%;backface-visibility:hidden}
.contact-object.is-rendered .contact-surface{box-shadow:none;border-color:#ffffff20}
.branded-card-download{display:block;position:relative;min-height:380px;overflow:hidden;border-radius:11px 11px 0 0;text-decoration:none;color:#fff!important;background:#101012}
.branded-card-portrait{position:absolute;inset:0 0 0 58%;overflow:hidden}
.branded-card-portrait img{width:100%;height:100%;object-fit:cover;object-position:53% 30%;filter:grayscale(1) brightness(.82)}
.branded-card-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101012,transparent 27%),linear-gradient(0deg,#101012a0,transparent 45%)}
.branded-card-identity{position:relative;z-index:1;width:66%;padding:26px 0 26px 30px}
.branded-card-logo{display:block;width:300px;max-width:95%;height:auto;filter:invert(1);margin-bottom:20px}
.branded-card-role{font-size:12px;line-height:1.5;letter-spacing:.12em;color:#babac1;margin:0 0 12px}
.branded-card-identity h2{font:500 clamp(48px,6vw,62px)/.91 'DM Sans',Arial,sans-serif;letter-spacing:-.065em;margin:0;color:#fff}
.branded-card-identity h2>span{color:#416aff}
.branded-card-phone{font:400 14px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.065em;color:#c6c6cb;margin:14px 0 0}
.branded-card-save{position:absolute;right:20px;bottom:22px;z-index:2;padding:7px 13px 7px 7px;background:#101012dd;border:1px solid #ffffff38;border-radius:30px;display:inline-flex;align-items:center;gap:11px;font:500 14px/1.3 'DM Sans',Arial,sans-serif;color:#fff}
.branded-save-arrow{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#2852e5;color:#fff;font-size:23px;transition:background .25s,transform .25s}
.branded-card-download:hover .branded-save-arrow,.branded-card-download:focus-visible .branded-save-arrow{background:#fff;color:#2852e5;transform:translateY(2px)}
.branded-card-download:hover .branded-card-save>span:last-child{text-decoration:underline;text-underline-offset:5px}
.contact-surface .direct-contact{display:grid;grid-template-columns:repeat(3,1fr);border:0;border-top:1px solid #ffffff24;border-radius:0 0 11px 11px;overflow:visible;margin:0;padding:0 14px;gap:5px}
.contact-surface .direct-contact>a{min-height:67px;border:0;border-radius:5px;background:transparent;color:#fff;gap:12px;transition:background .2s}
.contact-surface .direct-contact>a:hover,.contact-surface .direct-contact>a:active{background:#ffffff0d}
.contact-surface .direct-contact span{color:#fff;font-size:14px}
.contact-surface .contact-action-icon{color:#fff;width:27px;height:27px;--card-blue:#5276ff}
.contact-surface .icon-bubble,.contact-surface .icon-envelope>rect{fill:#101012}
.contact-surface a:focus-visible{outline:2px solid #8da5ff;outline-offset:-5px}
@media(max-width:800px){.contact-object-stage{padding:75px 55px}.branded-card-identity{padding-left:25px}.branded-card-logo{width:285px}}
@media(max-width:600px){
 .contact-object{margin:0 -10px 20px}
 .contact-object-stage{padding:60px 24px}
 .contact-surface{border-radius:10px}
 .branded-card-download{min-height:277px;border-radius:9px 9px 0 0}
 .branded-card-identity{width:69%;padding:20px 0 20px 18px}
 .branded-card-portrait{left:57%}
 .branded-card-portrait img{object-position:48% 30%}
 .branded-card-logo{width:210px;max-width:95%;margin-bottom:20px}
 .branded-card-role{font-size:10px;letter-spacing:.08em;margin-bottom:11px}
 .branded-card-identity h2{font-size:46px}
 .branded-card-phone{font-size:12px;margin:12px 0 0}
 .branded-card-save{font-size:12px;gap:8px;right:12px;bottom:17px;padding:5px 10px 5px 5px}
 .branded-save-arrow{width:34px;height:34px;font-size:21px}
 .contact-surface .direct-contact{padding:0 8px;gap:0}
 .contact-surface .direct-contact>a{min-height:63px;gap:7px}
 .contact-surface .contact-action-icon{width:23px;height:23px}
 .contact-surface .direct-contact span{font-size:13px}
}
@media(max-width:360px){.contact-object-stage{padding:55px 18px}.branded-card-identity{padding-left:15px}.branded-card-identity h2{font-size:42px}.branded-card-role{font-size:9px}.branded-card-save{font-size:12px}.contact-surface .direct-contact>a{gap:5px}}
@media(prefers-reduced-motion:reduce){.contact-surface{transform:none!important}}

/* A brief introduction before the personal video. */
.card-purpose{display:flex;align-items:center;gap:14px;max-width:1000px;margin:0 auto 22px;padding:5px 0 3px;color:#111}
.card-purpose:before{content:'';width:28px;height:2px;flex:0 0 28px;background:#2852e5;transform-origin:left;animation:card-purpose-line .9s cubic-bezier(.16,1,.3,1) both}
.card-purpose p{margin:0;font:400 19px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:-.025em;animation:card-purpose-enter .85s .1s cubic-bezier(.16,1,.3,1) backwards}
.card-purpose em{color:#2852e5;font:italic 400 27px/1.3 'Bodoni Moda',Georgia,serif;letter-spacing:-.035em}
@keyframes card-purpose-enter{from{opacity:.35;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes card-purpose-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:600px){.card-purpose{gap:11px;margin-bottom:17px;padding:0 0 3px}.card-purpose:before{width:22px;flex-basis:22px}.card-purpose p{font-size:17px}.card-purpose em{font-size:24px}}
@media(max-width:360px){.card-purpose p{font-size:16px}.card-purpose em{font-size:22px}}
.motion-paused .card-purpose p,.motion-paused .card-purpose:before{animation:none!important}
@media(prefers-reduced-motion:reduce){.card-purpose p,.card-purpose:before{animation:none!important}}
