/* RBGP Academy + Global Observatory / layered on the original design */
.academy-section{background:radial-gradient(ellipse at 0% 18%,rgba(64,178,203,.065),transparent 44%),linear-gradient(180deg,#0b151e 0%,#081219 100%)}
.academy-section .section-top,.observatory-section .section-top{margin-bottom:72px}
.academy-head,.observatory-heading{display:grid;grid-template-columns:1.13fr .87fr;gap:9%;align-items:end;margin-bottom:54px}
.academy-head .section-heading{font-size:clamp(61px,6.2vw,96px)}
.academy-intro,.observatory-intro{padding-bottom:8px;max-width:490px}
.academy-intro p,.observatory-intro p{color:#a5bdc8;font-size:17px;line-height:1.85;margin:0 0 23px}
.academy-flag{display:inline-flex;align-items:center;gap:11px;color:var(--cyan);font:10px var(--font-mono);letter-spacing:1px;border-top:1px solid var(--line);padding-top:21px}.academy-flag span{color:var(--purple);font-size:17px}
.academy-simple-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:65px}
.academy-simple-grid article{min-height:258px;border:1px solid var(--line-bright);padding:27px 28px;background:linear-gradient(145deg,#10222b,#0a1720);display:flex;flex-direction:column;position:relative;overflow:hidden}
.academy-simple-grid article:nth-child(2){background:linear-gradient(145deg,#1a2033,#0b151d)}.academy-simple-grid article:nth-child(3){background:linear-gradient(145deg,#10252e,#0b141d)}
.academy-simple-kicker,.academy-code{font:10px var(--font-mono);color:#85a5b6;letter-spacing:.7px}.academy-simple-icon{position:absolute;top:28px;right:24px;font:45px var(--font-head);line-height:1;color:var(--cyan);opacity:.32}.academy-simple-grid article:nth-child(2) .academy-simple-icon{color:var(--purple)}
.academy-simple-grid h3{font:700 23px/1.19 var(--font-head);letter-spacing:-.6px;margin:auto 0 13px;max-width:340px}.academy-simple-grid p{font:14px/1.65 var(--font-body);color:#8ba8b7;max-width:360px;margin:0}
.academy-demo{border:1px solid rgba(113,210,229,.28);background:#0a131c;margin-bottom:88px;box-shadow:0 40px 90px rgba(0,0,0,.14)}
.academy-demo-heading{display:flex;justify-content:space-between;align-items:center;padding:28px 32px;border-bottom:1px solid var(--line);gap:25px}.academy-demo-heading .mini-label{margin-bottom:8px}.academy-demo-heading h3{font:700 clamp(23px,2.8vw,37px)/1.18 var(--font-head);letter-spacing:-.6px;margin:0}.academy-demo-counter{font:12px var(--font-mono);color:#66808d;white-space:nowrap}.academy-demo-counter span{font:700 28px var(--font-mono);color:var(--cyan)}
.academy-demo-grid{display:grid;grid-template-columns:minmax(285px,.85fr) minmax(0,1.15fr)}.academy-steps{border-right:1px solid var(--line)}
.academy-step{width:100%;min-height:92px;background:transparent;text-align:left;border:0;border-bottom:1px solid rgba(158,199,216,.12);display:flex;gap:17px;align-items:center;padding:18px 21px;color:var(--ink);transition:background .2s}.academy-step:last-child{border-bottom:0}.academy-step:hover{background:#111f2b}.academy-step.is-active{background:linear-gradient(90deg,rgba(77,220,236,.13),rgba(44,86,104,.08));box-shadow:inset 3px 0 0 var(--cyan)}.academy-step-num{font:10px var(--font-mono);color:var(--cyan);min-width:22px}.academy-step-inner{display:flex;flex-direction:column;gap:5px;min-width:0}.academy-step strong{font:700 15px var(--font-head)}.academy-step small{font:12px/1.45 var(--font-body);color:#88a3b1}.academy-step-arrow{margin-left:auto;color:var(--purple);font:19px var(--font-head);opacity:.65}
.academy-schematic{padding:28px 34px 24px;min-width:0;display:flex;flex-direction:column;position:relative;background:radial-gradient(ellipse at 51% 23%,rgba(67,176,194,.10),transparent 61%),#0b1822}.academy-schematic-label{color:#72909f;font:9px var(--font-mono);letter-spacing:1px;margin-bottom:27px}
.academy-diagram{display:grid;grid-template-columns:1fr minmax(65px,.75fr) 1fr;align-items:center;min-height:180px;gap:0}.academy-node{border:1px solid rgba(109,213,228,.45);background:linear-gradient(145deg,#14323a,#0e1e2b);padding:16px 11px;text-align:center;min-width:0;box-shadow:0 12px 33px rgba(0,0,0,.2);z-index:2}.academy-node-right{border-color:rgba(186,171,255,.4);background:linear-gradient(145deg,#1a1d37,#111825)}.academy-node span,.academy-node small{display:block;font:9px var(--font-mono);color:#79aab8;letter-spacing:.5px;overflow-wrap:anywhere}.academy-node strong{display:block;font:700 clamp(13px,1.6vw,20px) var(--font-head);color:#d7fcff;padding:11px 0;overflow-wrap:anywhere}.academy-node-right strong{color:#dacfff}.academy-beam{height:2px;background:linear-gradient(90deg,var(--cyan),var(--purple));position:relative}.academy-signal{display:block;position:absolute;top:-5px;left:-6px;width:12px;height:12px;border:2px solid #caffff;border-radius:50%;background:#165e67;box-shadow:0 0 13px rgba(77,232,245,.6);animation:academy-pulse 3s ease-in-out infinite}.academy-beam-label{position:absolute;left:50%;top:-32px;transform:translateX(-50%);white-space:nowrap;color:var(--cyan);font:8px var(--font-mono)}
@keyframes academy-pulse{0%,100%{left:-3px;opacity:0}15%{opacity:1}85%{opacity:1}95%{left:calc(100% - 9px);opacity:0}}
.academy-schematic[data-step="4"] .academy-beam,.academy-schematic[data-step="5"] .academy-beam{background:linear-gradient(270deg,var(--cyan),var(--purple))}.academy-schematic[data-step="4"] .academy-signal,.academy-schematic[data-step="5"] .academy-signal{animation-direction:reverse}
.academy-schematic-description{margin-top:auto;border-top:1px solid var(--line);padding-top:21px}.academy-schematic-description h4{font:700 27px/1.1 var(--font-head);letter-spacing:-.6px;margin:12px 0 10px}.academy-schematic-description>p{font-size:14px;color:#a6bec7;line-height:1.6;max-width:620px}.academy-example-path{border:1px solid rgba(105,194,219,.15);color:#9deef2;padding:15px;background:#08121b;font:12px var(--font-mono);overflow-wrap:anywhere;white-space:normal}.academy-example-note{font-size:12px!important;color:#88a7b6!important;margin:13px 0 0}
.academy-demo-actions{display:flex;gap:17px;align-items:center;margin-top:27px}.academy-demo-actions button{border:1px solid rgba(104,212,229,.34);background:#12222d;color:var(--cyan);padding:12px 14px;font:10px var(--font-mono);letter-spacing:.7px}.academy-demo-actions button:hover:not(:disabled){background:var(--cyan);color:#071217}.academy-demo-actions button:disabled{opacity:.3;cursor:not-allowed}.academy-progress-track{height:3px;background:#1d313d;flex:1;min-width:20px}.academy-progress-track>span{display:block;background:linear-gradient(90deg,var(--cyan),var(--purple));height:100%;width:16.7%;transition:width .3s}
.academy-bottom-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:65px;align-items:start;margin-bottom:43px}.academy-subheading{margin-bottom:30px}.academy-subheading h3,.observatory-sources-heading h3{font:700 clamp(25px,2.6vw,35px)/1.18 var(--font-head);letter-spacing:-.9px;margin:0;max-width:600px}.academy-subheading .mini-label{margin-bottom:13px}
.academy-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.academy-term{background:linear-gradient(140deg,rgba(16,33,45,.82),rgba(7,15,23,.95));border:1px solid var(--line);padding:19px;min-width:0;min-height:182px;transition:border-color .2s}.academy-term:hover{border-color:rgba(101,223,237,.38)}.academy-term-index{font:9px var(--font-mono);color:#577987;letter-spacing:.3px}.academy-term h3{font:700 17px var(--font-head);margin:25px 0 10px;letter-spacing:-.3px}.academy-term h3 span{display:block;font:9px var(--font-mono);letter-spacing:.2px;color:var(--purple);margin-top:7px}.academy-term p{font:12px/1.65 var(--font-body);color:#91acb9;margin:0}
.academy-readmore{min-width:0}.academy-chapters{border-top:1px solid var(--line-bright)}.academy-chapter{border-bottom:1px solid var(--line-bright)}.academy-chapter summary{list-style:none;display:flex;align-items:flex-start;gap:15px;padding:19px 3px;cursor:pointer;min-width:0}.academy-chapter summary::-webkit-details-marker{display:none}.academy-chapter-num{font:10px var(--font-mono);color:var(--cyan);white-space:nowrap;padding-top:6px}.academy-chapter summary strong{font:600 17px/1.35 var(--font-head);flex:1;letter-spacing:-.3px}.academy-chapter-plus{color:var(--purple);font:24px var(--font-head);line-height:1}.academy-chapter[open] .academy-chapter-plus{transform:rotate(45deg)}.academy-chapter[open] summary strong{color:var(--cyan)}.academy-chapter-body{padding:0 25px 22px 39px}.academy-chapter-body>p{font:14px/1.8 var(--font-body);color:#a2bac6;margin-bottom:18px}.academy-chapter-example{padding:18px;border-left:2px solid var(--purple);background:rgba(186,171,255,.055)}.academy-chapter-example span{color:var(--purple);font:9px var(--font-mono);letter-spacing:1px}.academy-chapter-example p{margin:10px 0 0;font:12px/1.7 var(--font-body);color:#a6b7cc}
.academy-safety{border-top:1px solid var(--line-bright);display:flex;gap:19px;align-items:center;padding-top:22px}.academy-safety-symbol{font:32px var(--font-head);color:var(--cyan)}.academy-safety p{font:12px/1.7 var(--font-body);color:#7592a1;max-width:1050px;margin:0}
.observatory-section{background:radial-gradient(ellipse at 100% 8%,rgba(170,130,245,.08),transparent 44%),#080d15}
.observatory-heading .section-heading{font-size:clamp(60px,6.4vw,98px)}.observatory-intro p{font-size:15px;margin-bottom:15px}
.observatory-query{border:1px solid rgba(100,215,236,.34);background:linear-gradient(145deg,#11222d,#09141d 58%,#0b131e);padding:30px 35px;margin-bottom:78px}
.observatory-query-label{display:flex;align-items:center;gap:13px;font:10px var(--font-mono);color:var(--cyan);letter-spacing:.5px;margin-bottom:26px}.observatory-api{margin-left:auto;color:#7395a5}.observatory-form{display:flex;gap:11px;align-items:end;flex-wrap:wrap}.observatory-form label{font:10px var(--font-mono);color:#95afbb;width:100%;margin-bottom:-5px}.observatory-form input{flex:1;min-width:200px;height:56px;padding:15px 19px;background:#080f17;border:1px solid #2c505f;border-radius:0;color:#f1fbff;font:15px var(--font-mono)}.observatory-form input:focus{outline-color:var(--cyan)}.observatory-form button{height:56px}.observatory-presets{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:16px 0 0;font:10px var(--font-mono);color:#71909f}.observatory-presets button{border:1px solid rgba(104,212,229,.24);background:#0d1c26;color:#b6cdd8;padding:8px 11px;font:10px var(--font-mono)}.observatory-presets button:hover{border-color:var(--cyan);color:var(--cyan)}.observatory-presets p{width:100%;font:11px/1.6 var(--font-body);color:#728b99;margin:2px 0 0}.observatory-results{min-height:185px;margin-top:26px;position:relative}.observatory-placeholder{display:flex;align-items:flex-start;flex-direction:column;justify-content:center;min-height:182px;padding:28px;border:1px dashed #294b59;background:rgba(6,18,27,.7)}.observatory-placeholder-icon{color:var(--cyan);font:43px var(--font-mono);line-height:1}.observatory-placeholder strong{font:700 12px var(--font-mono);color:#bdebf1;margin:12px 0}.observatory-placeholder p{font:12px/1.7 var(--font-body);color:#8ca8b7;max-width:700px;margin:0}.observatory-results-head{display:flex;gap:16px;flex-wrap:wrap;align-items:start;justify-content:space-between;margin-bottom:14px}.observatory-results-head h3{font:700 24px var(--font-head);margin:0 0 6px}.observatory-results-head small{font:10px/1.5 var(--font-mono);color:#7691a1}.observatory-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:15px 0}.observatory-metric{border:1px solid var(--line-bright);padding:15px;min-width:0;background:#0b1924}.observatory-metric .o-label{display:block;color:#809cad;font:9px var(--font-mono);margin-bottom:8px;letter-spacing:.5px}.observatory-metric strong{font:700 clamp(15px,2vw,24px) var(--font-head);color:var(--cyan);overflow-wrap:anywhere}.observatory-metric small{display:block;color:#688692;font:9px var(--font-mono);margin-top:7px}.observatory-collector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}.observatory-collector{border:1px solid #263c4a;background:#0a1620;padding:17px;min-width:0}.observatory-collector-head{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:12px}.observatory-collector strong{font:700 13px var(--font-mono);color:#d8eef1}.observatory-collector small{font:10px/1.5 var(--font-mono);color:#90afbc}.observatory-collector-meta{color:#849aa9;font:10px/1.6 var(--font-mono);margin-bottom:7px}.observatory-aspath{padding:10px;color:#d2c1ff;background:rgba(135,98,196,.07);border:1px solid rgba(182,148,252,.17);font:11px/1.5 var(--font-mono);overflow-wrap:anywhere}.observatory-disclaimer{color:#6f94a2;font:10px/1.7 var(--font-mono);margin-top:15px}.observatory-error{padding:26px;background:#141c25;border:1px solid #6d536b;color:#d5c8d8;font:13px/1.8 var(--font-body)}
.observatory-sources-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:27px}.observatory-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.observatory-source{display:block;min-height:218px;min-width:0;padding:24px 25px;border:1px solid var(--line-bright);background:#0c1722;transition:background .2s,border-color .2s,transform .2s}.observatory-source:hover{background:#142634;border-color:var(--cyan);transform:translateY(-3px)}.observatory-source-top{display:flex;gap:8px;align-items:center;justify-content:space-between}.observatory-source-top span:last-child{color:#72929e;text-align:right}.observatory-source h3{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:41px 0 10px;font:700 22px var(--font-head);letter-spacing:-.5px}.observatory-source h3 span{color:var(--cyan)}.observatory-source p{color:#90a9b6;font:12px/1.65 var(--font-body);margin:0}.observatory-credibility{margin-top:24px;display:grid;grid-template-columns:230px 1fr;gap:30px;align-items:start;padding:24px 0;border-top:1px solid var(--line)}.observatory-credibility span{font:10px var(--font-mono);color:var(--cyan)}.observatory-credibility p{font:12px/1.75 var(--font-body);color:#839aa6;margin:0}
@media(max-width:1200px){.academy-bottom-grid{gap:27px}.academy-schematic{padding:24px}.academy-step{padding:14px}.nav{gap:15px}.observatory-sources{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.academy-head,.observatory-heading{grid-template-columns:1fr;gap:24px}.academy-intro,.observatory-intro{max-width:770px}.academy-bottom-grid{grid-template-columns:1fr;gap:70px}.academy-terms{grid-template-columns:repeat(3,minmax(0,1fr))}.academy-demo-grid{grid-template-columns:minmax(280px,.9fr) 1.1fr}.observatory-sources{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.academy-head .section-heading,.observatory-heading .section-heading{font-size:clamp(50px,12vw,75px)}.academy-intro p{font-size:15px}.academy-simple-grid{grid-template-columns:1fr;gap:8px;margin-bottom:45px}.academy-simple-grid article{min-height:180px;padding:22px}.academy-simple-grid h3{margin:auto 0 8px;font-size:22px}.academy-simple-icon{font-size:33px}.academy-demo{margin-bottom:60px}.academy-demo-heading{padding:20px}.academy-demo-grid{grid-template-columns:1fr}.academy-steps{border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.academy-step{padding:14px;min-height:104px;gap:8px}.academy-step strong{font-size:13px}.academy-step small{font-size:10px}.academy-step-arrow{display:none}.academy-schematic{padding:19px}.academy-node{padding:11px 6px}.academy-node strong{font-size:13px}.academy-node span,.academy-node small{font-size:8px}.academy-diagram{min-height:145px}.academy-beam-label{font-size:7px;max-width:65px;white-space:normal;text-align:center;top:-43px}.academy-terms{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.academy-term{padding:14px;min-height:185px}.academy-term h3{font-size:15px;margin-top:20px}.academy-term p{font-size:11px}.academy-chapter summary strong{font-size:15px}.academy-chapter-body{padding-left:0}.observatory-query{padding:20px 17px}.observatory-form input,.observatory-form button{width:100%;flex:auto}.observatory-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.observatory-collector-grid{grid-template-columns:1fr}.observatory-sources{grid-template-columns:1fr}.observatory-source{min-height:176px}.observatory-source h3{margin-top:25px}.observatory-credibility{grid-template-columns:1fr;gap:12px}.observatory-api{display:none}}
@media(max-width:360px){.academy-steps{grid-template-columns:1fr}.academy-step{min-height:75px}.academy-terms{grid-template-columns:1fr}.academy-term{min-height:132px}}
@media(prefers-reduced-motion:reduce){.academy-signal{animation:none;left:50%;opacity:1}}
.observatory-second{margin-top:20px;background:rgba(10,24,36,.9);border:1px solid #355161;padding:25px;color:#9eb7c2;font:12px/1.7 var(--font-body)}
.observatory-second-label{display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--purple);font:10px var(--font-mono);letter-spacing:.5px;margin-bottom:18px}
.observatory-second-label>span{color:var(--cyan)}.observatory-second p{margin:0;color:#95adb9}.observatory-second a{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}
.observatory-second-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.observatory-second-metrics>div{border:1px solid #263f4c;padding:13px;background:#0b1a25;min-width:0}.observatory-second-metrics small{display:block;color:#8198aa;font:9px var(--font-mono);margin-bottom:8px}.observatory-second-metrics strong{font:700 22px var(--font-head);color:#d5cafa;overflow-wrap:anywhere}.observatory-second-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.observatory-second-path{padding:13px 15px;background:#0a141e;border:1px solid #243b4a;min-width:0}.observatory-second-path>span{font:9px/1.7 var(--font-mono);color:#7e9daa;display:block;margin-bottom:9px}.observatory-second-path code{font:11px/1.5 var(--font-mono);color:#d1bfff;overflow-wrap:anywhere}
@media(max-width:700px){.observatory-second{padding:18px}.observatory-second-paths{grid-template-columns:1fr}.observatory-second-metrics strong{font-size:17px}}
.academy-metaphor{display:grid;grid-template-columns:155px 1fr;gap:30px;align-items:center;background:linear-gradient(100deg,rgba(30,92,109,.21),rgba(16,27,41,.62));border:1px solid rgba(104,218,235,.27);padding:34px 41px;margin:-21px 0 65px}.academy-metaphor-symbol{position:relative;font:125px/.8 var(--font-head);color:var(--cyan);opacity:.72}.academy-metaphor-symbol span{position:absolute;bottom:0;right:10px;color:var(--purple);font-size:44px}.academy-metaphor .mini-label{margin:0 0 13px}.academy-metaphor h3{font:700 29px/1.15 var(--font-head);letter-spacing:-.5px;margin:0 0 12px}.academy-metaphor p:not(.mini-label){font:14px/1.8 var(--font-body);color:#a2bac6;max-width:980px;margin:0 0 16px}.academy-metaphor-tag{font:10px var(--font-mono);color:var(--cyan);letter-spacing:.5px;overflow-wrap:anywhere}
.academy-compare{margin:-22px 0 80px}.academy-compare-head{margin-bottom:27px}.academy-compare-head .mini-label{margin-bottom:12px}.academy-compare h3{font:700 clamp(24px,2.7vw,37px)/1.2 var(--font-head);margin:0;letter-spacing:-.5px}.academy-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.academy-compare-grid article{border:1px solid var(--line-bright);background:#0b1b26;padding:25px 25px 23px;min-height:250px;display:flex;flex-direction:column}.academy-compare-grid article:nth-child(2){background:#131a29}.academy-compare-type{color:var(--cyan);font:10px var(--font-mono)}.academy-compare-grid h4{font:700 21px/1.2 var(--font-head);letter-spacing:-.3px;margin:31px 0 10px}.academy-compare-grid p{font:12px/1.72 var(--font-body);color:#93acb9;margin:0 0 23px}.academy-compare-grid strong{font:10px var(--font-mono);color:var(--purple);margin-top:auto;letter-spacing:.4px}
@media(max-width:900px){.academy-metaphor{grid-template-columns:95px 1fr;padding:27px;gap:23px}.academy-metaphor-symbol{font-size:88px}.academy-metaphor h3{font-size:26px}.academy-compare-grid{grid-template-columns:1fr}.academy-compare-grid article{min-height:160px}.academy-compare-grid h4{margin-top:17px}}
@media(max-width:700px){.academy-metaphor{grid-template-columns:1fr;gap:5px;padding:23px;margin-top:-17px;margin-bottom:48px}.academy-metaphor-symbol{font-size:73px;height:78px}.academy-metaphor-symbol span{left:65px;bottom:0;font-size:30px;right:auto}.academy-metaphor h3{font-size:24px}.academy-metaphor p:not(.mini-label){font-size:13px}.academy-metaphor-tag{font-size:9px}.academy-compare{margin:-10px 0 52px}.academy-compare-grid article{padding:20px}}
