/* Kyalami Creek: cookie banner. Sits above the phone bar on phones; equal-weight buttons. */
.kc-consent{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:70;max-width:560px;background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 8px 32px rgba(15,27,51,.14);font-family:var(--sans)}
.kc-consent[hidden]{display:none}
.kc-consent__in{padding:20px 22px}
.kc-consent__h{margin:0 0 6px;font-size:17px;font-weight:400;line-height:1.3;letter-spacing:0;outline:none}
.kc-consent__p{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--muted)}
.kc-consent__p a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.kc-consent__b{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kc-consent__btn{height:48px;padding:0 16px;border:1px solid var(--night);background:var(--paper);color:var(--night);font:inherit;font-size:12px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border-radius:2px}
.kc-consent__btn:hover{background:var(--sand)}
.kc-consent__btn:focus-visible,.kc-consent__p a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media (max-width:767px){.kc-consent{bottom:calc(72px + env(safe-area-inset-bottom))}}
@media (min-width:768px){.kc-consent{left:24px;right:auto;bottom:24px}}
@media (prefers-reduced-motion:no-preference){.kc-consent:not([hidden]){animation:kc-in .3s ease-out}}
@keyframes kc-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media print{.kc-consent{display:none}}
