@import 'https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;600&family=Inter:wght@300;400;600&display=swap';:root{--purple:#2D1B69;--bg:#FAFAF8;--text:#2B2B2B;--gold:#C6A87C;--border:#E5E5E3}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{position:fixed;left:1rem;top:1rem;width:auto;height:auto;padding:.75rem 1.25rem;z-index:9999;background:var(--purple);color:#fff;font-size:1rem;font-weight:600;text-decoration:none;border-radius:2px}body{font-family:inter,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;margin:0}h1,h2,h3{font-family:cormorant garamond,serif;color:var(--purple);font-weight:600}:focus-visible{outline:2px solid var(--purple);outline-offset:2px;border-radius:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--purple);outline-offset:1px;border-color:var(--purple)}button:focus-visible,a:focus-visible{outline:2px solid var(--purple);outline-offset:2px;border-radius:2px}a:focus:not(:focus-visible){outline:none}a{color:var(--purple)}a:hover{color:var(--gold)}.logo-mark{width:40px;height:40px;display:block;margin:0 auto}.logo-animate{animation:logo-bounce-spin 5s ease-in-out infinite}@keyframes logo-bounce-spin{0%,100%{transform:translateY(0)rotate(0)}25%{transform:translateY(-10px)rotate(180deg)}50%{transform:translateY(0)rotate(360deg)}75%{transform:translateY(-6px)rotate(540deg)}}@media(prefers-reduced-motion:reduce){.logo-animate{animation:none}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body.high-contrast{--bg:#000;--text:#FFF;--purple:#FFD700;--gold:#00BFFF;--border:#FFF;background:#000!important;color:#fff!important}body.high-contrast a{color:gold!important;text-decoration:underline!important}body.high-contrast a:hover{color:#00bfff!important}body.high-contrast button{border:2px solid #fff!important;color:#000!important;background:#fff!important}body.high-contrast input,body.high-contrast textarea{border:2px solid #fff!important;background:#000!important;color:#fff!important}body.high-contrast footer,body.high-contrast .site-footer{border-top:2px solid #fff!important;color:#fff!important}.site-footer{border-top:1px solid var(--border);font-size:.85em;color:#555}.site-footer a{color:#555}.site-footer a:hover{color:var(--purple)}@media(max-width:400px){h1{font-size:1.8rem}section[style*="padding: 5rem"]{padding-left:1rem!important;padding-right:1rem!important}}