/* Interactive programme exhibits within the existing KAIRON visual system. */
.operation-example--visual{scroll-margin-top:110px}
.operation-example--visual .operation-example-heading{grid-template-columns:1.15fr 1fr;gap:40px;margin-bottom:20px}
.operation-example--visual .operation-example-heading h3{max-width:30ch}
.operation-example--visual .operation-example-panels{margin-top:24px}
.operation-example--visual .operation-example-panel{grid-template-columns:1.45fr 1fr;gap:36px;align-items:center}
.camp-visual{min-width:0}
.camp-exhibit{background:#fff;color:#20231e;padding:26px;min-height:380px;box-sizing:border-box;display:flex;flex-direction:column}
.camp-exhibit h5{font:600 17px/1.4 'Instrument Sans',sans-serif;margin:0}
.camp-exhibit p{font-size:13px;line-height:1.5;color:#55594f}
.camp-brief-top{display:flex;align-items:flex-start;gap:24px;justify-content:space-between;padding-bottom:23px}
.camp-brief-top h5{max-width:17ch;font:400 24px/1.2 'Anton',sans-serif}
.camp-scope{display:flex;gap:18px}
.camp-scope span{display:flex;flex-direction:column;gap:5px;font:500 11px/1.4 'Instrument Sans',sans-serif}
.camp-scope b{font:400 29px/1 'Anton',sans-serif}
.camp-options{display:flex;gap:4px;background:#eeefe9;padding:4px;margin:18px 0;color:#20231e}
.camp-options button{flex:1;min-width:0;min-height:44px;border:0;border-radius:0;padding:8px 10px;font:500 13px/1.35 'Instrument Sans',sans-serif;background:transparent;color:inherit;cursor:pointer}
.camp-options button[aria-pressed=true]{background:#252b23;color:#fff}
.camp-options button:hover:not([aria-pressed=true]){background:#dfe2d7}
.operation-example .camp-options button:focus-visible{outline:2px solid #61733e;outline-offset:2px}
.camp-role-work{list-style:none;margin:0;padding:0;min-height:126px}
.camp-role-work li{display:flex;gap:18px;align-items:center;padding:12px 0;font:500 14px/1.4 'Instrument Sans',sans-serif;border-bottom:1px solid #e6e8e1}
.camp-role-work li:last-child{border:0}
.camp-role-work li span{font-size:11px;color:#62695a}
.camp-exhibit .camp-condition{margin:auto 0 0;padding-top:18px;font-size:12px}
.camp-caption{display:flex;flex-direction:column;gap:20px;min-width:0;padding-block:8px}
.operation-example-panel .camp-stage-title{font:400 clamp(25px,2.4vw,33px)/1.17 'Anton',sans-serif;max-width:23ch;margin:0;text-wrap:balance}
.camp-caption h5{font:600 13px/1.5 'Instrument Sans',sans-serif;margin:0 0 7px}
.camp-caption p{max-width:42ch;font-size:14px;line-height:1.6}
.camp-result-block{margin-top:0}
.camp-handover{padding-top:16px;border-top:1px solid var(--operation-rule)}
.camp-handover ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:7px 16px}
.camp-handover li{font:500 12px/1.5 'Instrument Sans',sans-serif;color:var(--operation-muted)}
.camp-season-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}
.camp-season-grid span{display:grid;place-items:center;aspect-ratio:1.2;background:#eff0eb;color:#545b4b;font:500 12px/1 'Instrument Sans',sans-serif}
.camp-season-grid .is-current{background:#d8dfc3;color:#26311d;font-weight:600}
.camp-block-note{display:grid;grid-template-columns:100px 1fr;gap:16px;align-items:start;padding:16px 0;min-height:58px}
.camp-block-note>span{font:600 12px/1.5 'Instrument Sans',sans-serif}
.camp-block-note p{margin:0}
.camp-group-assignments{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid #e6e8e1;padding-top:15px}
.camp-group-assignments>div{display:flex;align-items:center;gap:12px}
.camp-group-letter{font:400 29px/1 'Anton',sans-serif;color:#252b23}
.camp-group-assignments p{display:flex;flex-direction:column;gap:3px;margin:0;font-size:12px}
.camp-group-assignments strong{font-weight:600;color:#252b23}
.camp-group-assignments p span{font-size:12px}
.camp-exhibit .camp-frequency{margin:16px 0 0;font-size:12px}
.camp-session-sheet{background:#252b23;color:#fff;padding:20px}
.camp-session-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}
.camp-session-heading>strong{font:400 30px/1.15 'Anton',sans-serif}
.camp-session-heading>span{font:500 12px/1.3 'Instrument Sans',sans-serif}
.camp-session-sheet .camp-group-assignments{margin-top:18px;border-color:#626b5d}
.camp-session-sheet :is(.camp-group-letter,.camp-group-assignments strong,.camp-group-assignments p){color:#fff}
.camp-session-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:20px 0 0;gap:14px}
.camp-session-flow li{display:flex;flex-direction:column;gap:6px;min-width:0}
.camp-session-flow strong{font:600 13px/1.4 'Instrument Sans',sans-serif}
.camp-session-flow span{font:400 12px/1.5 'Instrument Sans',sans-serif;color:#55594f}
.camp-exhibit .camp-day-note{margin:18px 0 0;padding-top:14px;border-top:1px solid #e6e8e1;min-height:52px}
.camp-ledger-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}
.camp-ledger-heading h5{max-width:20ch}
.camp-ledger-heading p{white-space:nowrap}
.camp-ledger-heading strong{font:400 32px/1 'Anton',sans-serif;color:#252b23}
.camp-session-ledger{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:4px}
.camp-session-ledger span{aspect-ratio:1;background:#6b7759}
.camp-session-ledger span.is-missing{background:transparent;border:1px solid #717765}
.camp-session-ledger.only-missing span:not(.is-missing){opacity:.14}
.camp-exhibit .camp-ledger-key{font-size:11px;margin:10px 0 0}
.camp-exception{display:flex;align-items:center;gap:14px;margin:16px 0!important}
.camp-exception strong{font:400 27px/1 'Anton',sans-serif;color:#252b23}
.camp-decision{border-top:1px solid #e6e8e1;padding-top:14px;margin-top:auto}
.camp-decision>strong{font:400 21px/1.25 'Anton',sans-serif}
.camp-decision p{margin-top:7px}
.is-night .camp-exhibit{background:#eaebe4}
@media(max-width:1000px){
 .operation-example--visual .operation-example-panel{grid-template-columns:1.25fr 1fr;gap:24px}
 .camp-exhibit{padding:20px}
 .camp-brief-top{flex-direction:column;gap:18px}
 .camp-brief-top h5{max-width:none}
 .camp-scope{gap:28px}
}
@media(max-width:700px){
 .operation-example--visual{padding:22px 16px;scroll-margin-top:140px}
 .operation-example--visual .operation-example-heading{grid-template-columns:1fr;gap:10px}
 .operation-example--visual .operation-example-heading h3{font-size:24px}
 .operation-example--visual .operation-example-heading p{font-size:12px}
 .operation-example--visual .operation-example-panel{grid-template-columns:1fr;gap:22px}
 .operation-example--visual .operation-example-panels{margin-top:18px}
 .camp-exhibit{padding:18px;min-height:0}
 .camp-caption{padding:0;gap:15px}
 .camp-caption p{max-width:none}
 .operation-example-panel .camp-stage-title{font-size:27px;max-width:none}
 .camp-options button{font-size:12px;padding:8px 6px}
 .camp-exhibit h5{font-size:16px}
 .camp-brief-top h5{font:400 24px/1.2 'Anton',sans-serif}
 .camp-brief-top{flex-direction:row;gap:12px;flex-wrap:wrap}
 .camp-scope{gap:22px}
 .camp-season-grid{gap:3px}
 .camp-season-grid span{font-size:10px;aspect-ratio:1}
 .camp-block-note{grid-template-columns:1fr;gap:5px;min-height:70px}
 .camp-group-assignments{gap:12px}
 .camp-group-assignments>div{gap:8px}
 .camp-group-assignments p,.camp-group-assignments p span{font-size:11px}
 .camp-session-sheet{padding:16px}
 .camp-session-flow{gap:10px}
 .camp-session-flow strong{font-size:12px}
 .camp-session-flow span{font-size:11px}
 .camp-session-ledger{gap:3px;grid-template-columns:repeat(15,minmax(0,1fr))}
 .camp-ledger-heading h5{max-width:16ch}
}
@media(prefers-reduced-motion:no-preference){
 .camp-options button,.camp-season-grid span,.camp-session-ledger span{transition:background-color 180ms ease-out,color 180ms ease-out,opacity 180ms ease-out}
 .operation-example-panel.is-active .camp-exhibit{animation:camp-appear 220ms ease-out}
 @keyframes camp-appear{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:none}}
}
