:root{--ink:#102b35;--ink-deep:#0b2029;--ink-soft:#21434b;--paper:#f0f1eb;--paper-bright:#f8f8f3;--paper-warm:#e7e9e1;--line:#c9d0c9;--line-dark:#39545a;--muted:#66777b;--muted-dark:#9aada8;--orange:#ff684e;--orange-dark:#de513c;--mint:#b9e1d0;--blue:#82a8ff;--yellow:#e5ed73;--font-display:"Arial Narrow", "Helvetica Neue", Arial, sans-serif;--font-body:"Avenir Next", "Segoe UI", Helvetica, Arial, sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}body.modal-open{overflow:hidden}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--orange);outline-offset:4px}.showcase-page{min-width:320px;overflow:clip}.site-header{z-index:5;justify-content:space-between;align-items:center;gap:32px;max-width:1440px;margin:0 auto;padding:27px clamp(24px,5vw,80px);display:flex;position:relative}.brand{flex-shrink:0;align-items:center;gap:11px;display:inline-flex}.brand-mark{background:var(--orange);color:var(--ink-deep);justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:relative;transform:rotate(-4deg)}.brand-mark:after{border:1px solid var(--ink);content:"";z-index:-1;width:34px;height:34px;position:absolute;top:4px;left:4px}.brand-mark span{font-family:var(--font-mono);letter-spacing:-.08em;margin-left:-1px;font-size:10px;font-weight:800}.brand-copy{flex-direction:column;gap:1px;line-height:1;display:flex}.brand-copy strong{letter-spacing:-.04em;font-size:15px;font-weight:750}.brand-copy small{color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:8px}.main-nav{align-items:center;gap:clamp(20px,3vw,48px);margin-left:auto;margin-right:clamp(0px,2vw,28px);display:flex}.main-nav a,.admin-link,.quiet-link{color:var(--muted);letter-spacing:-.01em;font-size:12px;font-weight:650;transition:color .18s}.main-nav a:hover,.main-nav a.is-current,.quiet-link:hover{color:var(--ink)}.admin-link{border-bottom:1px solid var(--ink);color:var(--ink);align-items:center;gap:8px;padding-bottom:5px;display:inline-flex}.admin-link:hover{color:var(--orange-dark);border-color:var(--orange-dark)}.section-kicker,.project-card-footer,.spotlight-meta,.site-footer,.admin-mode-label,.admin-list-header,.admin-row-meta,.admin-row-actions{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:10px}.section-kicker{color:var(--muted);z-index:1;justify-content:space-between;align-items:center;max-width:1280px;margin:0 auto 27px;display:flex;position:relative}.section-kicker--dark{color:var(--muted-dark)}.kicker-index{color:var(--orange);margin-right:12px}.kicker-side-note{letter-spacing:.02em;text-transform:none;font-size:9px}.spotlight-section{background:var(--ink-deep);color:var(--paper-bright);padding:clamp(32px,3vw,48px) clamp(24px,5vw,80px) clamp(38px,4vw,54px);position:relative}.spotlight-section:before{content:"";opacity:.7;pointer-events:none;background-image:linear-gradient(#b9e1d012 1px,#0000 1px),linear-gradient(90deg,#b9e1d012 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000 0%,#0000 80%);mask-image:linear-gradient(90deg,#000 0%,#0000 80%)}.spotlight-card{background:var(--ink);border:1px solid var(--line-dark);z-index:1;border-radius:20px;grid-template-columns:minmax(280px,.74fr) minmax(0,1.26fr);max-width:1280px;margin:0 auto;display:grid;position:relative;overflow:hidden}.spotlight-copy{flex-direction:column;min-width:0;min-height:350px;padding:clamp(22px,2.5vw,34px) clamp(28px,4vw,58px) 24px;display:flex}.project-label{color:var(--mint);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:9px;font-size:10px;display:flex}.status-dot,.activity-dot{background:var(--orange);border-radius:100%;width:6px;height:6px;display:inline-block}.spotlight-copy h2{font-family:var(--font-display);letter-spacing:-.09em;overflow-wrap:anywhere;max-width:510px;margin:auto 0 22px;font-size:clamp(3.1rem,5vw,5.2rem);font-weight:600;line-height:.84}.spotlight-description{color:#c3d0cb;max-width:420px;margin:0;font-size:15px;line-height:1.55}.spotlight-tags{flex-wrap:wrap;gap:8px;margin-top:25px;display:flex}.spotlight-tags span{border:1px solid var(--line-dark);color:var(--mint);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border-radius:100px;padding:7px 10px;font-size:9px}.spotlight-cta{background:var(--orange);color:var(--ink-deep);border:0;border-radius:100px;align-self:flex-start;align-items:center;gap:13px;margin-top:28px;padding:13px 17px 13px 19px;font-size:12px;font-weight:800;transition:background .18s,transform .18s;display:inline-flex}.spotlight-cta:hover{background:var(--yellow);transform:translateY(-2px)}.spotlight-meta{border-top:1px solid var(--line-dark);color:var(--muted-dark);gap:25px;margin-top:auto;padding-top:17px;display:flex}.spotlight-meta span{flex-direction:column;gap:7px;line-height:1.3;display:flex}.spotlight-meta small{color:#688088;font-size:8px}.spotlight-visual{background:var(--mint);justify-content:center;align-items:center;min-height:350px;padding:clamp(22px,2.5vw,32px) clamp(22px,3vw,44px);display:flex;position:relative;overflow:hidden}.spotlight-visual:before,.spotlight-visual:after{content:"";border:1px solid #102b3547;width:10px;height:10px;position:absolute}.spotlight-visual:before{top:20px;left:20px}.spotlight-visual:after{bottom:20px;right:20px}.gallery-stage{position:relative;overflow:hidden}.gallery-image-button{background:#dbe2db;border:0;width:100%;height:100%;padding:0;display:block;overflow:hidden}.gallery-image-button:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(120deg,#fff3,#0000 38%);transition:opacity .2s;position:absolute;inset:0}.gallery-image-button:hover:after{opacity:1}.gallery-image-button img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.8,.2,1);display:block}.gallery-image-button:hover img{transform:scale(1.018)}.app-gallery--spotlight{z-index:1;width:100%;max-width:720px;position:relative}.app-gallery--spotlight .gallery-stage{aspect-ratio:1.95;background:#c3d1c9;border:8px solid #f6f7ef;border-radius:9px;box-shadow:0 23px 40px #05151b38,0 2px 5px #05151b24}.app-gallery--spotlight .gallery-empty{aspect-ratio:1.95}.app-gallery--spotlight .gallery-counter{color:var(--ink);font-family:var(--font-mono);letter-spacing:.06em;font-size:9px;font-weight:700;position:absolute;top:-31px;left:18px}.gallery-arrows{gap:5px;display:flex;position:absolute;bottom:15px;right:15px}.gallery-arrows button,.lightbox-controls button{color:var(--paper-bright);background:#0b2029d9;border:1px solid #f8f8f33d;border-radius:100%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background .18s;display:inline-flex}.gallery-arrows button:hover,.lightbox-controls button:hover{background:var(--orange);color:var(--ink-deep)}.app-gallery--spotlight .gallery-dots{justify-content:center;margin-top:17px}.gallery-dots{gap:6px;display:flex}.gallery-dots button{background:var(--line);border:0;border-radius:100px;width:18px;height:4px;padding:0;transition:background .18s,width .18s}.gallery-dots button.is-active{background:var(--orange);width:34px}.gallery-empty{aspect-ratio:1.6;background:var(--paper-warm);color:var(--muted);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:10px;display:flex}.gallery-section{max-width:1440px;margin:0 auto;padding:clamp(38px,4vw,60px) clamp(24px,5vw,80px) clamp(100px,13vw,190px);scroll-margin-top:20px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(46px,6vw,90px) clamp(22px,3.2vw,52px);margin-top:0;display:grid}.project-card{min-width:0}.app-gallery--card .gallery-stage{aspect-ratio:1.55;background:var(--paper-warm);border-radius:13px}.app-gallery--card .gallery-counter{color:var(--ink);font-family:var(--font-mono);letter-spacing:.04em;background:#f8f8f3e6;border-radius:100px;padding:6px 8px;font-size:9px;position:absolute;top:13px;left:13px}.app-gallery--card .gallery-dots{margin-top:12px}.app-gallery--card .gallery-arrows{bottom:13px;right:13px}.project-card-copy{justify-content:space-between;align-items:start;gap:16px;padding-top:20px;display:flex}.project-card-copy h3{font-family:var(--font-display);letter-spacing:-.07em;overflow-wrap:anywhere;margin:0 0 10px;font-size:clamp(1.7rem,2.7vw,2.7rem);font-weight:600;line-height:.95}.project-card-copy p{color:var(--muted);max-width:390px;margin:0;font-size:13px;line-height:1.5}.project-activity{color:var(--muted);font-family:var(--font-mono);text-align:right;text-transform:uppercase;flex-shrink:0;align-items:center;gap:7px;padding-top:4px;font-size:9px;display:flex}.activity-dot{background:var(--line);width:5px;height:5px}.activity-dot.is-live{background:var(--orange);box-shadow:0 0 0 3px #ff684e21}.project-card-footer{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:15px;margin-top:24px;padding-bottom:14px;display:flex}.project-impact{color:var(--ink);text-align:right;text-transform:none;max-width:52%}.empty-gallery{border:1px dashed var(--line);color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:14px;margin-top:43px;padding:75px 24px;display:flex}.empty-gallery h3{color:var(--ink);font-family:var(--font-display);letter-spacing:-.05em;margin:0;font-size:24px;font-weight:600}.lightbox{z-index:20;background:#041116e3;justify-content:center;align-items:center;padding:30px;display:flex;position:fixed;inset:0}.lightbox-content{width:100%;max-width:min(1200px,94vw);max-height:calc(100vh - 60px);position:relative}.lightbox-topline{color:var(--paper-bright);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:13px;font-size:10px;display:flex}.lightbox-topline button{color:var(--paper-bright);background:0 0;border:1px solid #f8f8f366;border-radius:100%;justify-content:center;align-items:center;width:35px;height:35px;padding:0;display:inline-flex}.lightbox-topline button:hover{background:var(--orange);border-color:var(--orange);color:var(--ink-deep)}.lightbox-content>img{background:var(--paper-warm);object-fit:contain;border-radius:6px;width:100%;max-height:calc(100vh - 145px);display:block}.lightbox-controls{color:var(--paper-bright);justify-content:center;align-items:center;gap:13px;margin-top:15px;display:flex}.lightbox-controls button{width:30px;height:30px}.lightbox-controls span{font-family:var(--font-mono);font-size:10px}.site-footer{background:var(--ink-deep);color:var(--muted-dark);justify-content:space-between;align-items:center;gap:30px;padding:26px clamp(24px,5vw,80px);display:flex}.footer-brand{color:var(--paper-bright);align-items:center;gap:10px;display:flex}.brand-mark--small{width:22px;height:22px}.brand-mark--small:after{width:22px;height:22px;top:3px;left:3px}.brand-mark--small span{font-size:7px}.site-footer a{color:var(--mint);align-items:center;gap:8px;display:inline-flex}.site-footer a:hover{color:var(--yellow)}.admin-login-view{min-height:100svh}.admin-login-main{background-image:linear-gradient(#102b350e 1px,#0000 1px),linear-gradient(90deg,#102b350e 1px,#0000 1px);background-size:52px 52px;place-items:center;min-height:calc(100svh - 89px);padding:56px 24px 80px;display:grid;position:relative}.admin-login-main:before{background:var(--paper);content:"";opacity:.72;pointer-events:none;position:absolute;inset:0}.admin-login-card{background:var(--paper-bright);border:1px solid var(--line);border-top:4px solid var(--orange);z-index:1;width:100%;max-width:430px;padding:38px clamp(26px,5vw,48px) 44px;position:relative}.admin-login-mark{background:var(--ink);color:var(--mint);border-radius:100%;justify-content:center;align-items:center;width:43px;height:43px;margin-bottom:31px;display:flex}.admin-login-eyebrow{color:var(--orange-dark);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.admin-login-card h1{font-family:var(--font-display);letter-spacing:-.09em;margin:13px 0 19px;font-size:clamp(3.4rem,8vw,5rem);font-weight:600;line-height:.85}.admin-login-card>p{color:var(--muted);max-width:330px;margin:0 0 30px;font-size:13px;line-height:1.55}.admin-login-card form{flex-direction:column;display:flex}.admin-login-card label{color:var(--ink);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px;font-size:9px}.admin-login-card input{background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:0;outline:none;min-height:46px;padding:0 13px;font-size:15px;transition:border-color .18s,box-shadow .18s}.admin-login-card input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #ff684e29}.admin-login-card form>button{background:var(--ink);color:var(--paper-bright);border:0;justify-content:center;align-items:center;gap:10px;min-height:46px;margin-top:17px;padding:0 18px;font-size:12px;font-weight:750;transition:background .18s,transform .18s;display:inline-flex}.admin-login-card form>button:hover:not(:disabled){background:var(--orange);color:var(--ink-deep);transform:translateY(-2px)}.admin-login-card form>button:disabled{cursor:wait;opacity:.65}.admin-login-error{color:var(--orange-dark);margin:12px 0 0;font-size:12px}.admin-header{border-bottom:1px solid var(--line)}.admin-header-actions{align-items:center;gap:28px;display:flex}.admin-mode-label{color:var(--orange-dark)}.quiet-link{align-items:center;gap:7px;display:inline-flex}.admin-main{max-width:1440px;margin:0 auto;padding:clamp(55px,8vw,105px) clamp(24px,5vw,80px) 140px}.admin-intro{grid-template-columns:minmax(0,1fr) 280px;align-items:end;gap:70px;margin-bottom:85px;display:grid}.admin-intro h1{font-family:var(--font-display);letter-spacing:-.09em;margin:30px 0 0;font-size:clamp(4rem,8vw,8.3rem);font-weight:600;line-height:.82}.admin-intro h1 em{color:var(--orange);letter-spacing:-.08em;margin-left:.85em;font-family:Georgia,serif;font-size:.7em;font-style:italic;font-weight:400;display:block}.admin-intro-copy{border-top:1px solid var(--ink);color:var(--muted);padding-top:14px;font-size:13px;line-height:1.6}.admin-intro-copy p{margin:0}.admin-saved-notice{background:var(--mint);color:var(--ink);align-items:center;gap:8px;margin-top:17px;padding:10px 12px;font-size:12px;display:flex}.admin-saved-notice.is-error{background:#ffd5cd}.admin-saved-notice svg{flex-shrink:0}.admin-list{border-top:1px solid var(--ink)}.admin-list-intro{margin-bottom:12px}.admin-list-intro .section-kicker{max-width:none;margin-bottom:0}.admin-hidden-note{color:var(--muted);margin:22px 0 0;font-size:11px;line-height:1.5}.admin-list-header{color:var(--muted);grid-template-columns:60px minmax(200px,1fr) 180px 160px 145px;padding:13px 0;display:grid}.admin-list-header span:first-child{padding-left:11px}.admin-row{border-top:1px solid var(--line);grid-template-columns:60px minmax(200px,1fr) 180px 160px 145px;align-items:center;gap:0;min-height:102px;transition:background .18s;display:grid}.admin-row:hover{background:#ffffff6b}.admin-row.is-hidden{opacity:.58}.admin-row-number{color:var(--muted);font-family:var(--font-mono);align-self:stretch;align-items:center;padding-left:11px;font-size:11px;display:flex}.admin-project-cell{align-items:center;gap:18px;min-width:0;display:flex}.admin-thumbnail{background:var(--paper-warm);border-radius:5px;flex-shrink:0;width:100px;height:62px;overflow:hidden}.admin-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.admin-project-name{min-width:0}.admin-project-name h2{font-family:var(--font-display);letter-spacing:-.06em;overflow-wrap:anywhere;margin:0 0 7px;font-size:22px;font-weight:600;line-height:1}.admin-project-name p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:360px;margin:0;font-size:11px;line-height:1.35;overflow:hidden}.admin-row-meta{color:var(--muted);padding-right:20px;font-size:9px;line-height:1.4}.admin-row-meta strong{color:var(--ink);font-family:var(--font-body);letter-spacing:-.02em;text-transform:none;margin-bottom:4px;font-size:12px;font-weight:650;display:block}.admin-row-state{color:var(--muted);align-items:center;gap:7px;font-size:9px;display:inline-flex}.admin-row-state.is-visible{color:var(--ink)}.admin-row-state .activity-dot{background:var(--line)}.admin-row-state.is-visible .activity-dot{background:var(--orange)}.admin-row-actions{justify-content:flex-end;align-items:center;gap:6px;padding-right:2px;display:flex}.admin-row-actions button{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:100%;justify-content:center;align-items:center;width:31px;height:31px;padding:0;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.admin-row-actions button:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:var(--paper-bright)}.admin-row-actions button:disabled{cursor:not-allowed;opacity:.3}.admin-row-actions .visibility-action{border-radius:100px;gap:5px;width:auto;margin-left:5px;padding:0 10px}.admin-row-actions .visibility-action:hover:not(:disabled){background:var(--orange);border-color:var(--orange);color:var(--ink-deep)}.admin-empty{border-bottom:1px solid var(--line);border-top:1px solid var(--line);color:var(--muted);text-align:center;padding:70px 0}@media (max-width:900px){.main-nav{display:none}.admin-intro{grid-template-columns:minmax(0,1fr) 220px;gap:45px}.spotlight-card{grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr)}.spotlight-copy,.spotlight-visual{min-height:350px}.admin-list-header,.admin-row{grid-template-columns:45px minmax(180px,1fr) 130px 125px}.admin-list-header span:nth-child(4),.admin-row>.admin-date{display:none}}@media (max-width:680px){.site-header{padding-top:22px;padding-bottom:22px}.admin-link span,.admin-mode-label{display:none}.admin-intro{display:block}.section-kicker{margin-bottom:21px}.kicker-side-note{display:none}.spotlight-card{border-radius:15px;flex-direction:column;display:flex}.spotlight-visual{order:-1;min-height:auto;padding:26px 21px 24px}.spotlight-copy{min-height:330px;padding:24px 25px 21px}.spotlight-copy h2{margin-top:26px;font-size:clamp(3.1rem,16vw,5rem)}.spotlight-description{font-size:14px}.spotlight-cta{margin-top:24px}.spotlight-meta{flex-wrap:wrap;gap:18px;font-size:9px}.app-gallery--spotlight .gallery-stage{border-width:5px}.gallery-section{padding-top:38px}.project-grid{grid-template-columns:1fr;gap:58px;margin-top:32px}.project-card-copy{gap:10px}.project-card-copy h3{font-size:2rem}.project-activity{font-size:8px}.project-card-footer{font-size:9px}.site-footer{flex-direction:column;align-items:start;gap:13px;padding-top:30px;padding-bottom:30px}.site-footer>span{font-size:9px}.lightbox{padding:18px}.lightbox-content{max-height:calc(100vh - 36px)}.lightbox-content>img{max-height:calc(100vh - 115px)}.admin-main{padding-top:55px;padding-bottom:90px}.admin-intro{margin-bottom:58px}.admin-intro h1{margin-top:27px;font-size:clamp(3.8rem,16vw,6rem)}.admin-intro-copy{max-width:300px;margin-top:46px}.admin-list-header{display:none}.admin-row{grid-template-columns:34px minmax(0,1fr) auto;gap:14px;padding:18px 0;display:grid}.admin-row-number{align-self:start;padding-top:5px;padding-left:3px}.admin-project-cell{align-items:start;gap:12px}.admin-thumbnail{width:70px;height:45px}.admin-project-name h2{font-size:20px}.admin-project-name p{white-space:normal;font-size:10px}.admin-row-meta{display:none}.admin-row-actions{flex-direction:column;align-items:start;padding:0}.admin-row-actions .visibility-action{margin-top:2px;margin-left:0}.admin-row-actions .visibility-action span{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
