/* Papyrus: a working document inside the portfolio's paper surface. */
.featured-project .project-art.papyrus-demo{
 position:relative;top:0;display:block;padding:0;height:742px;min-height:742px;max-height:none;
 color:var(--ink);background:var(--paper);border:1px solid #a8b19f;clip-path:none!important;transform:none!important;border-radius:0;
}
.papyrus-demo [hidden]{display:none!important}
.demo-interactive{height:100%;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto auto}
.demo-masthead{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #a8b19f}
.demo-wordmark{font:600 2.55rem/.9 var(--font-display);letter-spacing:-.03em}
.demo-wordmark>span{color:#b43109}
.demo-masthead>span:last-child{font:.75rem/1.45 var(--font-data);max-width:10rem;text-align:right;color:#4c5547}
.demo-example{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.75rem 1.5rem}
.demo-example label{font:.875rem/1.4 var(--font-body)}
.demo-example select{min-width:0;max-width:65%;font:500 .875rem var(--font-body);padding:.6rem .45rem;color:var(--ink);background:#f1f3ec;border:1px solid #68745c;min-height:42px;border-radius:0;color-scheme:light}
.demo-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 1.5rem;border-bottom:1px solid #a8b19f;gap:.4rem}
.demo-tabs button{border:0;background:transparent;color:#465040;padding:.4rem 0 .8rem;position:relative;text-align:left;min-height:57px}
.demo-tabs button>span{display:block;font:.75rem var(--font-data);margin-bottom:.3rem}
.demo-tabs button>strong{font:500 .875rem var(--font-body)}
.demo-tabs button:after{content:'';height:3px;position:absolute;bottom:-1px;left:0;right:0;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 260ms var(--ease-out)}
.demo-tabs button[aria-selected=true]{color:var(--ink)}
.demo-tabs button[aria-selected=true]:after{transform:scaleX(1);background:#b43109}
.demo-tabs .is-past:after{transform:scaleX(1);background:#919d86}
.demo-panel{overflow:auto;overscroll-behavior:contain;scrollbar-color:#929d88 #dce1d4;padding:1.25rem 1.5rem;min-height:0;scrollbar-width:thin}
.demo-sheet{animation:demo-sheet-arrive 350ms var(--ease-out) both}
.demo-label{font:.75rem/1.4 var(--font-data);letter-spacing:.055em;color:#4c5547;display:block}
.demo-sheet h4{font:600 clamp(1.9rem,2.4vw,2.65rem)/1.06 var(--font-display);margin:.85rem 0 1.15rem;max-width:22ch}
.demo-sheet p{font:400 1rem/1.5 var(--font-body);margin:0}
.demo-context{color:#394132}
.demo-field{margin-top:1.5rem;border-top:1px solid #bcc4b3;padding-top:.9rem}
.demo-field p{margin-top:.45rem}
.demo-scope{display:inline-block;color:#394132;background:#d5ddcc;padding:.45rem .55rem;font:.875rem var(--font-body)}
.demo-findings{padding:0;list-style:none;margin:0;counter-reset:finding}
.demo-findings li{position:relative;padding:.7rem 0 .7rem 2rem;border-top:1px solid #bdc5b5;counter-increment:finding}
.demo-findings li:before{content:'0' counter(finding);position:absolute;left:0;top:.85rem;font:.75rem var(--font-data);color:#4c5547}
.demo-findings strong{font:600 .875rem var(--font-body);display:block;margin-bottom:.2rem}
.demo-findings p{font-size:.9375rem;line-height:1.5}
.demo-checks{padding:0;list-style:none;margin:0}
.demo-checks li{font:400 .9375rem/1.5 var(--font-body);padding:.7rem 0 .7rem 1.6rem;border-top:1px solid #bdc5b5;position:relative}
.demo-checks li:before{content:'↳';position:absolute;left:0;color:#b43109}
.demo-review{border-left:2px solid #b43109;padding-left:.9rem;margin-top:1rem!important;font-size:.875rem!important}
.demo-actions{display:flex;gap:.65rem;padding:.75rem 1.5rem;border-top:1px solid #a8b19f}
.demo-actions button{min-height:46px;padding:.6rem .9rem;border:1px solid #68745c;font:500 .875rem var(--font-body)}
.demo-next{background:var(--ink);color:var(--paper);flex:1;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.demo-next:after{content:'↗';font-size:1.3rem}
.demo-next:hover{background:#2e3728}
.demo-back{background:transparent;color:var(--ink)}
.demo-back:disabled{opacity:.35;cursor:default}
.demo-foot{display:flex;justify-content:space-between;gap:.75rem;padding:0 1.5rem 1rem;color:#4c5547;font:.75rem/1.5 var(--font-data)}
.demo-page{white-space:nowrap}
.demo-footnote{flex:1}
.demo-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.papyrus-demo :is(button,select):focus-visible{outline:2px solid #b43109;outline-offset:3px}
.demo-panel:focus-visible{outline-offset:-3px}
.demo-fallback{padding:2rem}
.demo-fallback h4{font:600 3rem var(--font-display);margin:1rem 0}
.project-papyrus .project-detail>p{font-size:1rem}
.project-role{margin:0 0 1.4rem;font:.875rem/1.5 var(--font-body);border-left:2px solid var(--signal);padding-left:.85rem;color:var(--paper)}
@keyframes demo-sheet-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px) and (min-width:761px){.project-papyrus.featured-project{grid-template-columns:1fr}.featured-project .project-art.papyrus-demo{max-width:760px;width:100%;justify-self:center}.project-papyrus .project-detail{max-width:760px;justify-self:center;width:100%}}
@media(max-width:760px){.featured-project .project-art.papyrus-demo{height:730px;min-height:730px}.demo-masthead{padding:1.2rem 1rem 1rem}.demo-example{padding:.85rem 1rem}.demo-tabs{padding:0 1rem;gap:.35rem}.demo-tabs button>strong{font-size:.875rem}.demo-panel{padding:1.2rem 1rem}.demo-sheet h4{font-size:2rem}.demo-actions{padding:.8rem 1rem}.demo-foot{padding:0 1rem .9rem;font-size:.75rem;gap:.5rem}.demo-page{white-space:normal;text-align:right;max-width:6rem}}
@media(prefers-reduced-motion:reduce){.demo-sheet{animation:none}.demo-tabs button:after{transition:none}}
html[data-motion=reduced] .demo-sheet{animation:none}
