/* Batchef shared site styles: a11y, forms, consent banner, legal footer, mobile polish */
html{scroll-behavior:smooth}
body{margin:0;overflow-x:clip}
:focus-visible{outline:3px solid #FFD93B;outline-offset:3px}
.skip{position:absolute;left:8px;top:-60px;z-index:10000;background:#FFD93B;color:#111;padding:10px 16px;font:700 16px 'DM Sans',system-ui,sans-serif;border:3px solid #111}
.skip:focus{top:8px}
/* forms */
.bc-hp{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important}
.bc-note{margin:8px 0 0;font-size:14px;line-height:1.4;color:inherit}
.bc-note a{text-decoration:underline;font-weight:700}
.bc-msg{font:700 15px/1.35 'DM Sans',system-ui,sans-serif}
.bc-msg:not(:empty){display:block;margin-top:10px;padding:8px 12px;border:3px solid #111;background:#fff;color:#111;box-shadow:3px 3px 0 #111}
.bc-msg.ok:not(:empty){background:#DFF5E1;color:#0B3D18}
.bc-msg.err:not(:empty){background:#FFE3E0;color:#7A0C00}
input[aria-invalid="true"],textarea[aria-invalid="true"]{outline:3px solid #D93A22;outline-offset:2px}
/* consent banner */
#bc-consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:9999;max-width:760px;margin:0 auto;background:#111;color:#F3EFE4;border:4px solid #F3EFE4;box-shadow:8px 8px 0 #FF6B1A;padding:20px;font:16px/1.5 'DM Sans',system-ui,sans-serif}
#bc-consent h2{margin:0 0 6px;font:400 28px/1 Bangers,Impact,sans-serif;letter-spacing:1.5px}
#bc-consent p{margin:0 0 14px}
#bc-consent a{color:#FFD93B;text-decoration:underline}
#bc-consent .row{display:flex;flex-wrap:wrap;gap:12px}
#bc-consent button{flex:1 1 180px;min-height:48px;padding:0 20px;cursor:pointer;font:400 24px/1 Bangers,Impact,sans-serif;letter-spacing:1.5px;border:4px solid #F3EFE4;background:#111;color:#F3EFE4}
#bc-consent button.yes{background:#FF6B1A;color:#111;border-color:#F3EFE4}
#bc-consent button:hover{background:#F3EFE4;color:#111}
/* legal footer strip */
.bc-legal{background:#0E0E0E;color:#F3EFE4;border-top:4px solid #F3EFE4;padding:22px 48px;display:flex;flex-wrap:wrap;gap:10px 28px;align-items:center;justify-content:space-between;font:15px/1.4 'DM Sans',system-ui,sans-serif}
.bc-legal nav{display:flex;flex-wrap:wrap;gap:4px 24px}
.bc-legal a,.bc-legal button{color:#F3EFE4;background:none;border:0;padding:0;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer;min-height:44px;display:inline-flex;align-items:center}
/* touch targets + mobile */
@media (max-width:900px){header nav a{min-height:44px;display:inline-flex;align-items:center}}
@media (max-width:700px){
[style*="padding: 28px"]{padding:18px !important}
[style*="padding: 0 48px"]{padding-left:0 !important;padding-right:0 !important}
[style*="font-size: 42px"]{font-size:36px !important}

 header,section,footer{padding-left:20px!important;padding-right:20px!important}
 header{padding-top:12px!important;padding-bottom:12px!important}
 header nav{gap:0 16px!important}
 .bc-legal{padding:18px 20px}
 #bc-consent{left:8px;right:8px;bottom:8px;padding:16px}
}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
