:root{--paper:#f7f6f2;--ink:#23292a;--muted:#646966;--line:#d8dcd5;--green:#355b43;--pale:#e5ebdf;--accent:#7651a3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{cursor:pointer}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{border:1px solid var(--line);background:transparent;color:inherit;border-radius:8px;padding:10px 16px}button:hover{background:var(--pale)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}#progress{position:fixed;top:0;left:0;height:3px;background:var(--green);width:100%;transform:scaleX(0);transform-origin:left;z-index:100}header{height:84px;position:sticky;top:0;z-index:20;background:#f7f6f2f2;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 4.3vw;gap:12px}.brand{font-size:11px;letter-spacing:1.6px;font-weight:700;display:flex;align-items:center;gap:12px}.brand-icon{font:italic 32px Georgia;letter-spacing:-3px;margin-right:8px}.edition{font-size:9px;color:var(--muted);font-weight:400}.head-actions{display:flex;gap:8px}.head-actions button{font-size:12px}main{max-width:1600px;margin:auto}.hero{min-height:calc(100svh - 84px);padding:70px 5vw 50px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:2vw}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:var(--green)}.eyebrow i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:8px}h1{font-size:clamp(54px,6.6vw,105px);font-weight:450;line-height:1.04;letter-spacing:-5px;margin:30px 0}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--green)}.hero-copy>p{font-size:19px;line-height:1.6;color:var(--muted);margin-bottom:30px}.primary{display:inline-flex;gap:35px;align-items:center;background:var(--green);color:#fff;padding:14px 22px;border-radius:5px;font-size:13px}.primary:hover{background:#254532}.text-link{display:inline-block;margin:15px;font-size:12px;color:var(--muted)}.hero-stats{display:flex;gap:35px;border-top:1px solid var(--line);padding-top:28px;margin-top:45px}.hero-stats strong{display:block;font-size:32px;font-weight:450;letter-spacing:-1px}.hero-stats span{font-size:10px;color:var(--muted)}.hero-art{position:relative;aspect-ratio:1;min-width:0;background:radial-gradient(ellipse at center,#e8eddf77,transparent 65%)}.art-note,.art-foot{position:absolute;font-size:8px;letter-spacing:2px;color:var(--muted);left:0;right:0;text-align:center;top:0}.art-foot{top:auto;bottom:0}.orbit{border:1px dashed #c6cebd;border-radius:50%;position:absolute;inset:12%}.orbit-two{inset:28%;border-style:solid}.hero-lines{position:absolute;width:100%;height:100%}.hero-lines path{stroke:#bdc9b5;fill:none;stroke-width:1.5;stroke-dasharray:600;animation:draw 2s ease both}.core,.sat{position:absolute;border:1px solid var(--line);box-shadow:0 10px 25px #23302707}.core{left:35%;top:30%;width:31%;background:var(--green);color:#fff;border-radius:10px;padding:22px;z-index:2}.core span{font-size:7px;letter-spacing:1px}.core b{display:block;font-size:clamp(18px,2.3vw,34px);line-height:1.15;margin:10px 0;font-weight:450}.core small{font-size:8px;color:#d9e6d8}.sat{width:30%;padding:17px;background:#fffdf9;border-radius:7px;animation:arrive .9s both;animation-delay:.3s}.sat span{display:block;font-size:7px;color:var(--muted);letter-spacing:1px}.sat b{font-size:clamp(12px,1.6vw,22px);font-weight:500;display:block;margin:6px 0}.sat small{font-size:8px;color:var(--muted)}.s1{top:13%;left:4%}.s2{top:9%;right:3%;animation-delay:.4s}.s3{top:46%;left:-1%;animation-delay:.5s}.s4{top:45%;right:-1%;animation-delay:.6s}.s5{bottom:9%;left:11%;animation-delay:.7s}.s6{bottom:11%;right:9%;animation-delay:.8s}.map-section,.catalog-section{padding:100px 6vw;border-top:1px solid var(--line)}.section-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.section-top p,.section-top a{font-size:11px;color:var(--muted)}h2{font-size:clamp(36px,4vw,62px);line-height:1.12;font-weight:450;letter-spacing:-2px;margin:28px 0}.intro{color:var(--muted);max-width:580px}.tree-root{margin:55px auto 0;width:260px;text-align:center;background:var(--green);color:white;border-radius:8px;padding:23px}.tree-root span{font-size:9px;letter-spacing:2px}.tree-root strong{display:block;font-size:23px;font-weight:500}.tree-root small{font-size:11px;color:#dae8d6}.tree-stem{height:40px;width:1px;background:#b4c5b0;margin:auto}.org-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 14px;border-top:1px solid #b4c5b0;padding-top:24px}.org-node{position:relative;background:#fffdf9;border:1px solid var(--line);border-radius:6px;padding:20px;text-align:left;transition:background .2s,box-shadow .2s}.org-node:before{content:'';height:25px;width:1px;position:absolute;top:-25px;left:50%;background:#b4c5b0}.org-node:hover{box-shadow:0 6px 20px #23302710;background:var(--pale)}.node-top{display:flex;justify-content:space-between;font-size:9px;color:var(--green);letter-spacing:1px}.org-node b{display:block;font-size:16px;margin:9px 0;font-weight:550}.org-node small{font-size:10px;color:var(--muted)}.map-caption{font-size:11px;color:var(--muted);max-width:700px;margin:28px auto 0;text-align:center}.departments-layout{border-top:1px solid var(--line);display:grid;grid-template-columns:320px 1fr;gap:6vw;padding:80px 6vw}.side{position:sticky;top:105px;align-self:start;max-height:calc(100svh - 120px);overflow:auto;scrollbar-width:thin}.side h2{font-size:34px}.side>p{font-size:12px;color:var(--muted);max-width:230px}.side nav{display:flex;flex-direction:column;margin-top:25px}.side nav a{font-size:11px;line-height:1.45;padding:6px 10px;border-left:1px solid var(--line);transition:background .2s}.side nav a.active{border-left:2px solid var(--green);color:var(--green);background:var(--pale);font-weight:600}.chapter{padding:25px 0 80px;scroll-margin-top:95px}.chapter-head{display:flex;gap:18px;align-items:center}.number{font:italic 40px Georgia;color:#a0ad98}.chapter h3{font-size:29px;letter-spacing:-1px;font-weight:500;line-height:1.2;margin:12px 0}.chapter-head p{font-size:12px;color:var(--muted);margin:4px 0}.lead{position:relative;margin:26px 0 26px;border:1px solid #bbc8b6;background:var(--pale);padding:17px 21px;border-radius:7px}.lead:after{content:'';position:absolute;bottom:-27px;left:28px;width:1px;height:26px;background:#b4c5b0}.lead span{font-size:9px;letter-spacing:1.2px;color:var(--green);display:block}.lead button{padding:4px 0;border:none;font-size:16px;font-weight:550;overflow-wrap:anywhere;text-align:left}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-left:18px;border-left:1px solid #b4c5b0;margin-left:28px}.skill{background:#fffefa;text-align:left;padding:19px;border-radius:6px;border:1px solid var(--line);position:relative;min-width:0;transition:background .2s}.skill:hover{background:#eaf0e5}.skill b{font-weight:550;font-size:13px;display:block;overflow-wrap:anywhere}.skill p{font-size:12px;line-height:1.6;color:var(--muted);margin:9px 0 0}.skill .tag{display:block;font-size:8px;letter-spacing:1px;color:var(--green);margin-bottom:10px}.chapter .expand{margin:20px 0 0 47px;font-size:11px;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:8px 0}.chapter-footer{font-size:10px;color:var(--muted);padding-left:47px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}.filters{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-top:40px}label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:500}input,select{min-width:0;background:#fffefa;border:1px solid #c8cec3;padding:14px;border-radius:6px;color:var(--ink);font-size:14px;width:100%}#result-count{font-size:12px;color:var(--muted)}.results{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.results .skill p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.more{display:block;margin:30px auto}.closing{border-top:1px solid var(--line);text-align:center;padding:100px 20px;background:#e9ede3}.closing h2{margin-bottom:40px}footer{display:flex;gap:35px;align-items:start;padding:38px 6vw;font-size:11px}footer b{white-space:nowrap}footer p{margin:0;color:var(--muted);font-size:10px}footer button{font-size:10px;text-align:left;min-width:160px}dialog{border:1px solid var(--line);border-radius:12px;padding:45px;max-width:600px;width:calc(100% - 30px);background:var(--paper);color:var(--ink)}dialog::backdrop{background:#1f29285c;backdrop-filter:blur(5px)}dialog h2{font-size:30px;overflow-wrap:anywhere}dialog p{font-size:15px;line-height:1.8}dialog .metadata{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}#close-dialog{position:absolute;right:10px;top:8px;border:none;font-size:25px;padding:0 10px}#tour-status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--green);color:white;border-radius:30px;padding:12px 20px;font-size:11px;z-index:25;max-width:90vw;text-align:center}.skip{position:fixed;top:-60px}.skip:focus{top:10px;background:white;padding:10px;z-index:100}.vertical main{max-width:430px}.vertical .hero,.vertical .departments-layout{display:block}.vertical .hero{padding:40px 22px}.vertical h1{font-size:58px;letter-spacing:-3px}.vertical .hero-art{margin-top:45px}.vertical .side{display:none}.vertical .org-grid,.vertical .results,.vertical .skills-grid{grid-template-columns:1fr}.vertical .filters{grid-template-columns:1fr}.vertical .map-section,.vertical .catalog-section,.vertical .departments-layout{padding:50px 22px}.vertical footer{flex-direction:column}.vertical .core b{font-size:23px}.vertical .sat b{font-size:16px}.vertical .sat{padding:12px}.vertical .hero-stats{gap:28px}.vertical .section-top{align-items:start}.vertical .hero-copy>p{font-size:17px}.vertical .skill p{font-size:14px}.vertical .skill b{font-size:14px}
@keyframes arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes draw{from{stroke-dashoffset:600}to{stroke-dashoffset:0}}
@media(min-width:1600px){.hero{padding-left:80px;padding-right:80px}}@media(max-width:1000px){.edition{display:none}.departments-layout{grid-template-columns:220px 1fr;gap:30px}.side h2{font-size:28px}.org-grid{grid-template-columns:repeat(3,1fr)}.results{grid-template-columns:1fr 1fr}.skills-grid{grid-template-columns:1fr}.hero-stats{gap:25px}.sat{padding:12px}.core{padding:15px}h1{letter-spacing:-3px}.hero{padding-top:45px}}@media(max-width:700px){header{padding:0 18px;height:70px}.brand{font-size:9px;letter-spacing:1px;gap:4px}.brand-icon{font-size:28px}.head-actions button{font-size:10px;padding:8px}.hero{display:block;padding:40px 24px}.hero h1{font-size:62px;letter-spacing:-3px}.hero-art{margin-top:40px;max-width:500px;margin-inline:auto}.hero-stats{gap:35px;margin-top:25px}.hero-stats strong{font-size:28px}.hero-copy>p{font-size:17px}.core b{font-size:24px}.sat b{font-size:17px}.sat small{font-size:7px}.core{padding:15px}.map-section,.catalog-section{padding:60px 24px}.org-grid{grid-template-columns:1fr 1fr}.org-node{padding:14px}.org-node b{font-size:13px}.org-node small{font-size:9px}.departments-layout{display:block;padding:35px 24px}.side{position:static;max-height:none;margin-bottom:45px}.side nav{display:none}.side h2{font-size:37px}.side>p{max-width:none}.chapter h3{font-size:25px}.chapter{padding-bottom:55px}.skills-grid{margin-left:12px;padding-left:12px}.lead:after{left:12px}.chapter .expand,.chapter-footer{margin-left:25px;padding-left:0}.filters,.results{grid-template-columns:1fr}.closing{padding:65px 22px}footer{flex-direction:column;gap:18px}.section-top{align-items:start}.section-top a{font-size:10px}.skill b{font-size:14px}.skill p{font-size:14px}h2{letter-spacing:-1px}.eyebrow{font-size:9px}.text-link{margin-left:0;display:block}.hero-art .art-note{font-size:7px}dialog{padding:35px 24px}.chapter-head{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media print{header,.side,.head-actions,.filters,.more,.closing{display:none}.reveal{opacity:1;transform:none}.departments-layout{display:block}.chapter{break-inside:avoid}.hero{min-height:auto}body{background:white}}
