/* Portfolio layer: the existing section atmosphere stays in charge of its background. */
#projects{--folio-paper:#eeece8;--folio-muted:#a1a5a5;--folio-rule:#eeece825;color:var(--folio-paper)}
#projects .work-intro{grid-template-columns:1.15fr 1fr;gap:8%;align-items:end;margin-bottom:46px}
#projects .work-statement{font-size:clamp(28px,3.25vw,49px);line-height:1.45;letter-spacing:-.04em;margin:0 0 20px;color:#eeece8}
#projects .work-statement em{font-style:normal;color:#a6aaa9}
#projects .work-intro-note{font-size:13px;line-height:1.9;max-width:470px;color:#9b9f9f;margin:0}
#projects .work-disciplines{gap:26px}
#projects .work-disciplines>span{border-color:#eeece835;color:#a1a5a5;font-size:11px;line-height:1.9;min-width:0}
#projects .work-disciplines b{font:10px/1.6 Arial,sans-serif;letter-spacing:1.5px;color:#eeece8;display:block;margin-bottom:10px}
#projects .filterbar{background:none;backdrop-filter:none;border:0;border-bottom:1px solid var(--folio-rule);padding:0 0 20px;margin:0;gap:22px;flex-wrap:wrap}
#projects .filters{flex-wrap:wrap;gap:6px}
#projects .filters button{padding:12px 18px;color:#a8adad;background:transparent;border:1px solid transparent;border-radius:0;box-shadow:none;font-size:12px;transition:border-color .2s,color .2s,background .2s}
#projects .filters button:hover{color:#eeece8;border-color:#eeece83b}
#projects .filters button[aria-pressed=true]{color:#050609;background:#eeece8;border-color:#eeece8;box-shadow:none}
#projects .filters sup{color:inherit;opacity:.6;font-size:9px}
#projects .saved-filter{border:1px solid #eeece82b;background:transparent;padding:11px 15px;color:#c7cac7;font-size:12px;white-space:nowrap;transition:.2s}
#projects .saved-filter span{font:10px Arial,sans-serif;padding-left:12px;opacity:.7}
#projects .saved-filter[aria-pressed=true]{background:#eeece8;color:#050609;border-color:#eeece8}
.project-search-row{display:flex;align-items:center;gap:24px;padding:20px 0 0;flex-wrap:wrap}
.project-search-label{position:relative;display:flex;align-items:center;gap:12px;flex:1;max-width:390px;min-width:240px;color:#a9adad;border-bottom:1px solid #eeece830;padding-bottom:10px}
.project-search-label>span{font-size:24px;line-height:1}
#project-search{width:100%;min-width:0;border:0;border-radius:0;background:none;color:#eeece8;font-family:inherit;font-size:12px;line-height:1.8;padding:4px 2px;outline-offset:4px;color-scheme:dark}
#project-search::placeholder{color:#8b9293;opacity:1}
#projects .project-search-row .filter-note{display:block;font:10px/1.8 Arial,sans-serif;color:#a1a5a5;letter-spacing:1px;margin-left:auto}
#saved-to-brief{font-size:11px;padding:8px 0;border:0;border-bottom:1px solid #eeece850;background:none;color:#eeece8}
.portfolio-status{min-height:17px;margin:10px 0 22px;font-size:11px;line-height:1.6;color:#a1a5a5}
#projects .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 36px}
#projects .card.portfolio-card{position:relative;min-width:0;display:block;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;transform:none!important;cursor:default;isolation:auto;animation:portfolio-enter .5s both;animation-delay:var(--case-delay,0s)}
#projects .portfolio-card:before,#projects .portfolio-card:after{display:none}
#projects .portfolio-card .case-topline{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:0 0 13px;border-bottom:0;margin:0;color:#a6aaa9;font:9px/1.7 Arial,sans-serif;letter-spacing:1.3px}
#projects .portfolio-card .case-topline>span:last-child{font-family:inherit;font-size:10px;letter-spacing:.5px;white-space:nowrap;color:#818988}
#projects .portfolio-card .case-open{width:100%;padding:0;border:0;border-radius:0;background:none;color:inherit;display:block;text-align:left;overflow:visible}
#projects .portfolio-card .card-media{aspect-ratio:16/10;height:auto;min-height:0;position:relative;overflow:hidden;border-radius:0;background:#deded9;isolation:isolate}
#projects .portfolio-card .card-media:after{content:'';position:absolute;inset:40% 0 0;pointer-events:none;background:linear-gradient(transparent,#0004);opacity:0;transition:opacity .4s}
#projects .portfolio-card .card-media>img{width:100%;height:100%;display:block;object-fit:cover;transform:scale(1);filter:none;transition:transform .85s cubic-bezier(.2,.7,.2,1),filter .5s}
#projects .portfolio-card .space-media>img{object-fit:contain;background:#deded9}
#projects .portfolio-card:hover .card-media>img{filter:none;transform:scale(1)}
#projects .portfolio-card .case-open:hover .card-media>img,#projects .portfolio-card .case-open:focus-visible .card-media>img{transform:scale(1.035)}
#projects .portfolio-card .case-open:hover .card-media:after{opacity:1}
.portfolio-badge{position:absolute;z-index:2;left:18px;top:18px;padding:8px 11px;background:#050609c7;color:#eeece8;border:1px solid #eeece838;backdrop-filter:blur(8px);font:9px/1.4 Arial,sans-serif;letter-spacing:1px}
.media-action{position:absolute;z-index:3;right:18px;bottom:18px;display:flex;align-items:center;gap:22px;color:#050609;background:#eeece8;padding:9px 9px 9px 15px;font-size:11px;transform:translateY(8px);opacity:0;transition:opacity .25s,transform .35s}
.media-action i{display:grid;place-items:center;font:normal 24px/1 Arial,sans-serif;width:32px;height:32px;background:#050609;color:#eeece8}
.case-open:hover .media-action,.case-open:focus-visible .media-action{opacity:1;transform:none}
.portfolio-card-copy{padding:23px 0 0}
.case-department{display:block;color:#a3a8a5;font:10px/1.6 Arial,sans-serif;letter-spacing:1.5px}
#projects .portfolio-card-copy h3{display:flex;justify-content:space-between;gap:20px;align-items:center;color:#eeece8;font-size:clamp(25px,2.7vw,38px);letter-spacing:-.035em;font-weight:400;line-height:1.3;margin:11px 0 14px}
.portfolio-card-copy h3>span{font:300 25px/1 Arial,sans-serif;color:#a9afac;transition:transform .35s}
.case-open:hover h3>span{transform:translate(3px,-3px)}
.portfolio-card-copy>p{font-size:13px;line-height:1.85;color:#a5aaa7;margin:0;max-width:540px}
#projects .portfolio-card .case-tags{gap:7px 17px;margin:18px 0 0}
#projects .portfolio-card .case-tags>span{border:0;border-radius:0;padding:0;background:none;color:#8c9490;font-size:10px;line-height:1.6}
#projects .portfolio-card .case-tags>span:before{content:'/';margin-right:7px;color:#5e6862}
.portfolio-card-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:18px;margin-top:24px;border-top:1px solid #eeece824;font-size:10px;color:#8c9590}
.save-case,.quick-3d{border:0;background:none;padding:5px 0;color:#b7beb8;font-size:11px;line-height:1.5;text-align:left;display:inline-flex;align-items:center;gap:8px}
.save-case>span:first-child{font-size:16px;line-height:1}.save-case[aria-pressed=true]{color:#eeece8}.save-case:hover,.quick-3d:hover{color:#fff}.quick-3d span{margin-left:8px;font-size:15px}
#projects .portfolio-card.portfolio-featured{grid-column:1/-1;padding-bottom:12px}
#projects .portfolio-featured .case-open{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:0;align-items:stretch;border-top:1px solid #eeece82b;border-bottom:1px solid #eeece82b}
#projects .portfolio-featured .card-media{aspect-ratio:16/10;min-height:100%;height:100%}
#projects .portfolio-featured .portfolio-card-copy{padding:32px 0 28px 38px;display:flex;flex-direction:column;justify-content:center}
#projects .portfolio-featured .portfolio-card-copy h3{font-size:clamp(29px,3.15vw,45px);margin-top:14px}
#projects .portfolio-featured .portfolio-card-copy>p{max-width:370px}
.featured-note{font:8px/1.5 Arial,sans-serif;letter-spacing:1.8px;color:#858f88;margin-top:30px;display:block}
.featured-quote{font-weight:400;font-size:clamp(18px,1.7vw,25px);line-height:1.65;letter-spacing:-.03em;display:block;margin-top:9px;color:#d4d8d0;max-width:330px}
#projects .portfolio-featured .portfolio-card-foot{border:0;margin-top:0;padding-top:15px}
.project-empty{grid-column:1/-1;min-height:280px;padding:55px 0;border-block:1px solid #eeece828}
.project-empty>span{font:10px/1.5 Arial,sans-serif;letter-spacing:1.8px;color:#8f9893}.project-empty h3{font-size:28px;font-weight:400;line-height:1.5;margin:20px 0 12px;color:#eeece8}.project-empty p{font-size:13px;color:#a1aaa3;line-height:1.8}.project-empty button{border:0;border-bottom:1px solid #eeece880;background:none;color:#eeece8;padding:13px 0;font-size:12px;margin-top:12px}
#projects .work-end{border-color:#eeece825;color:#a1aaa3;font-size:13px}#projects .work-end>a{color:#eeece8;font-size:12px;border-bottom:1px solid #eeece85c;padding-bottom:7px}

/* Case studies read as one editorial surface rather than nested cards. */
#case-dialog{width:min(1260px,95vw);max-width:95vw;max-height:94dvh;padding:0;border:1px solid #eeece82b;background:#050609;color:#eeece8;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#eeece840 #050609;z-index:160}
#case-dialog::backdrop,#case-lightbox::backdrop{background:#050609de;backdrop-filter:blur(12px)}
.case-dialog-top{position:sticky;top:0;z-index:8;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 32px;border-bottom:1px solid #eeece829;background:#050609ee;backdrop-filter:blur(18px)}
#case-dialog-index{font:9px/1.5 Arial,sans-serif;letter-spacing:1.5px;color:#929a95}
#case-dialog-title{font-size:19px;font-weight:400;line-height:1.4;margin:7px 0 0;color:#eeece8;letter-spacing:-.02em}
#case-close,#lightbox-close{height:40px;width:40px;flex:0 0 40px;display:grid;place-items:center;padding:0;border:1px solid #eeece845;border-radius:50%;background:transparent;color:#eeece8;font:25px/1 Arial,sans-serif;transition:background .2s,color .2s,transform .3s}
#case-close:hover,#lightbox-close:hover{background:#eeece8;color:#050609;transform:rotate(90deg)}
.case-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:stretch;min-height:500px}
.case-hero-image{position:relative;min-width:0;min-height:420px;overflow:hidden;background:#deded9}
.case-hero-image>img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;display:block;background:#deded9}
.case-hero-copy{padding:40px 36px 34px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.case-subtitle{font:9px/1.6 Arial,sans-serif;letter-spacing:1.6px;color:#8a928d;margin:9px 0 20px}
.case-hero-copy h2{font-weight:400;font-size:clamp(25px,2.6vw,36px);line-height:1.55;letter-spacing:-.04em;margin:0 0 20px;max-width:420px;color:#eeece8}
.case-summary{font-size:13px;line-height:1.85;color:#b0b5af;margin:0;max-width:430px}
.case-facts{display:grid;grid-template-columns:1fr 1fr;gap:19px 22px;margin:28px 0;border-top:1px solid #eeece829;padding-top:22px}
.case-facts>div{min-width:0}.case-facts dt{font-size:10px;color:#838e86;margin:0 0 7px}.case-facts dd{font-size:12px;line-height:1.7;color:#d0d5cd;margin:0;overflow-wrap:anywhere}
.case-primary-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:auto}
.case-primary{border:1px solid #eeece8;background:#eeece8;color:#050609;min-width:230px;padding:15px 17px;font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:22px;transition:background .2s,color .2s}
.case-primary span{font:11px Arial,sans-serif}.case-primary:hover{background:transparent;color:#eeece8}
.case-subnav{display:flex;align-items:center;gap:36px;flex-wrap:wrap;padding:20px 36px;border-top:1px solid #eeece825;border-bottom:1px solid #eeece825;margin:0;font-size:11px}
.case-subnav button{border:0;background:none;color:#9da79e;padding:7px 0;font-size:11px;transition:color .2s}.case-subnav button:hover{color:#eeece8}
#case-dialog section[id]{scroll-margin-top:105px}
.case-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:36px;margin:0 0 34px}
.case-section-heading>span{font:9px/1.6 Arial,sans-serif;letter-spacing:1.8px;color:#929a93;padding-top:7px;min-width:180px}
.case-section-heading h3{margin:0;font-size:clamp(24px,2.8vw,36px);font-weight:400;line-height:1.5;letter-spacing:-.04em;max-width:640px;width:60%;color:#eeece8}
.case-reading,.case-image-section,.case-material{padding:64px 36px;border-bottom:1px solid #eeece81f}
.case-question{width:60%;margin:0 0 45px auto}.case-question>span{font-size:10px;color:#919b93}.case-question h4{font-weight:400;font-size:19px;line-height:1.7;margin:12px 0 16px;color:#d9ded4}.case-question>p{font-size:13px;line-height:1.95;color:#a5b0a5;margin:0;max-width:570px}
.case-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;border-top:1px solid #eeece82c;padding-top:28px}
.case-chapters article{position:relative;min-width:0;padding-right:16px}
.case-chapters article>span{display:block;font:300 42px/1 Arial,sans-serif;letter-spacing:-2px;color:transparent;-webkit-text-stroke:1px #eeece83c;margin-bottom:27px;transition:color .3s}
.case-chapters article:hover>span{color:#eeece8}
.case-chapters h4{font-weight:400;font-size:18px;line-height:1.5;margin:0 0 14px;color:#e1e5da}.case-chapters p{font-size:12px;line-height:1.95;color:#a0aca0;margin:0;max-width:300px}
.gallery-main{position:relative;display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;background:#deded9;overflow:hidden;padding:0;text-align:left}
.gallery-main>img{height:100%;width:100%;display:block;object-fit:contain;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.gallery-main:hover>img{transform:scale(1.025)}
.gallery-main>span{position:absolute;right:20px;bottom:20px;border:1px solid #eeece850;background:#050609b8;backdrop-filter:blur(10px);color:#eeece8;padding:10px 14px;font-size:11px}
.gallery-bar{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:19px 0}.gallery-bar>p{font-size:12px;line-height:1.8;color:#a5b0a4;margin:0;max-width:650px}.gallery-paging{display:flex;align-items:center;gap:18px;flex-shrink:0}.gallery-paging>span{font:10px Arial,sans-serif;letter-spacing:1px;color:#a1ad9f}.gallery-paging button{height:36px;width:36px;padding:0;border:1px solid #eeece830;background:none;color:#eeece8;font:18px Arial,sans-serif;transition:background .2s,color .2s}.gallery-paging button:hover{background:#eeece8;color:#050609}
.gallery-thumbs{display:flex;gap:12px;overflow:auto;padding:4px 4px 10px;margin:0 -4px;scrollbar-width:thin;scrollbar-color:#eeece840 transparent}
.gallery-thumbs>button{position:relative;flex:0 0 140px;width:140px;aspect-ratio:16/10;padding:0;background:#d6d7d0;border:1px solid transparent;opacity:.5;transition:opacity .25s,border-color .25s}
.gallery-thumbs>button[aria-pressed=true]{opacity:1;border-color:#eeece8;box-shadow:0 0 0 3px #050609,0 0 0 4px #eeece8}.gallery-thumbs>button:hover{opacity:1}
.gallery-thumbs img{width:100%;height:100%;display:block;object-fit:contain}.gallery-thumbs span{position:absolute;bottom:6px;left:6px;color:#eeece8;background:#050609b3;padding:4px 6px;font:8px Arial,sans-serif}
.case-color-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.case-color-strip>button{padding:0;border:0;border-right:1px solid #050609;background:none;text-align:left;color:#eeece8;min-width:0}.case-color-strip>button:last-child{border-right:0}
.case-color-strip i{display:block;width:100%;height:130px;background:var(--swatch);transition:height .3s,filter .3s;border:1px solid #eeece812}
.case-color-strip>button:hover i{filter:brightness(1.1)}
.case-color-strip>button>span{display:block;font-size:12px;line-height:1.5;padding:16px 15px 0 0}.case-color-strip small{display:block;font:9px/1.6 Arial,sans-serif;letter-spacing:1px;color:#97a091;margin-top:7px}
.color-feedback{font-size:10px;line-height:1.8;color:#899683;margin:19px 0 0;min-height:18px}
.case-deliverables{display:flex;flex-wrap:wrap;gap:15px 26px;border-top:1px solid #eeece82b;margin-top:30px;padding-top:24px;color:#b0baa5;font-size:11px;line-height:1.6}.case-deliverables>span:first-child{margin-right:auto;color:#778572}
.case-next-step{position:relative;padding:65px 36px 55px;overflow:hidden}
.case-next-step:after{content:'↗';position:absolute;right:5%;top:18px;font:200px/1 Arial,sans-serif;color:transparent;-webkit-text-stroke:1px #eeece81f;pointer-events:none}
.case-next-step>span{font:9px Arial,sans-serif;letter-spacing:2px;color:#85927e}.case-next-step h3{font-size:clamp(27px,3.3vw,43px);font-weight:400;line-height:1.5;letter-spacing:-.04em;margin:24px 0;color:#eeece8}.case-next-step button{position:relative;z-index:1;background:none;color:#eeece8;padding:13px 0;border:0;border-bottom:1px solid #eeece870;font-size:12px;line-height:1.7}
.case-source{padding:0 36px 28px;margin:0;max-width:980px;color:#8b9685;font-size:10px;line-height:1.9}
.case-pagination{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eeece828}
.case-pagination button{padding:28px 36px;border:0;background:none;text-align:left;color:#eeece8;min-width:0;transition:background .25s}.case-pagination button:last-child{border-left:1px solid #eeece828;text-align:right}.case-pagination button:hover{background:#eeece809}.case-pagination span{display:block;font:9px/1.6 Arial,sans-serif;letter-spacing:1.4px;color:#939e8c}.case-pagination strong{font-size:22px;font-weight:400;line-height:1.5;display:block;margin-top:12px;overflow-wrap:anywhere}
.viewer-back{flex-shrink:0;border:1px solid #eeece840;padding:10px 13px;background:none;color:#eeece8;font-size:11px;margin-right:18px}.viewer-back:hover{background:#eeece8;color:#050609}

/* Original concept graphics, rendered with typography, paper, and simple geometry. */
.portfolio-art{position:relative;width:100%;height:100%;min-height:0;overflow:hidden;isolation:isolate;padding:27px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;color:#302d22;background:#c7c7b7;transition:transform .8s}
.portfolio-art .art-corner{font:8px/1.5 Arial,sans-serif;letter-spacing:2px;position:relative;z-index:2;max-width:70%;text-transform:uppercase}
.portfolio-art .art-caption{position:relative;z-index:2;font:8px/1.6 Arial,sans-serif;letter-spacing:2px}
.portfolio-art .art-word{position:relative;z-index:2;font-size:clamp(80px,10vw,152px);font-weight:800;line-height:1;letter-spacing:-.085em;margin-top:auto;margin-bottom:auto;transform:translateY(6px)}
.portfolio-art .art-word small{display:block;font-size:11px;font-weight:400;letter-spacing:3px;line-height:1.7;margin-top:19px;padding-left:6px}
.portfolio-art .art-orbit{position:absolute;width:85%;height:78%;border:1px solid currentColor;border-radius:50%;opacity:.4;right:-25%;top:9%;transform:rotate(-26deg);pointer-events:none}
.portfolio-art .art-orbit:before,.portfolio-art .art-orbit:after{content:'';position:absolute;inset:12%;border:1px solid currentColor;border-radius:50%}.portfolio-art .art-orbit:after{inset:24%}
.portfolio-art.art-yexu{background:#d1663e;color:#241f19;background-image:radial-gradient(ellipse at 100% 0,#eb8a50 0,transparent 70%)}
.portfolio-art.art-yexu:after{content:'野';position:absolute;font-size:clamp(180px,22vw,380px);font-weight:900;line-height:1;letter-spacing:-.07em;right:-9%;bottom:-25%;color:transparent;-webkit-text-stroke:1px #241f1926;transform:rotate(-12deg);z-index:-1}
.portfolio-art.art-yexu .art-orbit{border-radius:48% 52% 40% 60%;width:76%;height:130%;top:-26%;right:-16%;transform:rotate(25deg);opacity:.23}
.portfolio-art.art-mono{background:#d3d5c7;color:#333a2e;background-image:linear-gradient(132deg,#ffffff36,transparent 52%)}
.portfolio-art.art-mono .art-word{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(90px,11vw,167px);letter-spacing:-.07em}
.portfolio-art.art-mono .art-word small{font-family:Arial,sans-serif;font-size:10px;letter-spacing:6px}
.portfolio-art.art-mono .art-orbit{width:55%;height:90%;right:4%;top:6%;border-radius:45% 45% 0 0;transform:rotate(0);opacity:.25;background:linear-gradient(90deg,#7483621a,transparent)}
.portfolio-art.art-mono .art-orbit:before{inset:6%;border-radius:45% 45% 0 0}.portfolio-art.art-mono .art-orbit:after{inset:12%;border-radius:45% 45% 0 0}
.case-open:hover .portfolio-art{transform:scale(1.025)}
.case-hero-image>.portfolio-art{min-height:100%;position:absolute;inset:0;padding:38px}
.case-hero-image .art-word{font-size:clamp(95px,12vw,165px)}
.concept-applications{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;align-items:center}
.concept-applications>.portfolio-art{aspect-ratio:1.25;height:auto;min-height:0}
.concept-note>span{font:9px/1.6 Arial,sans-serif;letter-spacing:1.2px;color:#89977f}.concept-note h3{font-weight:400;font-size:27px;line-height:1.6;letter-spacing:-.04em;margin:23px 0 20px;color:#eeece8;max-width:250px}.concept-note p{font-size:13px;line-height:1.9;color:#a5b19a;margin:0;max-width:340px}.concept-note>small{font-size:10px;color:#7c8d70;display:block;margin-top:30px}
.portfolio-art.art-application{padding:25px;background:#e4dfd1;color:#3c3b31;perspective:700px;overflow:hidden}
.art-application .art-word{font-size:64px!important;position:absolute;left:9%;top:22%;transform:rotate(-8deg);background:#d1663e;padding:28px 18px 100px;width:49%;height:65%;box-shadow:10px 15px 20px #0002;letter-spacing:-.06em}
.art-application.art-mono .art-word{background:#c7ccba;font-size:65px!important;transform:rotate(-8deg);color:#333a2e}
.art-application .art-word small{font-size:6px;letter-spacing:1px;line-height:1.8;margin-top:14px}.art-application .art-orbit{display:none}
.art-application .art-package{position:absolute;z-index:3;display:flex;flex-direction:column;justify-content:space-between;right:11%;bottom:12%;width:29%;height:59%;padding:20px 14px;background:linear-gradient(90deg,#ce653e 0,#d9764a 82%,#ac502f 82%);color:#241f19;box-shadow:14px 20px 22px #0003;transform:rotate(7deg);border-top:5px solid #e18b5b;border-left:1px solid #e59b77}
.art-package>span{font-size:35px;font-weight:700;line-height:1.05;letter-spacing:-.06em}.art-package>small{font:6px/1.7 Arial,sans-serif;letter-spacing:1px;padding-right:8px}
.art-application.art-mono .art-package{background:linear-gradient(90deg,#b9bea8 0,#cbd0bc 82%,#9ba18c 82%);border-top-color:#d7dccc;border-left-color:#e2e7d7;color:#333a2e}.art-application.art-mono .art-package>span{font-family:Georgia,serif;font-size:48px;font-weight:400}

#case-lightbox{position:fixed;inset:0;width:min(1500px,96vw);max-width:96vw;max-height:96dvh;margin:auto;padding:48px 15px 18px;border:0;background:#050609;color:#eeece8;overflow:auto;z-index:250;overscroll-behavior:contain}
#lightbox-close{position:absolute;right:12px;top:6px;height:34px;width:34px;font-size:23px}
#lightbox-image{display:block;width:100%;height:calc(90dvh - 100px);max-height:76dvh;object-fit:contain;background:#050609}
#lightbox-caption{font-size:12px;line-height:1.7;text-align:center;color:#a4afa0;margin:16px auto 0;max-width:850px;padding:0 10px}
#projects :is(button,input,a):focus-visible,#case-dialog :is(button,a):focus-visible,#case-lightbox button:focus-visible,.viewer-back:focus-visible{outline:2px solid #eeece8;outline-offset:5px}
#projects [hidden],#case-dialog [hidden],#case-lightbox [hidden],#viewer [hidden]{display:none!important}
@keyframes portfolio-enter{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}

@media(min-width:1600px){#projects .portfolio-featured .portfolio-card-copy{padding-left:52px}.portfolio-art .art-word{font-size:152px}.portfolio-art.art-mono .art-word{font-size:166px}}
@media(max-width:1000px){
  #projects .work-intro{grid-template-columns:1.1fr 1fr;gap:35px}#projects .work-disciplines{display:grid;grid-template-columns:1fr;gap:18px}#projects .work-disciplines>span{padding-left:13px}
  #projects .project-grid{gap:48px 24px}#projects .portfolio-featured .portfolio-card-copy{padding:25px 0 25px 28px}#projects .portfolio-featured .card-media{min-height:390px;aspect-ratio:auto}#projects .portfolio-featured .portfolio-card-copy h3{font-size:30px}.featured-quote{font-size:19px}.featured-note{margin-top:22px}.case-topline>span:first-child{max-width:72%}
  .case-hero{grid-template-columns:1fr 1fr;min-height:0}.case-hero-image{min-height:430px}.case-hero-copy{padding:28px 25px}.case-hero-copy h2{font-size:26px}.case-facts{gap:17px}.case-primary{min-width:205px;width:100%}.case-primary-actions{gap:15px}
  .case-dialog-top{padding:17px 26px}.case-subnav{padding:18px 26px;gap:25px}.case-reading,.case-image-section,.case-material{padding:48px 26px}.case-next-step{padding:50px 26px}.case-source{padding-inline:26px}.case-pagination button{padding:25px 26px}.case-section-heading h3{font-size:28px}.case-chapters{gap:23px}.case-chapters article{padding-right:0}.case-chapters h4{font-size:16px}.case-chapters p{font-size:12px}
  .concept-applications{gap:28px;grid-template-columns:1.25fr 1fr}.concept-note h3{font-size:23px}.concept-note p{font-size:12px}.portfolio-art{padding:23px}.portfolio-art .art-word{font-size:100px}.portfolio-art.art-mono .art-word{font-size:115px}.case-hero-image>.portfolio-art{padding:28px}.case-hero-image .art-word{font-size:105px}.art-application .art-word{font-size:50px!important;padding:25px 15px}.art-application.art-mono .art-word{font-size:54px!important}.art-application .art-package{padding:16px 11px}.art-package>span{font-size:29px}
}
@media(max-width:700px){
  #projects .work-intro{display:block;margin:28px 0 34px}#projects .work-statement{font-size:29px}#projects .work-intro-note{font-size:12px}#projects .work-disciplines{grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}#projects .work-disciplines>span{font-size:10px}#projects .work-disciplines b{font-size:8px;letter-spacing:1px}
  #projects .filterbar{gap:16px;padding-bottom:16px}#projects .filters{width:100%;gap:3px}#projects .filters button{padding:10px 11px;font-size:11px}#projects .filters sup{font-size:8px}#projects .saved-filter{padding:9px 12px;font-size:11px}.project-search-row{gap:14px;padding-top:17px}.project-search-label{max-width:none;width:100%;flex:1 1 100%;min-width:0}#projects .project-search-row .filter-note{margin:0;font-size:9px}.portfolio-status{margin:9px 0 20px;font-size:10px}#saved-to-brief{margin-left:auto;font-size:10px}
  #projects .project-grid{grid-template-columns:minmax(0,1fr);gap:44px}#projects .portfolio-card.portfolio-featured{grid-column:auto;padding-bottom:0}#projects .portfolio-featured .case-open{display:block;border:0}#projects .portfolio-featured .card-media{min-height:0;height:auto;aspect-ratio:16/10}#projects .portfolio-featured .portfolio-card-copy{padding:23px 0 0}#projects .portfolio-featured .portfolio-card-copy h3,#projects .portfolio-card-copy h3{font-size:29px}.featured-note,.featured-quote{display:none}#projects .portfolio-featured .portfolio-card-foot{margin-top:24px;padding-top:18px;border-top:1px solid #eeece824}#projects .portfolio-card .case-topline{font-size:8px;letter-spacing:1px}.portfolio-card-copy>p{font-size:12px}.portfolio-badge{left:12px;top:12px;padding:7px 9px;font-size:8px}.media-action{opacity:1;transform:none;bottom:12px;right:12px;gap:10px;padding:6px 6px 6px 10px;font-size:9px}.media-action i{width:25px;height:25px;font-size:20px}.portfolio-card-foot{font-size:9px}.save-case,.quick-3d{font-size:10px}#projects .work-end{margin-top:45px;gap:17px}
  #case-dialog{max-width:100vw;width:100vw;max-height:100dvh;height:100dvh;border:0;margin:0}.case-dialog-top{padding:15px 20px;min-height:83px}#case-dialog-title{font-size:17px}#case-dialog-index{font-size:8px;letter-spacing:1px}#case-close{width:36px;height:36px;flex-basis:36px;font-size:23px}.case-hero{display:block}.case-hero-image{aspect-ratio:16/11;min-height:0}.case-hero-copy{padding:28px 22px 30px}.case-hero-copy h2{font-size:28px;max-width:500px}.case-summary{font-size:13px}.case-facts{grid-template-columns:1fr 1fr;gap:19px 24px}.case-primary-actions{gap:24px}.case-primary{min-width:0;width:auto;flex:1}.case-subnav{padding:15px 22px;gap:12px 22px}.case-subnav button{font-size:10px}#case-dialog section[id]{scroll-margin-top:98px}
  .case-reading,.case-image-section,.case-material{padding:40px 22px}.case-section-heading{display:block;margin-bottom:25px}.case-section-heading>span{font-size:8px;letter-spacing:1.5px;padding:0}.case-section-heading h3{width:100%;max-width:none;font-size:27px;margin-top:17px}.case-question{width:100%;margin-bottom:30px}.case-question h4{font-size:18px}.case-question>p{font-size:12px}.case-chapters{grid-template-columns:1fr;gap:26px;padding-top:25px}.case-chapters article{display:grid;grid-template-columns:45px 1fr;column-gap:18px;align-items:start}.case-chapters article>span{grid-row:1/3;font-size:34px;letter-spacing:-1px;margin:0;padding-top:3px}.case-chapters h4{font-size:17px;margin:0 0 9px}.case-chapters p{max-width:none;font-size:12px}
  .gallery-main{aspect-ratio:4/3}.gallery-main>span{font-size:9px;padding:8px 10px;right:12px;bottom:12px}.gallery-bar{display:block;padding:16px 0}.gallery-bar>p{font-size:11px}.gallery-paging{justify-content:flex-end;margin-top:14px;gap:15px}.gallery-paging button{width:32px;height:32px}.gallery-thumbs{gap:10px}.gallery-thumbs>button{width:104px;flex-basis:104px}.case-color-strip i{height:90px}.case-color-strip>button>span{font-size:10px;padding-right:10px;overflow-wrap:anywhere}.case-color-strip small{font-size:8px}.color-feedback{font-size:9px}.case-deliverables{gap:13px 20px;font-size:10px}.case-deliverables>span:first-child{width:100%}.case-next-step{padding:42px 22px}.case-next-step h3{font-size:30px}.case-next-step:after{right:-8px;top:35px;font-size:140px}.case-next-step button{font-size:11px}.case-source{padding:0 22px 24px;font-size:9px}.case-pagination button{padding:22px}.case-pagination span{font-size:7px;letter-spacing:.8px}.case-pagination strong{font-size:17px;margin-top:10px}.viewer-back{padding:9px;font-size:10px;margin-right:10px}
  .portfolio-art{padding:24px}.portfolio-art .art-word{font-size:114px}.portfolio-art.art-mono .art-word{font-size:125px}.portfolio-art .art-word small{font-size:9px;margin-top:15px}.portfolio-art .art-corner,.portfolio-art .art-caption{font-size:7px;letter-spacing:1.5px}.case-hero-image>.portfolio-art{padding:27px}.case-hero-image .art-word{font-size:130px}.concept-applications{grid-template-columns:1fr;gap:30px}.concept-applications>.portfolio-art{aspect-ratio:1.2}.concept-note h3{font-size:25px;max-width:none;margin:17px 0 16px}.concept-note p{max-width:none;font-size:12px}.concept-note>small{margin-top:19px}.art-application .art-word{font-size:70px!important;padding:30px 20px}.art-application.art-mono .art-word{font-size:75px!important}.art-application .art-word small{font-size:7px}.art-package>span{font-size:38px}.art-application .art-package{padding:22px 15px}
  #case-lightbox{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;padding:58px 8px 22px;display:none}#case-lightbox[open]{display:flex;flex-direction:column;justify-content:center}#lightbox-image{height:auto;min-height:0;max-height:78dvh;flex:1;object-fit:contain}#lightbox-close{right:16px;top:14px}#lightbox-caption{font-size:11px;padding:0 12px;flex-shrink:0}
}
@media(max-width:380px){#projects .filters button{font-size:10px;padding:10px 8px}.portfolio-card-copy h3{font-size:26px}.case-primary-actions{gap:15px}.case-primary{font-size:11px;padding:14px}.case-subnav{gap:12px 16px}.case-hero-copy h2{font-size:25px}.case-next-step h3{font-size:27px}.case-pagination strong{font-size:15px}.art-application .art-word{font-size:57px!important}.art-application.art-mono .art-word{font-size:62px!important}}
@media(prefers-reduced-motion:reduce){#projects .portfolio-card,#projects .portfolio-card *,#case-dialog *,#case-lightbox *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.portfolio-card:hover *{translate:none!important}}
/* Keep the work itself in the foreground; detail captures fill their editorial crops. */
#projects .work-intro{margin-top:26px;margin-bottom:32px}
#projects .work-statement{font-size:clamp(23px,2.3vw,33px);line-height:1.4;margin-bottom:14px}
#projects .portfolio-card .space-media>img{object-fit:cover}
.case-hero-image.model-hero>img{object-fit:cover}

.case-hero-image.brand-hero,.case-hero-image.brand-hero>img{background:#101b17}
.case-hero-image.interactive-hero{background:#b5b5af;min-height:440px;display:flex}
.case-model-preview{width:100%;min-width:0;display:flex;flex-direction:column;position:relative;isolation:isolate}
.case-model-preview [data-viewer-id="canvas-wrap"]{position:relative;flex:1;min-height:370px;overflow:hidden}
.case-model-preview canvas{position:absolute;inset:0;width:100%;height:100%;outline-offset:-3px;touch-action:pan-y}
.case-model-preview [data-viewer-id="loading"]{position:absolute;inset:0;z-index:2;display:grid;place-content:center;gap:12px;text-align:center;background:#b5b5afe8;color:#343630;font-size:12px;padding:24px}
.case-model-preview [data-viewer-id="loading"] button{padding:9px 14px;border:1px solid #34363050;background:transparent;color:inherit}
.case-model-preview [data-viewer-id="material-note"]{position:absolute;bottom:14px;left:14px;right:14px;background:#f0eee9e8;padding:9px 12px;color:#343630;font-size:11px;display:none;pointer-events:none}
.preview-badge{position:absolute;top:18px;left:18px;font:10px/1.4 Arial,sans-serif;letter-spacing:1px;color:#343630;pointer-events:none}
.preview-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 16px;background:#0b0d0e;border-top:1px solid #eeece820}
.case-model-preview .view-controls{padding:0;display:flex;justify-content:flex-start;align-items:center;gap:6px}
.case-model-preview .view-controls button,.preview-expand{font-size:11px;line-height:1.4;padding:8px 10px;border-radius:0;border:1px solid #eeece830;background:transparent;color:#eeece8}
.case-model-preview .view-controls button:hover,.preview-expand:hover{background:#eeece8;color:#101312}
.case-model-preview button[hidden]{display:none}
.case-model-preview button:disabled{opacity:.4;cursor:wait}
.preview-expand{border-color:#eeece860;white-space:nowrap}
@media(max-width:800px){.case-hero-image.interactive-hero{aspect-ratio:auto;min-height:0}.case-model-preview [data-viewer-id="canvas-wrap"]{flex:none;aspect-ratio:16/10;min-height:280px}.preview-toolbar{padding:12px}.case-model-preview .view-controls button,.preview-expand{font-size:10px;padding:8px}}
@media(max-width:800px){.case-hero{grid-template-columns:1fr}.case-hero-image{min-height:0;aspect-ratio:16/9}.case-hero-copy{padding:30px 24px}.case-hero-image>.portfolio-art{min-height:100%}}

/* Short case notes keep the work ahead of the copy. */
.case-next-step-compact{padding:26px 36px;display:flex;align-items:flex-start;justify-content:space-between;gap:28px}.case-next-step-compact:after{display:none}.case-next-step-compact>.case-source{padding:0;max-width:55%;font-size:11px}.case-source summary{cursor:pointer;padding:12px 0;color:#a5b0a4}.case-source p{margin:4px 0 0}.case-related{padding:24px 36px;margin:0;align-items:center}.case-reading .case-chapters{padding-top:0;border-top:0}.case-reading .case-chapters article>span{font-size:24px;margin-bottom:16px}.case-reading,.case-material{padding-top:40px;padding-bottom:40px}@media(max-width:600px){.case-next-step-compact{padding:22px;display:block}.case-next-step-compact>.case-source{max-width:100%;margin-top:12px}.case-related{padding:22px}.case-reading,.case-material{padding-top:30px;padding-bottom:30px}}
