:root{color-scheme:dark;--bg:#09121a;--panel:#101e29;--panel2:#152733;--line:#2b414e;--text:#f1f5f8;--muted:#adbec8;--cyan:#78e5db;--gold:#f0ce86;--warn:#ffcc91;--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 70% 0,#153344 0,transparent 44%),var(--bg);color:var(--text);font:15px/1.58 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--cyan);text-underline-offset:3px}button,select,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}button,a,input,select{touch-action:manipulation}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.shell{width:min(1380px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;left:16px;top:-100px;background:var(--panel);padding:10px;z-index:30}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.top{border-bottom:1px solid var(--line);background:#09121a}.mast{min-height:86px;display:flex;align-items:center;gap:20px;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px;color:var(--text);text-decoration:none}.brand img{object-fit:contain}.brand strong,.brand small{display:block}.brand strong{font-size:15px;letter-spacing:.025em}.brand small{color:var(--muted);font-size:12px}.flag,.eyebrow,.tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:750}.flag{border:1px solid #4a5149;border-radius:99px;color:var(--gold);padding:7px 12px}.nav-shell{border-bottom:1px solid var(--line);background:#0c1822}.nav{display:flex;flex-wrap:wrap;gap:4px 7px;align-items:center;min-height:55px}.nav a{color:var(--muted);text-decoration:none;font-weight:650;display:block;padding:9px 11px;border-radius:9px;font-size:13px}.nav a[aria-current=page]{background:#20434c;color:var(--cyan)}.nav a:hover{color:white;background:#1c2d3a}.button{border:1px solid transparent;border-radius:10px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--cyan);color:#071e24;font-weight:750;text-decoration:none;line-height:1.35;min-height:42px}.button:hover{filter:brightness(1.08)}.button.quiet{background:#182a36;border-color:#405865;color:var(--text)}.button.text{background:transparent;border-color:var(--line);color:var(--cyan)}.button.small{min-height:35px;padding:6px 9px;font-size:12px}
main{padding:27px 0 12px;min-height:65vh}.hero,.module-hero{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#16313b}.hero img,.module-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero::after,.module-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#061019 5%,#081824ec 37%,#0b20284a 80%)}.hero{min-height:475px;display:flex;align-items:center;padding:clamp(26px,6vw,84px)}.hero-copy{max-width:675px}.eyebrow{color:var(--gold);margin:0 0 13px}.hero h1{font-size:clamp(2.55rem,5.6vw,5.3rem);line-height:.99;letter-spacing:-.06em;margin:0 0 17px}.hero h1 span{display:block;color:var(--cyan)}.hero p:not(.eyebrow){max-width:57ch;font-size:17px;color:#d0dce3}.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:18px}.hero-caption{position:absolute;bottom:10px;right:15px;color:#e8eef0;background:#0b1722d9;padding:3px 8px;border-radius:5px;font-size:11px}.module-hero{min-height:235px;padding:36px 39px;display:flex;align-items:center}.module-hero h1{font-size:clamp(2.15rem,4vw,3.6rem);line-height:1.02;letter-spacing:-.05em;margin:0}.module-hero p:last-child{color:#d2dfe6;max-width:70ch;margin-bottom:0}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.panel h2,.section-head h2{line-height:1.15;font-size:clamp(1.3rem,2vw,1.8rem);margin:0 0 8px;letter-spacing:-.025em}.muted,.panel>p{color:var(--muted)}.panel>p{margin-top:6px}.section-head{margin:32px 0 14px}.section-head p{margin:4px 0;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,2fr) minmax(245px,1fr);gap:15px;margin-top:15px;align-items:start}.stack{display:grid;gap:15px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:15px}.metric strong{display:block;font-size:clamp(1.6rem,3vw,2.5rem);letter-spacing:-.045em;line-height:1.2}.metric .tag{color:var(--cyan)}.metric p{margin:4px 0 0}.rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.room{display:block;position:relative;color:var(--text);text-decoration:none;overflow:hidden;min-height:208px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.room img{width:100%;height:105px;object-fit:cover;display:block}.room-content{padding:14px 15px 16px}.room h3{font-size:17px;margin:3px 0}.room p{font-size:13px;color:var(--muted);margin:0}.room:hover{border-color:var(--cyan)}.room .tag{color:var(--gold)}.controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:14px 0}.controls label{font-weight:700;font-size:13px;display:grid;gap:4px}.controls select,.controls input{background:#0a1721;border:1px solid #506877;color:var(--text);border-radius:9px;min-height:41px;padding:7px 10px}.scroll-table{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}caption{text-align:left;color:var(--muted);margin:0 0 6px}th,td{padding:11px 9px;border-bottom:1px solid var(--line);vertical-align:middle}th{color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase}td:first-child strong{display:block}td:first-child small{color:var(--muted)}.chip{font-weight:720;color:var(--cyan);white-space:nowrap}.chip.review{color:var(--warn)}.source{padding:10px 0;border-top:1px solid var(--line)}.source a{font-weight:670}.source p{margin:3px 0;color:var(--muted);font-size:13px}.checklist{display:grid;gap:9px;margin-top:13px}.checklist label{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;align-items:flex-start;gap:11px}.checklist input{accent-color:var(--cyan);width:19px;height:19px;flex:none}.checklist small{display:block;color:var(--muted)}.ledger{margin:0;padding-left:20px}.ledger li{padding:6px 0;border-bottom:1px solid var(--line)}.ledger time{color:var(--muted);font-size:12px}.brief-logo{width:75px;height:auto}.empty{padding:18px 8px;color:var(--muted)}.foot{border-top:1px solid var(--line);padding:20px 0 28px;display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.notice{margin-top:14px;border-left:3px solid var(--gold);padding:8px 13px;background:#1b2a34;color:#f3dfb3;border-radius:4px}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.rooms{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{min-height:405px}}
@media(max-width:620px){.shell{width:calc(100% - 28px)}.mast{gap:8px;min-height:73px}.mast>.flag{display:none}.brand strong{font-size:12px}.brand img{width:42px;height:43px}.mast>.button{font-size:11px;padding-inline:8px}.nav{padding-block:5px}.nav a{padding:6px 8px;font-size:12px}.hero{min-height:435px;padding:25px 18px}.hero::after,.module-hero::after{background:linear-gradient(90deg,#081723f5,#0a1b24ae)}.hero-caption{display:none}.module-hero{padding:23px 18px}.metrics{gap:7px}.metric{padding:9px}.metric .tag{font-size:9px;letter-spacing:.03em}.metric p{font-size:11px}.rooms{gap:8px}.room img{height:84px}.room-content{padding:9px}.room h3{font-size:14px}.room p{font-size:12px}.panel:not(.metric){padding:15px}.foot{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{@page{margin:.6in}body{background:white;color:#121d25}.top,.nav-shell,.foot,.no-print,.module-hero{display:none!important}.shell{width:100%}.workspace{display:block}.panel{background:white;color:#121d25;border:1px solid #bbb;margin-bottom:12px;break-inside:avoid}.panel p,.muted,.ledger time{color:#374452}.chip,.tag,.eyebrow{color:#1b454b!important}a{color:#123d52}main{padding:0}}
.graphic{margin:13px 0;padding:12px;border:1px solid var(--line);border-radius:11px;background:#0b1720}.graphic figcaption{color:var(--muted);font-size:12px;margin-bottom:6px}.graphic meter{display:block;width:100%;height:14px;accent-color:var(--cyan)}.mini-chart>div{display:grid;grid-template-columns:75px minmax(35px,1fr) 35px;gap:6px;align-items:center;font-size:12px}.mini-chart strong{text-align:right}.graphic meter::-webkit-meter-optimum-value{background:#66cfc6}.graphic meter::-webkit-meter-suboptimum-value{background:#eac071}.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;list-style:none;padding:0;margin:0}.timeline li{border-top:2px solid var(--cyan);padding-top:5px}.timeline strong,.timeline span{display:block}.timeline span{color:var(--muted);font-size:12px}
.rooms{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:960px){.rooms{grid-template-columns:repeat(2,minmax(0,1fr))}}

.demo-route {
  display:grid;
  grid-template-columns:minmax(185px,.8fr) minmax(0,2fr);
  align-items:start;
  gap:clamp(14px,3vw,32px);
  margin-top:24px;
  padding:clamp(16px,3vw,28px);
  border:1px solid #43556e;
  border-radius:var(--radius);
  background:linear-gradient(110deg,#0f172a,#14283b);
}
.demo-route .eyebrow {margin-bottom:6px}
.demo-route h2 {font-size:clamp(1.15rem,2.4vw,1.55rem);line-height:1.2;margin:0}
.demo-route ol {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  padding:0;
  margin:0;
  list-style:none;
  counter-reset:walkthrough;
}
.demo-route li {counter-increment:walkthrough;border-top:1px solid #8c744d;padding-top:9px}
.demo-route li::before {content:"0" counter(walkthrough);display:block;color:var(--gold);font-weight:750;font-size:.74rem;margin-bottom:3px}
.demo-route li a,.demo-route li strong {font-weight:740}
.demo-route li span,.brief-followups span {display:block;color:var(--muted);font-size:.87rem;margin-top:2px}
.filter-results {font-size:.85rem;margin-bottom:6px}
.brief-followups {list-style:none;padding:0;margin:0}
.brief-followups li {padding:9px 0;border-bottom:1px solid var(--line)}
.brief-followups p {margin:4px 0 0}
.brief-print h3 {margin-bottom:6px}
.scroll-table:focus-visible {outline-offset:-2px}

@media(max-width:760px) {
  .demo-route {grid-template-columns:1fr}
}
@media(max-width:440px) {
  .demo-route ol,.timeline {grid-template-columns:1fr;gap:8px}
  .demo-route li {padding:6px 0 6px 30px;position:relative}
  .demo-route li::before {position:absolute;left:0;top:8px}
  .brief-followups li {overflow-wrap:anywhere}
}
@media print {
  .brief-print {break-inside:auto;border:0;padding:0}
  .brief-print h2,.brief-print h3 {break-after:avoid}
  .brief-print li {break-inside:avoid;border-color:#d4d8df}
  .brief-print .notice {background:white;color:#1c2634}
  .brief-followups span {color:#374452}
  .brief-logo {width:60px}
}

/* Even room counts and fully occupied rows at supported breakpoints. */
.rooms{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:960px){.rooms{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nav a{min-height:40px}.room-content{overflow-wrap:anywhere}
