/* Local, self-contained homepage card; other pages retain the compact footer. */
.business-card-footer{padding:0 4.4vw 30px;border-top:1px solid var(--line);margin-top:80px}
.footer-main{max-width:1100px;margin:auto}
.footer-card{margin:38px auto 28px;background:#211c1a;color:#161616;font-family:"Times New Roman",Times,serif}
.footer-card .card-half-heading{display:block;padding:0;margin:0;border:0;background:none;width:auto;position:static;min-height:0;box-shadow:none}
.footer-card .card-half{margin:0;border:0}
.footer-card .card-photograph{filter:grayscale(1) sepia(.18) contrast(.94)}
.footer-card .card-half a,.footer-card .card-name{color:#161616}
.footer-nav{padding:22px 0 28px}
.footer-nav-links{display:flex;flex-wrap:wrap;gap:18px 30px;font-size:14px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:12px}
.footer-bottom>div{display:flex;flex-wrap:wrap;gap:20px}
@media(max-width:900px){.business-card-footer{margin-top:56px}.footer-bottom{flex-direction:column}}
.card-scene { position: relative; width: min(100%, 1536px); aspect-ratio: 3 / 2; container-type: inline-size; }
.card-photograph { display: block; width: 100%; height: 100%; object-fit: contain; }
.card-half { position: absolute; top: 32.6%; width: 22%; font-size: 1.5cqw; line-height: 1.12; }
.card-half-left { left: 22%; width: 22.3%; text-align: right; }
.card-half-right { left: 53%; text-align: left; }
.card-half p { margin: 0; }
/* Printed baselines and verticals follow the photographed paper edges. */
.card-half-left .card-print { transform: matrix(1, -.079, .09, 1, 0, 0); transform-origin: 100% 0; }
.card-half-right .card-print { transform: matrix(1, .064, -.086, 1, 0, 0); transform-origin: 0 0; }
.card-ring { color: #000; width: 3cqw; height: 6cqw; margin: 0 0 2.4cqw; }
.card-ring { overflow:hidden; }
.card-ring .ring-photo { display:block; width:200%; max-width:none; height:100%; object-fit:fill; }
.card-ring .ring-photo-right { transform:translateX(-50%); }
.card-half-left .card-ring { margin-left: auto; }
/* Two matching halves of one ring meet the two edges of the torn paper. */
.card-half-left .card-ring,.card-half-right .card-ring { width:3cqw;height:6cqw;overflow:hidden; }
.card-half-left .ring-photo-left,.card-half-right .ring-photo-right { width:200%;height:100%;object-fit:fill; }
.card-half-right .ring-photo-right { transform:translateX(-50%); }
.card-name { font-family: "Times New Roman", Times, serif; font-size: 2.6cqw; font-weight: 700; letter-spacing: .01em; line-height: 1.05; color: #100b07; }
.card-profession { font-size: 1.45cqw; letter-spacing: .085em; text-transform: uppercase; margin-top: .45cqw !important; }
.card-contact { display: flex; flex-direction: column; gap: 0; margin-top: 4cqw; text-align: left; }
.card-half a { color: #100b07; text-decoration: none; text-underline-offset: .15em; padding: .12cqw 0; }
.card-contact a { font-weight: 400; }
/* Equal paper-edge clearance, accounting for the two photographed angles. */
.card-half-right .card-contact { margin-top: 4.8cqw; text-align: right; transform: translateX(1.8cqw); }
.card-half a:hover { text-decoration: underline; }
.card-half a:focus-visible { outline: 2px solid #100b07; outline-offset: 4px; border-radius: 1px; }
.mobile-name { display: none; }
@media (max-width: 900px) {
 .contact-card { padding: 20px 8px; }
 .card-scene { display: flex; flex-direction: column; gap: 16px; width: min(100%, 430px); aspect-ratio: auto; }
 .card-photograph { display: none; }
 .card-half { position: relative; top: auto; left: auto; width: 100%; min-height: 360px; padding: 46px 44px 38px; font-size: 15px; line-height: 1.15; background-image: url('/assets/contact-card.webp'); background-size: 295% auto; background-repeat: no-repeat; }
 .card-half-left { background-position: 22% center; text-align: right; padding-left: 95px; }
 .card-half-right { background-position: 78% center; text-align: left; padding-right: 95px; }
 .desktop-fragment { display: none; }
 .mobile-name { display: inline; }
 .card-ring { width: 30px; height: 60px; margin-bottom: 14px; }
 .card-name { font-size: clamp(23px, 6.3vw, 28px); }
 .card-profession { font-size: 12px; margin-top: 4px !important; }
 .card-contact, .card-half-right .card-contact { margin-top: 36px; }
 .card-half-left .card-contact { text-align: right; }
 .card-half-right .card-contact { transform: none; text-align: left; }
 .card-half a { padding: 3px 0; }
}
@media (max-width: 380px) {
 .card-half { padding-left: 36px; padding-right: 36px; font-size: 14px; }
 .card-half-left { padding-left: 82px; }
 .card-half-right { padding-right: 82px; }
 .card-name { font-size: 23px; }
}

@media(max-width:900px){.footer-card .card-half{isolation:isolate;background-image:none;background-color:#f1e7d5}.footer-card .card-half::before{content:"";position:absolute;inset:0;z-index:-1;background-image:url("/assets/contact-card.webp");background-size:295% auto;background-repeat:no-repeat;filter:grayscale(1) sepia(.18) contrast(.94)}.footer-card .card-half-left::before{background-position:22% center}.footer-card .card-half-right::before{background-position:78% center}}

/* Override the site's legacy three-column footer at every breakpoint. */
.business-card-footer .footer-main{display:block;width:100%;max-width:1100px;min-width:0;margin:0 auto}
.business-card-footer .footer-card{display:block;width:100%;min-width:0;overflow:hidden}
.business-card-footer .card-scene{width:100%;max-width:1536px;min-width:0;margin:0 auto}
.business-card-footer .card-half a{font-size:inherit;line-height:inherit;white-space:nowrap;overflow-wrap:normal}
.business-card-footer .footer-main .footer-nav{display:block;width:100%;grid-column:auto;grid-row:auto}
.business-card-footer .footer-nav-links{display:flex;flex-direction:row;flex-wrap:wrap;gap:18px 30px}
@media(max-width:900px){.business-card-footer .footer-card{padding:20px 8px}.business-card-footer .card-scene{max-width:430px}.business-card-footer .card-half a{font-size:15px}.business-card-footer .card-print{position:relative;z-index:1}}

/* Keep the photographed composition in proportion to the editorial page. */
.business-card-footer .footer-card{max-width:900px;margin:32px auto 20px;background:#211c1a}
.business-card-footer .card-half{font-size:1.75cqw;line-height:1.3}
.business-card-footer .card-contact{gap:.2cqw;margin-top:3.4cqw}
.business-card-footer .card-half-right .card-contact{margin-top:4.2cqw}
.business-card-footer .card-half a{padding:.35cqw 0;color:#303030}
@media(max-width:900px){
 .business-card-footer .footer-card{max-width:420px;margin:24px auto 16px;padding:18px 12px}
 .business-card-footer .card-scene{max-width:340px;gap:14px}
 .business-card-footer .card-half{min-height:300px;padding:30px 28px;font-size:14px;line-height:1.35}
 .business-card-footer .card-half-left{padding-left:78px}
 .business-card-footer .card-half-right{padding-right:78px}
 .business-card-footer .card-name{font-size:25px;line-height:1.15}
 .business-card-footer .card-profession{font-size:12px;letter-spacing:.045em}
 .business-card-footer .card-contact,.business-card-footer .card-half-right .card-contact{gap:2px;margin-top:24px}
 .business-card-footer .card-half a{font-size:14px;padding:6px 0}
 .business-card-footer .card-ring{width:26px;height:52px;margin-bottom:12px}
 .business-card-footer .card-half-left .card-ring,.business-card-footer .card-half-right .card-ring{width:26px;height:52px}
}

/* Quiet gold and slightly more paper-edge clearance for the printed details. */
.card-ring .ring-photo{filter:saturate(.55) brightness(.94) contrast(.95)}
.business-card-footer .card-half-left .card-contact{padding-left:.65cqw}
.business-card-footer .card-half-right .card-contact{transform:translateX(1.15cqw)}
@media(max-width:900px){
 .business-card-footer .card-half-left .card-contact{padding-left:0}
 .business-card-footer .card-half-right .card-contact{transform:none}
}
@media(max-width:380px){
 .business-card-footer .footer-card{padding:14px 8px}
 .business-card-footer .card-half{min-height:280px;padding-top:24px;padding-bottom:24px;font-size:13px}
 .business-card-footer .card-half-left{padding-left:64px;padding-right:22px}
 .business-card-footer .card-half-right{padding-right:64px;padding-left:22px}
 .business-card-footer .card-name{font-size:23px}
 .business-card-footer .card-half a{font-size:13px}
}
