/* Dimensional folders: always-readable covers, native accessible disclosures. */
.skill-hint{max-width:780px;color:#e5efda;margin:0 0 50px}.skills-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:42px 26px!important;align-items:start;perspective:1600px}.skills-grid .interactive-folder{padding:0!important;min-height:0!important;position:relative;isolation:isolate;transform-style:preserve-3d;overflow:visible;border:1px solid #e6f5cc99!important;border-radius:4px 16px 14px 14px!important;background:linear-gradient(135deg,#edf5df,#c5dba5)!important;box-shadow:5px 7px 0 #7fa56a,10px 14px 0 #376e49,0 25px 32px #002c2545!important;transition:box-shadow .5s,background .5s}.interactive-folder>summary{display:flex;flex-direction:column;align-items:flex-start;position:relative;min-height:205px;padding:28px 24px 30px;cursor:pointer;list-style:none;border-radius:inherit;color:#123a25}.interactive-folder>summary::-webkit-details-marker{display:none}.interactive-folder>summary:focus-visible{outline:3px solid #cefa4b;outline-offset:10px}.interactive-folder>summary h3{margin:5px 28px 0 0!important;overflow-wrap:normal;hyphens:auto}.interactive-folder .folder-icon{width:34px;height:34px;margin:0 0 20px;opacity:.9;filter:drop-shadow(0 3px 0 #fff8)}.interactive-folder .folder-tab{width:86px;top:-23px;background:#e3edce;border-color:#e6f5cc99}.folder-expand{position:absolute;bottom:24px;inset-inline-end:20px;font-size:26px;line-height:1;color:#005430;transition:transform .3s}.interactive-folder[open] .folder-expand{transform:rotate(45deg)}.interactive-folder .folder-detail{padding:0 24px 28px;margin:0;color:#234a31;border:0}.interactive-folder[open]{background:linear-gradient(135deg,#f8fbed,#d9edb9)!important;box-shadow:5px 7px 0 #95bb76,10px 14px 0 #57894f,0 28px 42px #002c2560!important}.interactive-folder:hover{box-shadow:5px 9px 0 #95bb76,10px 18px 0 #57894f,0 32px 40px #002c2560!important}
/* Four layered process cards; text stays on the front plane. */
.process-object{gap:25px!important;perspective:1400px}.process-object .process-layer{min-height:410px;border-radius:5px 18px 18px 18px;padding:27px 24px;border:1px solid #fff9;box-shadow:5px 7px 0 #a8c18e,10px 14px 0 #6d915f,0 24px 35px #00543020;transform:perspective(1100px) rotateY(-5deg) rotateX(2deg)!important;transform-origin:center;transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s,background .55s;background:linear-gradient(135deg,#f7faef,#dbeac8)}.process-object .process-layer:nth-child(even){transform:perspective(1100px) rotateY(5deg) rotateX(2deg)!important}.process-object .process-layer.is-active,.process-object .process-layer:hover{transform:perspective(1100px) translateY(-7px) rotateY(0deg) rotateX(0deg)!important;box-shadow:5px 9px 0 #a4c47d,10px 18px 0 #507f4d,0 30px 40px #00543025;background:linear-gradient(135deg,#effcdd,#c6df9e)}.process-card-art{height:95px}.process-card-art:before{width:70px;height:70px;box-shadow:5px 6px 0 #00543055;transform:rotate(-5deg)!important}.process-card-art img{margin:18px}
/* Seven moving facets behind the portrait, with independent depths and timing. */
#about .portrait-framed{background:linear-gradient(145deg,#003c27,#005430 50%,#52915e)!important;perspective:1200px}#about .portrait-framed:before{opacity:.35}.portrait-layers{position:absolute;inset:-20%;z-index:0;overflow:hidden;pointer-events:none;transform:translateZ(-1px)}.portrait-layers i{position:absolute;width:75%;height:85%;left:-20%;top:-10%;clip-path:polygon(45% 0,100% 100%,0 80%);background:linear-gradient(120deg,#005430 49%,#6d9b5eaa 50%);animation:portraitFacet 14s ease-in-out infinite alternate;transform-origin:50% 70%}.portrait-layers i:nth-child(2){left:45%;top:-25%;width:65%;background:linear-gradient(120deg,#003c27dd 49%,#14845abb 50%);animation-duration:19s;animation-delay:-6s}.portrait-layers i:nth-child(3){left:0;top:45%;background:linear-gradient(120deg,#b9d69899 49%,#005430aa 50%);animation-duration:17s;animation-delay:-11s}.portrait-layers i:nth-child(4){left:35%;top:45%;width:85%;background:linear-gradient(120deg,#315d39bb 49%,#cefa4b77 50%);animation-duration:23s;animation-delay:-15s}.portrait-layers i:nth-child(5){left:35%;top:-10%;width:40%;height:60%;background:linear-gradient(120deg,#e5f5cd55 49%,#14845a88 50%);animation-duration:12s;animation-delay:-5s}.portrait-layers i:nth-child(6){left:-10%;top:20%;width:35%;height:50%;background:linear-gradient(120deg,#003c27 49%,#447e4daa 50%);animation-duration:21s;animation-delay:-9s}.portrait-layers i:nth-child(7){left:60%;top:10%;width:35%;height:50%;background:linear-gradient(120deg,#b9d69899 49%,#00543099 50%);animation-duration:16s;animation-delay:-13s}@keyframes portraitFacet{from{translate:-12px 20px;rotate:-15deg;scale:.96}to{translate:23px -28px;rotate:18deg;scale:1.12}}#about .portrait-framed .portrait-scene img{z-index:3}.portrait-framed .depth-plane,.portrait-framed .portrait-diamond{z-index:4}
/* Accessible preferences supplement semantic HTML, keyboard controls and OS settings. */
.accessibility-panel{position:fixed;inset-inline-end:18px;bottom:18px;z-index:50;color:#f7faef;font-size:15px;filter:drop-shadow(0 5px 18px #001f2440)}.accessibility-panel>summary{display:flex;gap:9px;align-items:center;list-style:none;min-height:48px;padding:11px 17px;background:#005430;border:1px solid #a5cb8b;border-radius:30px;cursor:pointer}.accessibility-panel>summary::-webkit-details-marker{display:none}.accessibility-panel>summary img{filter:invert(1)}.accessibility-options{position:absolute;bottom:62px;inset-inline-end:0;width:285px;max-width:calc(100vw - 36px);background:#f6f7f1;border:1px solid #7d9b6c;border-radius:16px;color:#14271d;padding:17px;box-shadow:0 12px 35px #00271b35}.accessibility-options label{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer}.accessibility-options input{width:20px;height:20px;accent-color:#005430;flex-shrink:0}.accessibility-options button{border:1px solid #005430;background:#e4eed9;color:#005430;min-height:44px;border-radius:8px;width:100%;padding:10px;margin-top:12px;font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #679e28;outline-offset:5px}
html.a11y-text{font-size:20px}html.a11y-text .skills-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}html.a11y-text .process-object{grid-template-columns:repeat(2,minmax(0,1fr))!important}html.a11y-text .motion-story{height:auto;min-height:0}html.a11y-text .motion-stage{position:relative;height:auto;top:auto}html.a11y-text .hero{min-height:1000px}
html.a11y-contrast{--paper:#fff;--ink:#001e12}html.a11y-contrast .hero,html.a11y-contrast #about,html.a11y-contrast #research,html.a11y-contrast #organizations,html.a11y-contrast .motion-stage{background:#fff!important;color:#001e12!important}html.a11y-contrast .hero p,html.a11y-contrast #about p,html.a11y-contrast #research p,html.a11y-contrast #organizations p{color:#001e12!important}html.a11y-contrast .folder-card,html.a11y-contrast .process-layer{background:#fff!important;color:#001e12!important;border:2px solid #005430!important}html.a11y-contrast .folder-card p,html.a11y-contrast .process-layer p{color:#001e12!important}html.a11y-contrast .eyebrow{opacity:1!important}html.a11y-contrast .expertise,html.a11y-contrast #contact{background:#003c27!important}html.a11y-contrast .brand-attribution{color:#14271d!important}
html.a11y-motion *,html.a11y-motion *:before,html.a11y-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html.a11y-motion .reveal{opacity:1!important;transform:none!important}html.a11y-motion .skill-card,html.a11y-motion .process-layer,html.a11y-motion .portrait-depth{transform:none!important}html.a11y-motion .float-label{translate:none!important;rotate:none!important}
@media(max-width:1100px){.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.process-object{grid-template-columns:repeat(2,minmax(0,1fr))!important}.motion-story{height:auto;min-height:0}.motion-stage{position:relative;top:auto;height:auto;min-height:0}.process-object .process-layer{min-height:360px}.process-progress{display:none}}
@media(max-width:760px){.skills-grid,html.a11y-text .skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:38px 22px!important}.interactive-folder>summary{padding:24px 18px;min-height:210px}.interactive-folder .folder-detail{padding:0 18px 24px}.interactive-folder>summary h3{font-size:var(--type-card)!important}.accessibility-panel>summary{padding:11px}.accessibility-panel>summary>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skills-grid .interactive-folder{padding:0!important}.process-object .process-layer{transform:none!important}}
@media(max-width:440px){.skills-grid,html.a11y-text .skills-grid{gap:36px 18px!important}.interactive-folder>summary{padding:22px 14px;min-height:220px}.interactive-folder>summary h3{overflow-wrap:anywhere;margin-inline-end:0!important}.folder-expand{bottom:12px}.process-object,html.a11y-text .process-object{grid-template-columns:1fr!important}.hero-introduction .professional-title{font-size:20px!important}.hero .sculpture{top:590px}.hero{min-height:1120px}.accessibility-panel{bottom:12px;inset-inline-end:12px}}
@media(prefers-reduced-motion:reduce){.portrait-layers i{animation:none!important}.process-object .process-layer{transform:none!important;transition:none!important}.interactive-folder{transition:none!important}}
@media(forced-colors:active){.folder-card,.process-layer,.accessibility-options{border:2px solid CanvasText!important}.folder-icon{filter:none}.accessibility-panel>summary{border:2px solid ButtonText}.folder-tab{background:Canvas!important;color:CanvasText!important}}
