
:root{
  --navy:#0d2b3e;
  --blue:#154765;
  --cyan:#75d2e8;
  --paper:#eef1ed;
  --grid:#c9d2d2;
  --ink:#172026;
  --lime:#b9df6d;
  --orange:#f28a4b;
  --red:#db5b5b;
  --white:#f9fbfa;
  --muted:#65737a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  font-family:"Segoe UI",Arial,sans-serif;
  line-height:1.6;
  background-color:var(--paper);
  background-image:
    linear-gradient(rgba(13,43,62,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(13,43,62,.045) 1px,transparent 1px);
  background-size:24px 24px;
}
a{color:inherit}
.frame{width:min(1220px,calc(100% - 40px));margin:auto}
.top{background:var(--navy);color:#fff;border-bottom:3px solid var(--cyan)}
.top-inner{display:flex;align-items:center;justify-content:space-between;min-height:78px}
.plate{text-decoration:none;display:flex;align-items:center;gap:16px}
.plate-code{border:1px solid var(--cyan);padding:7px 10px;font-family:Consolas,monospace;font-size:13px;color:var(--cyan)}
.plate-name{font-size:13px;font-weight:800;letter-spacing:.14em}
.revision{display:flex;gap:8px;align-items:center;font-family:Consolas,monospace;font-size:12px}
.revision span{color:#87a8b8}
.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;padding:68px 0 54px}
.drawing-label,.section-code{font-family:Consolas,monospace;font-size:11px;letter-spacing:.14em;color:var(--blue);font-weight:700}
h1,h2,h3{line-height:1.08;margin-top:0}
h1{font-size:clamp(48px,6.6vw,82px);letter-spacing:-.045em;margin:18px 0 25px}
h2{font-size:clamp(32px,4vw,52px);letter-spacing:-.03em}
h3{font-size:21px}
.lead{font-size:21px;max-width:710px}
.direct-answer{margin-top:30px;border-left:5px solid var(--orange);background:rgba(255,255,255,.7);padding:22px 25px}
.direct-answer span{font-family:Consolas,monospace;font-size:11px;font-weight:800;color:var(--orange)}
.direct-answer p{margin:8px 0 0;font-size:17px}
.hero-plan{background:var(--navy);padding:20px;align-self:start;box-shadow:14px 14px 0 rgba(21,71,101,.16)}
.hero-plan svg{display:block;width:100%;height:auto;background:#10344a}
.plan-caption{font-family:Consolas,monospace;color:#99b4c0;font-size:10px;padding-top:10px}
.wall{fill:none;stroke:#e7f2f4;stroke-width:5}
.inner{stroke:#7aa3b4;stroke-width:2}
.exitDoor{fill:#b9df6d}
.label{fill:#b9df6d;font-family:Arial;font-weight:bold;font-size:18px}
.small,.legend{fill:#a8bec7;font-family:Arial;font-size:12px}
.you{fill:#75d2e8;stroke:#fff;stroke-width:2}
.ext{fill:#db5b5b;stroke:#fff;stroke-width:2}
.route{fill:none;stroke:#b9df6d;stroke-width:8;stroke-linejoin:round;stroke-linecap:round}
.arrow{fill:#b9df6d}
.external{stroke:#75d2e8;stroke-width:2;stroke-dasharray:7 6}
.meeting{fill:#315c48;stroke:#b9df6d;stroke-width:2}
.meetText{fill:#fff;font-family:Arial;font-size:12px;font-weight:bold}
.room{fill:#d6e6eb;font-family:Consolas,monospace;font-size:13px}
.routeLegend{fill:#b9df6d}
.index-strip{border-top:1px solid #99aeb5;border-bottom:1px solid #99aeb5;background:rgba(255,255,255,.55)}
.index-grid{display:grid;grid-template-columns:repeat(5,1fr)}
.index-grid a{text-decoration:none;padding:14px 12px;border-left:1px solid #aebdc2;font-size:12px;font-weight:700}
.index-grid a:last-child{border-right:1px solid #aebdc2}
.index-grid span{font-family:Consolas,monospace;color:var(--orange);margin-right:8px}
.section{padding:62px 0}
.section-title{display:grid;grid-template-columns:150px 1fr;gap:26px;align-items:start;margin-bottom:34px}
.section-title h2{margin:0}
.layers{border-top:2px solid var(--navy)}
.layers article{display:grid;grid-template-columns:90px 1fr;gap:24px;border-bottom:1px solid #aeb9bb;padding:27px 0}
.layer-no{font-family:Consolas,monospace;font-size:44px;color:var(--blue)}
.layers h3{margin-bottom:7px}
.layers p{margin:0;max-width:900px}
.scope-note{margin-top:30px;background:#dde6e4;border:1px solid #9badab;padding:24px}
.scope-note b{color:var(--blue)}
.scope-note p{margin:7px 0 0}
.dark-section{background:var(--navy);color:#fff;padding:62px 0}
.section-title.inverse .section-code{color:var(--cyan)}
.read-sequence{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#416172;border:1px solid #416172}
.read-sequence>div{background:#10344a;padding:24px;min-height:230px}
.read-no{display:block;font-family:Consolas,monospace;font-size:35px;color:var(--lime)}
.read-sequence h3{margin:18px 0 8px}
.read-sequence p{font-size:14px;color:#b8cbd3}
.coherence-grid{display:grid;grid-template-columns:1fr 70px 1fr 70px 1fr;align-items:center}
.coherence-grid>div:not(.equals){background:rgba(255,255,255,.72);border:1px solid #aeb9bb;padding:24px;min-height:190px}
.coherence-grid span{font-family:Consolas,monospace;font-size:11px;color:var(--orange)}
.coherence-grid strong{display:block;font-size:28px;margin:12px 0}
.coherence-grid p{font-size:14px;color:var(--muted)}
.equals{text-align:center;font-family:Consolas,monospace;font-size:32px;color:var(--blue)}
.coherence-text{max-width:930px;margin-top:28px;font-size:18px}
.triggers{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.triggers>div{background:var(--white);border:1px solid #aeb9bb;padding:18px;min-height:135px}
.triggers span{font-family:Consolas,monospace;font-size:10px;color:var(--orange);font-weight:800}
.triggers p{font-weight:700;margin:12px 0 0}
.version-box{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;background:var(--blue);color:#fff;padding:25px;margin-top:18px}
.version-stamp{border:2px dashed var(--cyan);padding:18px}
.version-stamp span{display:block;font-family:Consolas,monospace;font-size:10px;color:var(--cyan)}
.version-stamp strong{display:block;margin-top:6px}
.errors{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.errors article{background:var(--white);border-top:5px solid var(--red);padding:22px;min-height:215px}
.errors span{font-size:38px;color:var(--red);line-height:1}
.errors h3{margin:10px 0 8px}
.errors p{font-size:14px;color:var(--muted)}
.inspection-sheet{border:1px solid #93a5a9;background:rgba(255,255,255,.75)}
.inspection-sheet>div{display:grid;grid-template-columns:90px 1fr 100px;border-top:1px solid #b1bec1;align-items:center}
.inspection-sheet>div:first-child{border-top:0}
.inspection-sheet span,.inspection-sheet p,.inspection-sheet b{padding:12px 16px;margin:0}
.sheet-head{background:var(--navy);color:#fff;font-family:Consolas,monospace;font-size:11px;letter-spacing:.08em}
.inspection-sheet b{text-align:center;font-size:28px;color:var(--green)}
.faq details{border-top:1px solid #9dacb0;padding:18px 0}
.faq details:last-child{border-bottom:1px solid #9dacb0}
.faq summary{font-weight:800;font-size:19px;cursor:pointer}
.faq p{max-width:900px}
.sources ul{padding-left:18px}
.sources li{margin-bottom:10px}
.source-note{background:#dce5e7;padding:20px;border-left:5px solid var(--blue);margin-top:24px}
.source-note p{margin:6px 0 0}
.updated{font-size:12px;color:var(--muted)}
.hub{display:grid;grid-template-columns:1.4fr .6fr;gap:40px;background:var(--navy);color:#fff;padding:36px;margin-bottom:46px}
.hub-copy span{font-family:Consolas,monospace;color:var(--cyan);font-size:10px;letter-spacing:.14em}
.hub-copy h2{font-size:36px;margin:10px 0}
.hub-copy p{color:#bfd0d7}
.hub-actions{display:flex;flex-direction:column;justify-content:center;gap:10px}
.primary-btn,.secondary-btn{text-decoration:none;padding:13px 15px;text-align:center;font-weight:800}
.primary-btn{background:var(--lime);color:#17301f}
.secondary-btn{border:1px solid var(--cyan);color:#fff}
.note{padding:0 0 50px;font-size:13px;color:var(--muted)}
footer{background:#091f2e;color:#94aeba}
.footer{display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center;min-height:86px;font-family:Consolas,monospace;font-size:11px}
.footer a{color:#fff}
@media(max-width:960px){
  .hero{grid-template-columns:1fr}.hero-plan{max-width:760px}
  .read-sequence{grid-template-columns:1fr 1fr}
  .triggers{grid-template-columns:1fr 1fr}
  .errors{grid-template-columns:1fr 1fr}
  .coherence-grid{grid-template-columns:1fr}.equals{padding:10px}
}
@media(max-width:650px){
  .frame{width:min(100% - 24px,1220px)}
  .revision{display:none}
  .hero{padding-top:40px}h1{font-size:48px}
  .index-grid{grid-template-columns:1fr 1fr}
  .index-grid a{border-bottom:1px solid #aebdc2}
  .section-title{grid-template-columns:1fr;gap:8px}
  .layers article{grid-template-columns:55px 1fr}.layer-no{font-size:34px}
  .read-sequence,.triggers,.errors{grid-template-columns:1fr}
  .version-box,.hub{grid-template-columns:1fr}
  .inspection-sheet>div{grid-template-columns:55px 1fr 55px}
  .footer{grid-template-columns:1fr;padding:20px 0}
}
