[hidden]{display:none!important}
.triade-nav-link{color:var(--amber-brand);font-weight:600;white-space:nowrap}
.triade-nav-link:hover{text-decoration:underline;text-underline-offset:6px}
header nav a:focus-visible,.site-mobile-menu a:focus-visible{outline:2px solid var(--amber-brand);outline-offset:5px;border-radius:3px}
header .group:focus-within>div{visibility:visible;opacity:1}
.site-mobile-menu{border-top:1px solid var(--border);background:var(--background);padding:16px 24px 24px;max-height:calc(100dvh - 80px);overflow:auto;box-shadow:0 18px 30px #0000000c}
.site-mobile-menu a{display:block;padding:12px 0;border-bottom:1px solid var(--border);font-size:15px}
.unavailable-visual{width:100%;height:100%;min-height:180px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:clamp(18px,3vw,32px);background:radial-gradient(ellipse at 100% 0%,#ad71402b,transparent 65%),#171e26;color:#f4f0e8;overflow:hidden}
.fallback-kicker{font-family:Inter,sans-serif;letter-spacing:.16em;font-size:9px;line-height:1.5;color:#e4ae70}
.fallback-title{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(22px,2.6vw,36px);line-height:1.07;max-width:24ch;overflow-wrap:break-word}
.fallback-line{height:2px;width:45px;background:#df9e58}
.triade-course-card{border-color:#cd9255}
.triade-course-card:focus-visible{outline:3px solid var(--amber-brand);outline-offset:5px}
.triade-course-visual{display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:clamp(24px,3vw,36px);background:radial-gradient(ellipse at 90% 0%,#e97b2433,transparent 65%),#111923;overflow:hidden}
.triade-course-visual img{display:block;width:100%;height:auto}
.triade-course-kicker{font-size:10px;letter-spacing:.15em;line-height:1.5;color:#f1b278}
.triade-course-format{font-size:12px;line-height:1.5;color:#d6dce4}
.contact-notice{padding:14px 16px;margin-bottom:22px;border:1px solid var(--border);border-radius:10px;font-size:13px;line-height:1.6;background:var(--background)}
.contact-notice a{text-decoration:underline;text-underline-offset:3px}
.contact-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;color:var(--muted-foreground)}
.contact-consent input{margin-top:4px;flex-shrink:0}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#contact-status{font-size:14px;line-height:1.6;margin-top:18px}
@media(min-width:1024px){.site-mobile-menu{display:none!important}header nav{gap:22px!important}}
@media(min-width:1024px) and (max-width:1160px){header nav{gap:15px!important}header .container-tight{gap:16px}}
