/* Selected palette: ivory and pine green. Color overrides only. */
:root{--ink:#293D35;--muted:#5E6D61;--blue:#3F6757;--purple:#3F6757;--sand:#5E6D61;--line:#CFD7C9;--paper:#F6F4ED;background:#F6F4ED}
body{background:#F6F4ED}
.site-header{background:#f6f4edf2;border-color:#cfd7c999}
.reading-progress{background:#3F6757}
.brand>b,.home-monogram{color:#293D35}
.brand>b>span,.home-monogram>span,.asterisk{color:#5E6D61}
.site-header nav a[aria-current=page],.home-heading h1 span{color:#3F6757}
.site-header nav a[aria-current=page]:after{background:#3F6757}
.case-card,.case-card.brick{background:#E5EAE1;border-color:#CFD7C9}
.case-card:hover,.case-card:focus-visible{border-color:#3F6757;box-shadow:0 20px 45px #293d3512}
.case-card-top,.case-action>small{color:#5E6D61}
.case-card-meta{border-color:#c4cfbf}
.project-orbit{border-color:#aabb9e55}
.round-arrow,.case-card .round-arrow{background:#3F6757;border-color:#3F6757;color:#F6F4ED}
.case-card:hover .round-arrow,.case-card:hover .case-cta,.case-card:focus-visible .case-cta{background:#293D35}
.case-cta{background:#3F6757;color:#fff;box-shadow:none}
.case-card.library .case-art img,.case-cover.library img{box-shadow:0 16px 35px #293d3512}
.case-cover,.case-cover.brick{background:#E5EAE1}
.case-cover:before{background-image:linear-gradient(#3f675709 1px,transparent 1px),linear-gradient(90deg,#3f675709 1px,transparent 1px)}
.cover-index{color:#f6f4edaa}
.chapter-bar{background:#f0f1e9ed;border-color:#cfd7c999}
.chapter-bar a,.breadcrumb span{color:#5E6D61}
.chapter-bar a.active{border-color:#3F6757;color:#3F6757}
.chapter-bar a.active span,.section-lead{color:#293D35}
.context-grid article,.reflection-grid>article,.experience-grid article,.awards-list article{border-color:#CFD7C9}
.context-number,.flow-big{color:#aebca8}
.structure-band,.system-band,.motion-band,.closing-band,.home-focus-band,.resume-band{background:linear-gradient(180deg,#e5eae100,#e5eae180 25%,#e5eae180 75%,#e5eae100)}
.module-rail button{border-color:#CFD7C9}
.module-rail button>span{color:#5E6D61}
.module-rail button[aria-pressed=true]{background:#3F6757;border-color:#3F6757;color:#fff;box-shadow:none}
.module-rail button[aria-pressed=true]>span{color:#E5EAE1}
.module-media{background:#F6F4ED;border-color:#CFD7C9}
.media-caption,.module-detail dl>div,.summary-table,.focus-entry,.focus-details>div{border-color:#CFD7C9}
.module-detail>a,.focus-details dt,.focus-entry{color:#3F6757}
.focus-card:hover .focus-entry{color:#293D35}
.zoom-hint{background:#f6f4edf2;border-color:#CFD7C9}
.flow-line button{color:#5E6D61;border-color:#CFD7C9}
.flow-line button>em,.system-diagram>b,.system-result i{color:#9baa96}
.flow-line button[aria-pressed=true]{background:#d9e2d5;color:#293D35}
.flow-connection{color:#3F6757;border-color:#CFD7C9}
.system-diagram article{background:#F6F4ED;border-color:#CFD7C9}
.cinema{background:#E5EAE1;border-color:#CFD7C9}
.video-stage,.video-stage video{background:#293D35}
.video-stage>p{color:#F6F4ED}
.video-information>a{border-color:#5E6D61}
.video-playlist button{background:#F6F4ED;border-color:#CFD7C9}
.video-playlist small{color:#5E6D61}
.video-playlist button[aria-pressed=true]{background:#3F6757;border-color:#3F6757;color:#fff}
.video-playlist button[aria-pressed=true] small{color:#E5EAE1}
.analysis-grid .zoom{background:#F6F4ED;border-color:#CFD7C9}
.analysis-grid figcaption>span,.detail-gallery figcaption>span,.material-note{color:#5E6D61}
.detail-gallery .zoom,.focus-image{background:#E5EAE1}
.next-project>a{border-color:#9baa96}
.next-project>a:hover{background:#E5EAE1}
dialog,dialog>p{background:#F6F4ED}
dialog{border-color:#CFD7C9;box-shadow:0 20px 100px #293d3555}
dialog::backdrop{background:#293d35e6}
.lightbox-toolbar button{background:#F6F4ED;border-color:#aab9a3}
.summary-table-head{background:#e5eae180}
.focus-card{background:#F6F4ED;border-color:#CFD7C9}
.focus-card:hover{box-shadow:0 16px 35px #293d3512}
.focus-tags>span{background:#E5EAE1;color:#3F6757}
.education-block{background:#E5EAE1;border-color:#CFD7C9}
.education-scores{border-color:#bdcbb6}
.project-role-meta>span:first-child{background:#E5EAE1;border-color:#bdcbb6}
.project-contributions{background:#eef0e7;border-color:#CFD7C9}
button:focus-visible,a:focus-visible,input:focus-visible{outline-color:#3F6757}
/* Full project name wrapping. */
body[data-page="library"] .case-hero-heading{grid-template-columns:1.3fr .7fr;gap:50px}
body[data-page="library"] .case-hero h1{font-size:clamp(30px,3.3vw,49px);line-height:1.5;letter-spacing:-.025em;max-width:760px;overflow-wrap:anywhere}
.case-card.library h2{font-size:27px;line-height:1.6;overflow-wrap:anywhere}
.case-card-bottom>div{min-width:0}
.case-card-bottom>.round-arrow{flex-shrink:0;margin-left:18px}
.site-header nav{flex:1;min-width:0;justify-content:center;margin-inline:30px}
.site-header nav a[href="library.html"]{max-width:235px;line-height:1.65;align-self:center}
.next-project h2{line-height:1.5;max-width:800px;overflow-wrap:anywhere}
@media(max-width:1100px){.site-header nav{margin-inline:20px;gap:22px}.site-header nav a[href="library.html"]{max-width:190px}.case-card.library h2{font-size:24px}}
@media(max-width:700px){body[data-page="library"] .case-hero-heading{grid-template-columns:1fr;gap:23px}body[data-page="library"] .case-hero h1{font-size:30px;line-height:1.65}.case-card.library h2{font-size:24px}.site-header nav{margin-inline:0;justify-content:flex-end;gap:10px}.site-header nav a{font-size:9px;line-height:1.6}.site-header nav a[href="library.html"]{flex:1;min-width:0;max-width:145px;white-space:normal}.site-header nav a:not([href="library.html"]){flex-shrink:0}.next-project h2{font-size:24px}.home-intro>p{min-width:0;overflow-wrap:anywhere}}
/* Consistent full-length project names. */
body[data-page="brick"] .case-hero-heading{grid-template-columns:1.3fr .7fr;gap:50px}
body[data-page="brick"] .case-hero h1{font-size:clamp(30px,3.3vw,49px);line-height:1.5;letter-spacing:-.025em;max-width:760px;overflow-wrap:anywhere}
.case-card.brick h2{font-size:27px;line-height:1.6;overflow-wrap:anywhere}
.site-header nav a[href="brick.html"]{max-width:235px;line-height:1.65;align-self:center}
@media(max-width:1100px){.site-header nav{gap:16px}.site-header nav a[href="library.html"],.site-header nav a[href="brick.html"]{max-width:170px}.case-card.brick h2{font-size:24px}}
@media(max-width:700px){body[data-page="brick"] .case-hero-heading{grid-template-columns:1fr;gap:23px}body[data-page="brick"] .case-hero h1{font-size:30px;line-height:1.65}.case-card.brick h2{font-size:24px}.site-header nav{gap:10px}.site-header nav a[href="library.html"],.site-header nav a[href="brick.html"]{flex:1;min-width:0;max-width:145px;white-space:normal;line-height:1.65}}
