:root{--color-aconite-violet: #7F57B2;--color-cinnamon-buff: #CBA46C;--color-deep-lyons-blue: #1E3A5F;--color-off-black: #1A1A1A;--color-white: #FAF9F6;--color-neutral-100: #F5F4F1;--color-neutral-200: #EAEAE7;--color-card-bg: #1C2834;--color-dark-gradient-start: #1A1A1A;--color-dark-gradient-end: #0D0D0D;--font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Helvetica, Arial, sans-serif;--font-size-hero: clamp(40px, 6vw, 76px);--font-size-h1: clamp(32px, 4vw, 48px);--font-size-h2: clamp(28px, 3vw, 40px);--font-size-body: clamp(16px, 1vw, 18px);--font-size-small: 14px;--container-max-width: 1120px;--section-spacing: 72px;--section-spacing-mobile: 48px;--grid-gap: 20px;--radius-soft: 16px;--radius-pill: 50px;--shadow-card: 0 2px 8px rgba(0, 0, 0, .15);--shadow-card-hover: 0 4px 16px rgba(0, 0, 0, .2);--duration-normal: .6s;--duration-fast: .3s;--easing: ease;--animation-enabled: 1}@media(prefers-reduced-motion:reduce){:root{--animation-enabled: 0;--duration-normal: 0ms;--duration-fast: 0ms}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-family);font-size:var(--font-size-body);line-height:1.6;color:var(--color-white);background-color:var(--color-off-black);min-width:320px}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600;color:var(--color-white)}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}.hero-headline{font-size:var(--font-size-hero);font-weight:700;line-height:1.1}p{margin-bottom:1em}p:last-child{margin-bottom:0}a{color:var(--color-cinnamon-buff);text-decoration:none;transition:text-decoration var(--duration-fast) var(--easing)}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--color-cinnamon-buff);outline-offset:4px;border-radius:2px}button,.btn{font-family:var(--font-family);font-size:var(--font-size-body);font-weight:500;padding:12px 24px;border-radius:var(--radius-soft);border:none;cursor:pointer;transition:all var(--duration-fast) var(--easing);display:inline-block}.btn-primary{background-color:var(--color-aconite-violet);color:var(--color-white)}.btn-primary:hover{background-color:#8f67c2;text-decoration:none}.btn-secondary{background-color:transparent;color:var(--color-cinnamon-buff);border:2px solid var(--color-cinnamon-buff)}.btn-secondary:hover{background-color:#cba46c1a;text-decoration:none}button:focus-visible,.btn:focus-visible{outline:2px solid var(--color-cinnamon-buff);outline-offset:4px}.container{max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.section{padding-top:var(--section-spacing);padding-bottom:var(--section-spacing)}@media(max-width:768px){.section{padding-top:var(--section-spacing-mobile);padding-bottom:var(--section-spacing-mobile)}}.grid{display:grid;gap:var(--grid-gap)}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid-3,.grid-4{grid-template-columns:1fr}}.reveal{opacity:0;transform:translateY(8px);transition:opacity var(--duration-normal) var(--easing),transform var(--duration-normal) var(--easing)}.reveal.revealed{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-center{text-align:center}.eyebrow{font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:.1em;color:var(--color-cinnamon-buff);font-weight:600;margin-bottom:12px;display:block}.site-header{position:sticky;top:0;background-color:#1a1a1ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);z-index:1000;padding:16px 0}.header-content{display:flex;justify-content:space-between;align-items:center}.brand-logo{text-decoration:none;color:var(--color-white);font-size:24px;font-weight:700;transition:color var(--duration-fast) var(--easing)}.brand-logo:hover{color:var(--color-cinnamon-buff);text-decoration:none}.brand-name{letter-spacing:.05em}.main-nav{display:flex;align-items:center}.nav-list{display:flex;gap:32px;list-style:none;margin:0;padding:0}.nav-link{color:var(--color-white);text-decoration:none;font-size:16px;font-weight:500;transition:color var(--duration-fast) var(--easing);position:relative;padding:4px 0}.nav-link:hover{color:var(--color-cinnamon-buff);text-decoration:none}.nav-link.active{color:var(--color-cinnamon-buff)}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background-color:var(--color-cinnamon-buff)}.nav-link:focus-visible{outline:2px solid var(--color-cinnamon-buff);outline-offset:4px;border-radius:4px}@media(max-width:768px){.nav-list{gap:20px}.nav-link{font-size:14px}}@media(max-width:480px){.header-content{flex-direction:column;gap:16px}.nav-list{flex-wrap:wrap;justify-content:center;gap:12px}}.site-footer{background-color:var(--color-off-black);border-top:1px solid rgba(255,255,255,.1);padding:32px 0;margin-top:auto}.footer-text{color:#fff9;font-size:14px;text-align:center;margin:0}.card{background-color:var(--color-card-bg);border-radius:var(--radius-soft);padding:32px;box-shadow:var(--shadow-card);transition:transform var(--duration-fast) var(--easing),box-shadow var(--duration-fast) var(--easing);border:1px solid rgba(127,87,178,.2);position:relative;overflow:hidden}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.card:focus-within{outline:2px solid var(--color-aconite-violet);outline-offset:4px}@media(prefers-reduced-motion:reduce){.card{transition:none}.card:hover{transform:none}}.card-tag{display:inline-block;background-color:#7f57b233;color:var(--color-aconite-violet);border:1px solid rgba(127,87,178,.4);padding:4px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px}.card-title{color:var(--color-white);font-size:24px;font-weight:600;margin-bottom:12px;line-height:1.3}.card-summary{color:#fffc;font-size:16px;line-height:1.6;margin-bottom:0}.home-page{min-height:100vh}.hero-section{background:linear-gradient(180deg,var(--color-dark-gradient-start) 0%,var(--color-dark-gradient-end) 100%);padding:120px 0 80px;text-align:center;position:relative}.hero-content{max-width:900px;margin:0 auto}.hero-headline{color:var(--color-white);margin-bottom:24px}.hero-subheader{color:#ffffffd9;font-size:clamp(18px,2vw,22px);line-height:1.6;max-width:700px;margin:0 auto}@media(max-width:768px){.hero-section{padding:80px 0 60px}}.marquee-section{background-color:#7f57b20d;border-top:1px solid rgba(127,87,178,.2);border-bottom:1px solid rgba(127,87,178,.2);padding:24px 0;overflow:hidden;position:relative}.marquee{width:100%;overflow:hidden}.marquee-content{display:flex;gap:48px;animation:marquee 40s linear infinite;width:fit-content}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.marquee-content{animation:none}}.marquee-item{color:var(--color-cinnamon-buff);font-size:16px;font-weight:600;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.courses-preview-section{background-color:var(--color-off-black)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.section-header h2{margin:0}.courses-preview-grid{margin-top:32px}@media(max-width:768px){.section-header{flex-direction:column;align-items:flex-start;gap:20px}}.mission-section{background-color:var(--color-card-bg);text-align:center}.mission-content{max-width:800px;margin:0 auto}.mission-content h2{margin-bottom:24px;color:var(--color-cinnamon-buff)}.mission-text{font-size:clamp(18px,2vw,22px);line-height:1.8;color:#ffffffe6}.about-teaser-section{background-color:var(--color-off-black)}.about-teaser-content{max-width:800px;margin:0 auto}.about-teaser-content h2{margin-bottom:24px}.about-text{color:#ffffffe6;line-height:1.8}.about-text p{margin-bottom:1.5em}.about-text p:last-child{margin-bottom:0}.page{min-height:calc(100vh - 200px)}.page-content{max-width:800px;margin:0 auto}.text-content{color:#ffffffe6;line-height:1.8}.text-content p{margin-bottom:1.5em}.text-content p:last-child{margin-bottom:0}.courses-title{margin-bottom:48px;text-align:center}.courses-grid{margin-top:48px}.palette-switcher{background-color:#7f57b20d;border:1px solid rgba(127,87,178,.2);border-radius:var(--radius-soft);padding:32px;margin-top:48px}.palette-switcher h3{color:var(--color-cinnamon-buff);margin-bottom:8px;font-size:24px}.switcher-note{color:#fff9;font-size:14px;margin-bottom:24px}.palette-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:32px}.palette-btn{background-color:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:var(--radius-soft);padding:16px 20px;color:var(--color-white);font-size:16px;font-weight:600;cursor:pointer;transition:all var(--duration-fast) var(--easing);display:flex;flex-direction:column;align-items:center;gap:12px}.palette-btn:hover{background-color:#ffffff1a;border-color:var(--color-cinnamon-buff);transform:translateY(-2px)}.palette-btn.active{background-color:var(--color-aconite-violet);border-color:var(--color-aconite-violet);box-shadow:0 4px 12px #7f57b266}.palette-btn:focus-visible{outline:2px solid var(--color-cinnamon-buff);outline-offset:4px}.palette-preview{display:flex;gap:6px;align-items:center}.preview-dot{width:20px;height:20px;border-radius:50%;border:2px solid rgba(255,255,255,.3);box-shadow:0 2px 4px #0003}.current-palette-display{background-color:#0000004d;border-radius:12px;padding:24px}.current-palette-display h4{color:var(--color-white);margin-bottom:20px;font-size:18px}.mini-swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.mini-swatch{display:flex;flex-direction:column;gap:6px}.mini-color-box{width:100%;height:60px;border-radius:8px;border:1px solid rgba(255,255,255,.2)}.mini-color-name{color:var(--color-white);font-size:13px;font-weight:600;text-transform:capitalize}.mini-color-hex{font-family:Courier New,monospace;color:#ffffff80;font-size:12px}@media(max-width:768px){.palette-buttons{grid-template-columns:1fr 1fr}.mini-swatches{grid-template-columns:1fr}}@media(max-width:480px){.palette-buttons{grid-template-columns:1fr}.palette-switcher{padding:20px}}.color-palette-section{margin-top:64px;padding-top:48px;border-top:1px solid rgba(255,255,255,.1)}.color-palette-section h2{margin-bottom:12px;color:var(--color-cinnamon-buff)}.palette-note{color:#fff9;font-size:14px;margin-bottom:32px}.color-palette-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.color-swatch{background-color:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-soft);padding:20px;transition:transform var(--duration-fast) var(--easing)}.color-swatch:hover{transform:translateY(-2px);border-color:var(--color-cinnamon-buff)}.color-box{width:100%;height:100px;border-radius:8px;margin-bottom:16px;border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 8px #0003}.color-info{display:flex;flex-direction:column;gap:6px}.color-name{font-weight:600;color:var(--color-white);font-size:16px;display:flex;align-items:center;gap:8px}.derived-badge{font-size:10px;padding:2px 6px;background-color:var(--color-aconite-violet);color:var(--color-white);border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.color-hex{font-family:Courier New,monospace;color:var(--color-cinnamon-buff);font-size:14px;font-weight:500}.color-var{font-family:Courier New,monospace;color:#ffffff80;font-size:12px}@media(max-width:768px){.color-palette-grid{grid-template-columns:1fr}}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}
