:root{--bg-canvas:#160f2e;--bg-surface:#291c43;--bg-surface-hover:#38264f;--text-primary:#fff;--text-muted:#ddd2e7;--accent-primary:#e0409b;--accent-secondary:#c4dd63;--border-subtle:#655174;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(0,0,0,.25);--glow-accent:0 0 24px -4px #e0409b66;--glass-backdrop:blur(16px) saturate(180%)}
*{box-sizing:border-box}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:18px/1.65 Charter,Cambria,Georgia,serif;overflow-wrap:anywhere;hyphens:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;text-wrap:balance}h1{font-size:clamp(2.2rem,5.5vw,4.6rem);max-width:21ch;margin-bottom:.4em}h2{font-size:clamp(1.8rem,3.4vw,2.8rem)}h3{font-size:1.45rem}a{color:var(--accent-secondary);text-underline-offset:4px}a:hover{color:#fff}button,input,select,textarea{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent-secondary);outline-offset:5px}::selection{background:var(--accent-secondary);color:var(--bg-canvas)}.wrap{width:min(1100px,calc(100% - 48px));margin:0 auto}.site-header{position:relative;padding:22px 24px 15px;border-bottom:1px solid var(--border-subtle)}.brand{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:bold;font-size:1.25rem;max-width:calc(100% - 54px)}.brand-mark{display:inline-grid;place-items:center;flex-shrink:0;width:34px;height:34px;border:1px solid var(--accent-secondary);border-radius:50%;color:var(--accent-secondary);font-size:24px}.site-nav{display:flex;gap:12px 24px;flex-wrap:wrap;margin-top:17px}.site-nav a{color:var(--text-muted);font-size:.92rem;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent-secondary);text-decoration:underline}.menu-toggle{display:none;position:absolute;right:20px;top:20px;color:#fff;background:var(--bg-surface);border:1px solid var(--border-subtle);font-size:1.8rem;width:42px;height:44px;line-height:1}.skip{position:absolute;top:-100px;left:20px;z-index:10;background:var(--accent-secondary);color:var(--bg-canvas);padding:8px 16px}.skip:focus{top:8px}.hero{padding:40px 0 32px;background:radial-gradient(ellipse at 85% 0%,#e0409b29,transparent 65%),var(--bg-canvas)}.eyebrow,.system-label,.table-label{font-variant:small-caps;letter-spacing:.09em;font-weight:bold}.eyebrow{color:var(--accent-secondary);font-size:.9rem;margin-bottom:12px}.lede{max-width:66ch;color:var(--text-muted);font-size:1.15rem}.band{padding:58px 0}.band.alt{background:var(--bg-surface)}.band.glow{background:radial-gradient(ellipse at 10% 70%,#c4dd6315,transparent 60%),radial-gradient(ellipse at 95% 0%,#e0409b20,transparent 60%),var(--bg-canvas);background-size:200% 200%;animation:gradientShift 12s ease infinite}.section-heading{max-width:72ch;margin-bottom:28px}.section-number{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--accent-secondary);border-radius:50%;color:var(--accent-secondary);font-size:.9rem;margin-bottom:15px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:28px;align-items:start}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center}.system-card{background:var(--bg-canvas);border:1px solid var(--border-subtle);transition:transform .4s var(--ease-kinetic),box-shadow .4s var(--ease-kinetic),background .4s}.system-card:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent);background:var(--bg-surface-hover)}.photo{aspect-ratio:4/3;background:#38264f}.photo.wide{aspect-ratio:16/9}.photo.square{aspect-ratio:1}.card-body{padding:0 25px 25px}.system-label{position:relative;display:table;max-width:100%;margin:-18px 0 22px;padding:5px 13px;background:var(--accent-secondary);color:var(--bg-canvas);font-size:.85rem}.system-label.rose{background:var(--accent-primary);color:#160f2e}.card-body p{color:var(--text-muted)}.button{display:inline-block;border:0;background:var(--accent-primary);color:#160f2e;font-weight:bold;text-decoration:none;padding:11px 19px;box-shadow:4px 4px 0 var(--accent-secondary);transition:transform .3s var(--ease-kinetic),box-shadow .3s var(--ease-kinetic);margin:5px 8px 5px 0}.button:hover{color:#160f2e;transform:translate(3px,3px);box-shadow:1px 1px 0 var(--accent-secondary)}.button.secondary{background:var(--accent-secondary);box-shadow:4px 4px 0 var(--accent-primary)}.note{border-left:3px solid var(--accent-secondary);padding:14px 20px;background:var(--bg-surface);color:var(--text-muted);margin:28px 0}.alt .note{background:var(--bg-canvas)}.reading{max-width:70ch;margin:0 auto}.reading h2{margin-top:1.6em;font-size:2rem}.reading h3{margin-top:1.4em}.reading li{margin-bottom:10px}.reading p{color:var(--text-muted)}.reading strong{color:#fff}.reading .photo{margin:30px 0}.checklist{padding-left:1.3em}.checklist li{padding-left:5px;margin:12px 0}.flow{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:25px 0}.flow span{border:1px solid var(--border-subtle);padding:12px 16px;background:var(--bg-surface)}.flow b{color:var(--accent-secondary)}.table-scroll{overflow-x:auto;margin:25px 0}table{width:100%;border-collapse:collapse;min-width:510px;font-size:.95rem}th,td{text-align:left;vertical-align:top;padding:14px;border:1px solid var(--border-subtle)}th{background:var(--bg-surface);color:var(--accent-secondary)}caption{text-align:left;font-weight:bold;margin-bottom:12px}.mini{font-size:.9rem;color:var(--text-muted)}.scenario{padding:28px;border-top:3px solid var(--accent-primary);background:var(--bg-surface)}details{border-bottom:1px solid var(--border-subtle);padding:20px 0}summary{cursor:pointer;font-weight:bold;font-size:1.12rem;color:var(--accent-secondary)}details p{margin:15px 0 0}.site-footer{padding:38px 0;border-top:1px solid var(--border-subtle);font-size:.9rem;color:var(--text-muted)}.footer-links{display:flex;gap:12px 24px;flex-wrap:wrap;margin:15px 0}.site-footer p{margin:8px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-weight:bold;margin-bottom:7px}input,select,textarea{width:100%;max-width:100%;background:var(--bg-canvas);color:#fff;border:1px solid var(--border-subtle);border-radius:0;padding:12px}textarea{min-height:155px;resize:vertical}select option{background:var(--bg-canvas)}.field{margin-bottom:20px}.preview{white-space:pre-wrap;overflow-wrap:anywhere;min-height:160px;background:var(--bg-canvas);padding:22px;border:1px solid var(--border-subtle);font:inherit;color:var(--text-muted)}.status{min-height:1.6em;color:var(--accent-secondary)}.preferences{padding:25px;background:var(--bg-surface);margin:25px 0}.js-ready .reveal{opacity:0;transform:translateY(25px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.js-ready .reveal.reveal-visible{opacity:1;transform:translateY(0)}[hidden]{display:none!important}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@media(min-width:1025px){.site-nav{gap:25px}.hero.home{padding:32px 0 24px}.home h1{font-size:3.5rem;max-width:24ch}}@media(min-width:769px) and (max-width:1024px){.site-nav{gap:10px 20px}.split{gap:26px}.band{padding:44px 0}}@media(min-width:481px) and (max-width:768px){.wrap{width:calc(100% - 36px)}.band{padding:38px 0}.split{grid-template-columns:1fr}.hero{padding:32px 0}}@media(max-width:767px){.js-ready .menu-toggle{display:block}.js-ready .site-nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:22px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation);z-index:5}.js-ready .site-nav.is-open{display:grid;gap:16px;animation:menuDown .25s var(--ease-kinetic)}.site-header{padding:20px}.brand{font-size:1rem}.form-grid{grid-template-columns:1fr;gap:0}.split{grid-template-columns:1fr}}@media(max-width:480px){.wrap{width:calc(100% - 32px)}.band{padding:34px 0}.hero{padding:28px 0 22px}h1{font-size:2.3rem}.brand{gap:8px;font-size:.91rem}.brand-mark{width:28px;height:28px;font-size:20px}.card-body{padding:0 20px 20px}.split{gap:25px}.flow{gap:8px}.flow span{padding:8px}.button{font-size:.95rem}.site-footer{padding:28px 0}}@keyframes menuDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-ready .reveal{opacity:1;transform:none}}