/* BMCA: accessible additions that inherit the existing visual theme. */
.bmca-depth {padding:64px 6vw;border-top:1px solid var(--line,#ddd);}
.bmca-depth .wrapc {max-width:1120px;margin:0 auto;}
.bmca-depth h2 {font-family:Lora,serif;font-weight:400;font-size:clamp(25px,3vw,36px);margin:0 0 18px;}
.bmca-depth p,.bmca-depth li {line-height:1.85;font-size:15px;max-width:80ch;}
.bmca-depth ul {padding-left:22px;}
.bmca-related {display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:20px;}
.bmca-related a {text-underline-offset:4px;text-decoration:underline;}
.bmca-focus-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:28px 0;}
.bmca-focus-card {display:block;padding:24px;border:1px solid var(--line,#ddd);color:inherit;text-decoration:none;transition:transform .2s,border-color .2s;}
.bmca-focus-card span {font-size:12px;letter-spacing:.15em;}
.bmca-focus-card h3 {font:400 21px/1.4 Lora,serif;margin:18px 0;}
.bmca-focus-card p {font-size:12px;margin:0;}
.bmca-focus-card:hover {transform:translateY(-3px);border-color:currentColor;}
.bmca-focus-card:focus-visible {outline:2px solid currentColor;outline-offset:4px;}
@media(max-width:1000px){.bmca-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:580px){.bmca-focus-grid{grid-template-columns:1fr;}.bmca-depth{padding:44px 6vw;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important;}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}.reveal{opacity:1!important;transform:none!important;}}
/* Real visible file controls replace the obstructed invisible overlay. */
.upload {display:block!important;min-width:0;max-width:100%;border:1px dashed currentColor;padding:18px;}
.upload label {display:block;font-size:14px;font-weight:500;margin-bottom:12px;cursor:pointer;}
.upload input[type=file] {position:static!important;inset:auto!important;opacity:1!important;display:block!important;width:100%!important;height:auto!important;min-height:46px;max-width:100%;padding:8px!important;color:inherit;cursor:pointer;}
.upload input[type=file]::file-selector-button {font:inherit;padding:9px 12px;margin-right:12px;cursor:pointer;border:1px solid #888;border-radius:0;}
.upload input[type=file]:focus-visible {outline:2px solid currentColor;outline-offset:3px;}
.upload .upload-help,.upload .upload-status {font-size:12px!important;line-height:1.6!important;margin:10px 0 0!important;overflow-wrap:anywhere;color:inherit!important;}
.upload .upload-status:empty {display:none;}
.upload .upload-remove {display:inline-block!important;background:transparent!important;color:inherit!important;border:1px solid currentColor!important;padding:8px 12px!important;font-size:12px!important;letter-spacing:normal!important;margin-top:10px;cursor:pointer;}
.upload .upload-remove[hidden] {display:none!important;}
