/* Organisation project: printed plans, revision list and illustrative status check. */
.organisation-feature { margin-top:40px; }
.organisation-visual { position:relative; display:flex; align-items:center; justify-content:center; gap:22px; padding:40px 28px; min-height:360px; background-color:#202d30; background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px); background-size:24px 24px; overflow:hidden; }
.plan-sheet { width:220px; flex:0 0 220px; padding:22px; color:#202a31; background:#f2f0e8; border-radius:4px; box-shadow:0 20px 40px #0003; transform:rotate(-5deg); }
.plan-sheet-label { display:block; font-size:.62rem; letter-spacing:.14em; text-transform:uppercase; color:#54646c; margin-bottom:12px; }
.plan-sheet strong { display:block; font-size:1.15rem; line-height:1.3; }
.plan-sheet-lines { height:70px; margin:18px 0; background:repeating-linear-gradient(0deg,transparent 0,transparent 13px,#9da8a9 14px,#9da8a9 15px); opacity:.5; }
.plan-sheet-footer { display:flex; align-items:end; justify-content:space-between; gap:12px; }
.plan-sheet img { display:block; width:68px; height:68px; }
.plan-sheet-footer span { font-size:.65rem; line-height:1.6; }
.visual-status { color:var(--ink); max-width:170px; }
.visual-status .visual-arrow { display:block; color:var(--accent); font-size:2.3rem; margin-bottom:18px; }
.visual-status strong { display:block; font-weight:500; font-size:1.4rem; line-height:1.25; }
.visual-status small { display:block; color:var(--muted); font-size:.76rem; line-height:1.6; margin-top:12px; }
.organisation-banner { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); border-radius:18px; overflow:hidden; }
.organisation-banner-copy { padding:44px; display:flex; flex-direction:column; justify-content:center; }
.organisation-banner-copy h2 { font-size:clamp(1.8rem,3vw,2.8rem); line-height:1.18; letter-spacing:-.035em; margin:0 0 20px; font-weight:500; }
.organisation-banner-copy p { color:var(--muted); line-height:1.8; margin:0; }
.plan-demo-section { padding:64px 0 0; }
.plan-demo-section .project-section-heading > p { max-width:800px; }
.plan-demo { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); border-radius:18px; background:var(--panel); overflow:hidden; margin-top:28px; }
.plan-demo-choice { padding:32px; min-width:0; }
.plan-demo-choice h3 { font-size:1.25rem; font-weight:500; margin:0 0 18px; }
.plan-demo-choice p { color:var(--muted); line-height:1.75; font-size:.9rem; }
.revision-options { display:grid; gap:12px; }
.revision-option { display:block; width:100%; text-align:left; cursor:pointer; padding:18px; border:1px solid #59636c; color:var(--ink); background:var(--bg); border-radius:10px; }
.revision-option[aria-pressed="true"] { border-color:var(--accent); background:#d7f34a0b; box-shadow:inset 3px 0 var(--accent); }
.revision-option strong { display:block; font-size:1rem; margin-bottom:7px; }
.revision-option span { display:block; overflow-wrap:anywhere; color:var(--muted); font: .75rem/1.6 Consolas,monospace; }
.plan-result { min-width:0; padding:32px; background:#121c20; border-left:1px solid var(--line); }
.plan-result-badge { display:inline-flex; gap:8px; align-items:center; border:1px solid #678040; border-radius:30px; padding:7px 12px; font-size:.8rem; color:#d7f34a; background:#d7f34a0b; }
.plan-result-badge::before { content:'✓'; font-weight:bold; }
.plan-result[data-status="outdated"] .plan-result-badge { color:#ffd396; border-color:#95713e; background:#ffd3960b; }
.plan-result[data-status="outdated"] .plan-result-badge::before { content:'!'; }
.plan-result h3 { font-size:clamp(1.5rem,3vw,2.15rem); letter-spacing:-.03em; line-height:1.2; font-weight:500; margin:22px 0 16px; }
.plan-result > p { color:var(--muted); font-size:.95rem; line-height:1.7; }
.plan-result dl { margin:24px 0 0; }
.plan-result dl div { padding:12px 0; border-top:1px solid var(--line); }
.plan-result dt { color:var(--muted); font-size:.75rem; margin-bottom:7px; }
.plan-result dd { margin:0; font-size:.88rem; line-height:1.6; overflow-wrap:anywhere; }
.plan-result-code { font-family:Consolas,monospace; }
.plan-table-section { padding:64px 0; }
.plan-table-scroll { overflow-x:auto; margin-top:26px; border:1px solid var(--line); border-radius:12px; }
.plan-table { border-collapse:collapse; width:100%; min-width:670px; text-align:left; font-size:.9rem; }
.plan-table caption { text-align:left; padding:18px 20px; font-size:.8rem; color:var(--muted); }
.plan-table th { background:var(--panel); font-size:.75rem; font-weight:600; color:var(--muted); padding:15px 20px; border-top:1px solid var(--line); }
.plan-table td { padding:21px 20px; border-top:1px solid var(--line); vertical-align:top; line-height:1.7; }
.plan-table td:first-child { font-family:Consolas,monospace; font-size:.78rem; }
.plan-state { white-space:nowrap; font-size:.8rem; padding:6px 10px; border-radius:20px; display:inline-block; background:#d7f34a12; color:var(--accent); }
.plan-state-old { color:#ffd396; background:#ffd39612; }
.organisation-notes { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; padding:0 0 64px; }
.organisation-notes article { border-top:1px solid var(--line); padding-top:25px; }
.organisation-notes h3 { font-size:1.15rem; font-weight:500; margin:0 0 15px; }
.organisation-notes p { color:var(--muted); font-size:.94rem; line-height:1.8; margin:0; }
.organisation-cta .text-link { display:inline-block; margin-top:22px; color:var(--bg); }
.organisation-cta .text-link:hover { text-decoration:underline; }
@media(max-width:850px) {
  .organisation-visual { gap:16px; padding:30px 18px; }
  .plan-sheet { width:175px; flex-basis:175px; padding:18px; }
  .visual-status { max-width:120px; }
  .visual-status strong { font-size:1.2rem; }
  .organisation-banner-copy { padding:28px; }
  .plan-demo-choice,.plan-result { padding:26px; }
}
@media(max-width:650px) {
  .organisation-banner,.plan-demo { grid-template-columns:1fr; }
  .organisation-visual { min-height:330px; }
  .organisation-feature { margin-top:28px; }
  .organisation-banner-copy { padding:28px 24px; }
  .plan-demo-section { padding-top:42px; }
  .plan-demo-choice,.plan-result { padding:24px; }
  .plan-result { border-left:0; border-top:1px solid var(--line); }
  .plan-table-section { padding:42px 0; }
  .organisation-notes { grid-template-columns:1fr; gap:24px; padding-bottom:42px; }
}
@media(max-width:400px) {
  .organisation-visual { gap:14px; padding:30px 14px; }
  .plan-sheet { width:145px; flex-basis:145px; padding:15px; }
  .plan-sheet strong { font-size:1rem; }
  .plan-sheet img { width:54px; height:54px; }
  .plan-sheet-footer { gap:7px; }
  .plan-sheet-footer span { font-size:.58rem; }
  .visual-status strong { font-size:1.05rem; }
}
@media print {
  .revision-options { display:none; }
  .plan-demo,.plan-result { background:#fff; }
  .plan-table-scroll { overflow:visible; }
  .plan-table { min-width:0; }
  .plan-state,.plan-state-old,.plan-result-badge { color:#111; background:#fff; }
}
