:root{
--bg-canvas:#13261d;--bg-surface:#1b3328;--bg-surface-hover:#22402f;--bg-outer:#0e1d16;
--text-primary:#efe6d2;--text-muted:#cfc3a6;--accent-primary:#b8923a;--accent-secondary:#d6b46a;
--border-subtle:rgba(184,146,58,.42);
--ease-kinetic:cubic-bezier(0.16,1,0.3,1);--shadow-elevation:0 12px 32px -4px rgba(0,0,0,.35);
--glow-accent:0 0 24px -4px var(--accent-primary);--glass-backdrop:blur(16px) saturate(180%);
--ico-tower:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23efe6d2' stroke-width='1.5'%3E%3Cpath d='M9 22l1.5-13h3L15 22zM9.5 9h5V5.5h-5zM12 2v3.5M6 22h12M15.5 7l4-2M8.5 7l-4-2'/%3E%3C/svg%3E");
--ico-book:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23efe6d2' stroke-width='1.5'%3E%3Cpath d='M3 5c3-1 6-1 9 1 3-2 6-2 9-1v14c-3-1-6-1-9 1-3-2-6-2-9-1zM12 6v14'/%3E%3C/svg%3E");
--ico-pin:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23efe6d2' stroke-width='1.5'%3E%3Cpath d='M12 22s7-7 7-12a7 7 0 0 0-14 0c0 5 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
--ico-lens:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23efe6d2' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Ccircle cx='12' cy='12' r='1.5'/%3E%3C/svg%3E");
--ico-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23efe6d2' stroke-width='1.5'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E");
--ico-person:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23efe6d2' stroke-width='1.5'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1-5 5-7 8-7s7 2 8 7'/%3E%3C/svg%3E");
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg-outer);color:var(--text-primary);font:400 1.0625rem/1.7 Charter,Cambria,Georgia,serif;overflow-wrap:anywhere;hyphens:auto;padding:2.75rem 3.5rem}
.frame{max-width:1360px;margin:0 auto;background:var(--bg-canvas);border:1px solid var(--accent-primary);position:relative}
h1,h2,h3{line-height:1.2;margin:0 0 .6em;overflow-wrap:anywhere;hyphens:auto;font-weight:700}
h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,3vw,2.15rem)}h3{font-size:1.22rem}
p{margin:0 0 1.1em}
a{color:var(--accent-secondary)}a:hover{color:var(--text-primary)}
:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:50;background:var(--accent-primary);color:var(--bg-canvas);padding:.5rem 1rem}
.wrap{max-width:1200px;margin:0 auto;padding:0 2rem}
.kicker{display:block;font-variant-caps:all-small-caps;letter-spacing:.14em;color:var(--accent-primary);font-size:1.05rem;font-weight:700;margin:0 0 .35rem}
.site-header{position:relative;z-index:10;background:var(--bg-canvas);border-bottom:1px solid var(--border-subtle)}
.home .site-header{background:transparent;border-bottom-color:transparent;margin-bottom:-5.4rem}
.bar{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;gap:1rem;min-height:5.4rem}
.brand{display:flex;align-items:center;gap:.55rem;color:var(--text-primary);text-decoration:none;font-weight:700;font-size:1.12rem;margin-right:auto}
.brand-mark{width:32px;height:32px;flex:none}
#site-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1.1rem}
#site-nav a{color:var(--text-primary);text-decoration:none;font-variant-caps:all-small-caps;letter-spacing:.08em;font-size:1.02rem;padding:.25rem 0;border-bottom:1px solid transparent;white-space:nowrap;transition:color .3s,border-color .3s}
#site-nav a:hover,#site-nav a[aria-current=page]{color:var(--accent-secondary);border-bottom-color:var(--accent-primary)}
.menu-toggle{display:none;background:transparent;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:999px;width:44px;height:44px;font-size:1.5rem;line-height:1;cursor:pointer}
.btn{display:inline-block;background:var(--accent-primary);color:var(--bg-canvas);border:0;border-radius:999px;padding:.85rem 1.9rem;font:700 1.05rem/1 Charter,Cambria,Georgia,serif;font-variant-caps:all-small-caps;letter-spacing:.1em;text-decoration:none;cursor:pointer;transition:transform .4s var(--ease-kinetic),box-shadow .4s var(--ease-kinetic)}
.btn:hover{color:var(--bg-canvas);transform:translateY(-3px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}
.hero{position:relative;min-height:100vh;display:grid;place-items:center;text-align:center;isolation:isolate;overflow:hidden}
.hero-art{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(19,38,29,.45) 0%,rgba(10,22,16,.75) 55%,rgba(3,6,4,.92) 100%)}
.hero::after{content:"";position:absolute;width:42vmax;height:42vmax;left:50%;top:18%;transform:translateX(-50%);z-index:-1;background:radial-gradient(circle,rgba(184,146,58,.22),transparent 65%);animation:orb 12s ease-in-out infinite}
@keyframes orb{50%{transform:translate(-46%,4%) scale(1.12);opacity:.7}}
.hero-inner{padding:8rem 1.5rem 5rem;max-width:58rem}
.hero p{color:var(--text-muted);font-size:1.2rem;max-width:44rem;margin:0 auto 2rem}
.beam{animation:pulse 6s ease-in-out infinite}.beam.b2{animation-delay:3s}
@keyframes pulse{50%{opacity:.06}}
.section{padding:4.5rem 0;border-top:1px solid var(--border-subtle)}
.stat-band{padding:2.5rem 0}
.stat-band h2.kicker{font-size:1.05rem;text-align:center;margin-bottom:1rem}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));border-top:3px double var(--accent-primary);border-bottom:3px double var(--accent-primary)}
.stat{padding:1.4rem 1.25rem;border-left:1px solid var(--border-subtle)}.stat:first-child{border-left:0}
.stat b{display:block;font-size:1.9rem;line-height:1.1;color:var(--text-primary)}
.stat small{display:block;color:var(--text-muted);font-size:.95rem;margin-top:.35rem}
.split{display:grid;grid-template-columns:3fr 2fr;gap:3rem;align-items:start}
.panel{background:var(--bg-surface);border:1px solid var(--border-subtle);padding:2rem}
.lede{font-size:1.2rem;color:var(--text-muted);max-width:62ch}
.muted{color:var(--text-muted)}
.rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--border-subtle)}
.rows li{--ico:var(--ico-tower);display:grid;grid-template-columns:26px 1fr;gap:1rem;padding:1rem .25rem;border-bottom:1px solid var(--border-subtle);transition:background .4s var(--ease-kinetic),padding .4s var(--ease-kinetic)}
.rows li::before{content:"";width:24px;height:24px;margin-top:.2rem;background:var(--ico) center/contain no-repeat}
.rows li:hover{background:var(--bg-surface-hover);padding-left:.75rem}
.rows .i-book{--ico:var(--ico-book)}.rows .i-pin{--ico:var(--ico-pin)}.rows .i-lens{--ico:var(--ico-lens)}.rows .i-arrow{--ico:var(--ico-arrow)}.rows .i-person{--ico:var(--ico-person)}
.rows strong{color:var(--text-primary)}.rows span{color:var(--text-muted)}
.rows.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));column-gap:2.5rem;border-top:0}
.rows.cols li{border-top:0}
.tablist{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 1.25rem}
.tab{background:transparent;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:999px;padding:.6rem 1.3rem;font:700 1rem/1 Charter,Cambria,Georgia,serif;font-variant-caps:all-small-caps;letter-spacing:.1em;cursor:pointer;transition:all .35s var(--ease-kinetic)}
.tab:hover{border-color:var(--accent-primary);transform:translateY(-2px)}
.tab[aria-selected=true]{background:var(--accent-primary);color:var(--bg-canvas);border-color:var(--accent-primary)}
.tabpanel{display:grid;grid-template-columns:150px 1fr;gap:2rem;align-items:center;padding:2rem;background:var(--bg-surface);border:1px solid var(--border-subtle);border-top:2px solid var(--accent-primary)}
.tabpanel[hidden]{display:none}
.emblem{width:100%;max-width:200px;height:auto;display:block}
.acc{border-top:1px solid var(--border-subtle)}
.acc details{border-bottom:1px solid var(--border-subtle)}
.acc summary{cursor:pointer;list-style:none;padding:1.1rem 2.5rem 1.1rem 0;font-weight:700;font-size:1.1rem;position:relative}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";position:absolute;right:.25rem;top:.9rem;color:var(--accent-primary);font-size:1.5rem;line-height:1}
.acc details[open] summary::after{content:"\2212"}
.acc details>div{padding:0 0 1.25rem;color:var(--text-muted);max-width:72ch}
.page-head{padding:4rem 0 3rem;background:linear-gradient(180deg,var(--bg-surface),var(--bg-canvas))}
.page-head .wrap{display:grid;grid-template-columns:1fr 200px;gap:2.5rem;align-items:center}
.page-head.plain .wrap{grid-template-columns:1fr}
.prose{max-width:70ch;margin:0 auto}
.prose h2{margin-top:2.2rem;padding-top:1.4rem;border-top:1px solid var(--border-subtle)}
.prose h2:first-child{margin-top:0;border-top:0;padding-top:0}
.prose ul{padding-left:1.2rem}.prose li{margin-bottom:.5rem}
.tool{background:var(--bg-surface);border:1px solid var(--accent-primary);padding:2rem;box-shadow:0 0 0 7px var(--bg-canvas),0 0 0 8px var(--border-subtle);margin:1rem 0}
.tool label{display:block;font-variant-caps:all-small-caps;letter-spacing:.12em;color:var(--accent-primary);font-weight:700;margin:1rem 0 .3rem}
.tool input,.tool select,.tool textarea{width:100%;background:var(--bg-canvas);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:0;padding:.7rem .8rem;font:inherit}
.tool textarea{min-height:9rem;resize:vertical}
.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.preview{white-space:pre-wrap;background:var(--bg-canvas);border:1px dashed var(--border-subtle);padding:1rem;font:inherit;font-size:.95rem;color:var(--text-muted);min-height:6rem;margin:1.5rem 0 0}
.status{min-height:1.5em;color:var(--accent-secondary);margin-top:.75rem}
.site-footer{border-top:3px double var(--accent-primary);padding:3rem 0 1.5rem;background:var(--bg-surface);color:var(--text-muted);font-size:.96rem}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem}
.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin-bottom:.4rem}
.legal-line{border-top:1px solid var(--border-subtle);margin-top:2rem;padding-top:1.25rem;font-size:.9rem}
.js .reveal{opacity:0;transform:translateY(24px);transition:all .7s var(--ease-kinetic)}
.js .reveal.reveal-visible{opacity:1;transform:translateY(0)}
@media (max-width:1024px){body{padding:1.5rem}}
@media (max-width:960px){
.menu-toggle{display:block}
#site-nav{position:absolute;left:0;right:0;top:100%;background:var(--bg-surface);border-top:1px solid var(--accent-primary);border-bottom:1px solid var(--accent-primary);max-height:0;overflow:hidden;visibility:hidden;transition:max-height .45s var(--ease-kinetic),visibility 0s .45s}
#site-nav.open{max-height:34rem;visibility:visible;transition:max-height .45s var(--ease-kinetic)}
#site-nav ul{flex-direction:column;gap:0;padding:.5rem 2rem 1rem}
#site-nav li{border-bottom:1px solid var(--border-subtle)}
#site-nav a{display:block;padding:.8rem 0;font-size:1.15rem;border-bottom:0}}
@media (max-width:768px){body{padding:.75rem}.split,.page-head .wrap,.tabpanel{grid-template-columns:1fr}.emblem{max-width:120px}.stat{border-left:0;border-top:1px solid var(--border-subtle)}.stat:first-child{border-top:0}}
@media (max-width:480px){body{padding:.4rem}.wrap,.bar{padding-left:1.1rem;padding-right:1.1rem}.section{padding:3rem 0}.panel,.tool,.tabpanel{padding:1.25rem}.brand span{font-size:1rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}