:root{--canvas:#080f1b;--surface:#111e31;--surface2:#172740;--text:#eef4fd;--muted:#a7b5ca;--blue:#6bb3ff;--mint:#58d5a3;--orange:#ffab72;--line:#ffffff18;--shadow:0 24px 70px #0007}body{color:var(--text)!important;background:radial-gradient(circle at 8% 0%,#1c529c45,transparent 30%),radial-gradient(circle at 90% 4%,#7555c438,transparent 28%),linear-gradient(180deg,#07101d,#0b1422 48%,#0a1220)!important}body:before{opacity:.24!important}.top{position:sticky!important;top:0;z-index:10;background:#07101dcc!important;border-bottom:1px solid var(--line)!important;backdrop-filter:blur(18px)}.nav{min-height:74px!important}.brand-mark{background:linear-gradient(135deg,#62b3ff,#6a5df5)!important;box-shadow:0 10px 32px #335de955!important}.links a{color:var(--muted)!important}.links a:hover{color:#fff!important;background:#ffffff12!important}.hero{padding:84px 0 62px!important;grid-template-columns:1fr .78fr!important}.hero h1{font-size:clamp(44px,7vw,82px)!important;color:var(--text)!important}.lead,.intro,.muted{color:var(--muted)!important}.section{border-color:var(--line)!important;padding:62px 0!important}.section h2{color:var(--text)!important}.grid{grid-template-columns:repeat(3,1fr)!important;gap:16px!important}.card{background:linear-gradient(180deg,#132239,#101b2d)!important;border-color:var(--line)!important;border-radius:22px!important;color:var(--text)!important;box-shadow:0 7px 24px #0002!important;transition:.22s!important}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)!important}.card h3{color:var(--text)!important}.card p{color:var(--muted)!important}.card a{color:var(--blue)!important}.tag{background:#ffffff10!important;color:#b9c8d9!important;border:1px solid var(--line)}.shelf-card{background:linear-gradient(140deg,#162941,#101b2c)!important;border-color:var(--line)!important;border-left:3px solid var(--orange)!important;border-radius:20px!important;color:var(--text)!important;box-shadow:0 7px 24px #0002!important}.shelf-card h3{color:var(--text)!important}.shelf-card p{color:var(--muted)!important}.search{background:#0e1b2c!important;border-color:var(--line)!important;color:var(--text)!important}.search:focus{border-color:var(--blue)!important;box-shadow:0 0 0 3px #6bb3ff24!important}.project-visual{height:180px;border-radius:16px;margin:-4px -4px 17px;background:linear-gradient(135deg,#1d4165,#15233a);display:flex;align-items:center;justify-content:center;overflow:hidden}.project-visual img{width:100%;height:100%;object-fit:cover}.project-visual .mock{width:92%;height:82%;border:1px solid #fff2;border-radius:14px;background:#0a1423aa;padding:15px;position:relative;overflow:hidden}.project-visual .mock:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-60px;top:-70px;background:var(--accent,#4d87d9);opacity:.22}.mock b{position:relative;z-index:1;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.mock strong{position:relative;z-index:1;display:block;font-size:27px;letter-spacing:-.06em;margin-top:24px}.mock i{position:relative;z-index:1;display:block;width:68%;height:8px;background:#fff2;border-radius:9px;margin-top:10px}.mock i:last-child{width:43%}.new-project{border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,#132239,#101b2d);padding:0 19px 19px;overflow:hidden}.new-project:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.new-project h3{margin:0;color:var(--text);font-size:21px}.new-project p{color:var(--muted)}.new-project .project-visual{margin:0 -19px 18px;width:calc(100% + 38px)}.new-project .project-link{display:inline-block;margin-top:10px;color:var(--blue);font-weight:800}.shelf-card{cursor:pointer}.shelf-card:hover{transform:translateY(-3px);border-color:#6bb3ff77!important}.shelf-modal{position:fixed;inset:0;z-index:30;display:none;place-items:center;padding:22px;background:#020711bd}.shelf-modal.open{display:grid}.shelf-modal-panel{width:min(760px,100%);max-height:88vh;overflow:auto;border:1px solid var(--line);border-radius:24px;background:#111e31;padding:26px;box-shadow:var(--shadow)}.shelf-modal-panel h3{font-size:35px;letter-spacing:-.07em;margin:9px 0;color:var(--text)}.shelf-modal-panel .close{float:right;border:0;background:#ffffff10;color:#fff;border-radius:99px;width:34px;height:34px;font-size:21px}.shelf-modal-body{white-space:pre-wrap;color:var(--muted);margin-top:18px}.shelf-modal-meta{color:var(--orange);font-size:11px;letter-spacing:.1em;text-transform:uppercase}@media(max-width:760px){.wrap{width:calc(100% - 30px)!important}.grid{grid-template-columns:repeat(2,1fr)!important}.hero{display:block!important}.section-head{display:block!important}.shelf-grid{grid-template-columns:1fr!important}}@media(max-width:520px){.grid{grid-template-columns:1fr!important}.hero h1{font-size:48px!important}}
/* Production polish: bind to the actual current markup. */
header{position:sticky!important;top:0!important;z-index:50!important;background:#0b1626!important;border-bottom:1px solid rgba(180,205,235,.16)!important;box-shadow:0 4px 16px rgba(0,0,0,.16)!important;backdrop-filter:none!important}header nav{height:72px!important;min-height:72px!important;max-width:1080px!important;padding:0 20px!important}header .brand{color:#f4f8ff!important;font-size:16px!important;letter-spacing:-.03em}header .links{align-items:center!important}header .links a{position:relative;color:#b8c5d8!important;padding:8px 10px!important}header .links a:hover,header .links a:focus{color:#fff!important;background:transparent!important}header .links a:after{content:"";position:absolute;left:10px;right:10px;bottom:2px;height:2px;border-radius:3px;background:transparent}header .links a:hover:after,header .links a:focus:after{background:var(--blue)}main{padding-top:0!important}.hero{min-height:0!important;padding:58px 20px 46px!important}.hero>p:first-child{letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:800;color:var(--blue)!important}.hero h1{margin:12px 0 16px!important;max-width:720px!important}.section{padding:50px 20px!important}.section>h2{font-size:clamp(32px,4vw,48px)!important;letter-spacing:-.06em;margin:5px 0 12px!important}.grid{align-items:stretch}.card{display:flex!important;flex-direction:column!important;min-height:365px!important;padding:18px!important}.card h3{font-size:22px!important;letter-spacing:-.045em!important;margin:2px 0 6px!important}.card p{line-height:1.5!important;margin:0 0 12px!important}.card a{margin-top:auto!important;padding-top:12px!important;font-weight:800!important}.visual-card{padding-top:18px!important}.project-visual{height:172px!important;flex:0 0 172px!important;margin:-2px -2px 16px!important;background:linear-gradient(135deg,#173755,#12233a)!important}.new-project{min-height:365px!important}.new-project .project-visual{margin:-18px -18px 17px!important;width:calc(100% + 36px)!important}.shelf-card{min-height:0!important;margin:0!important;padding:20px!important}.shelf-card small{color:var(--orange)!important;letter-spacing:.11em;text-transform:uppercase;font-weight:800}.shelf-card h3{font-size:24px!important}.shelf-card .tag{margin:3px 3px 3px 0!important}.shelf-card p{line-height:1.55!important}.mock.roost .device{display:inline-grid;place-items:center;width:52px;height:74px;border:2px solid #a8c7ff;border-radius:10px;margin:12px 8px;color:#a8c7ff}.mock.roost .arrow{color:#58d5a3;font-size:28px}.mock.luumi .post{background:#fff2;border-radius:8px;padding:8px;margin-top:11px;width:80%;font-size:11px}.mock.checked .tick{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:#58d5a3;color:#062518;font-size:27px;font-weight:900;margin:13px 0}.mock.checked time{font-size:12px;color:#b9c8d9}.mock.cutout{background:conic-gradient(#d9e4f1 25%,#7890aa 0 50%,#d9e4f1 0 75%,#7890aa 0) 0/22px 22px!important}.mock.cutout .subject{width:74px;height:94px;border-radius:45% 45% 18px 18px;background:linear-gradient(135deg,#ffb06f,#8d65e9);margin:8px auto;box-shadow:0 0 0 5px #fff8}.mock.cutout b{color:#17233a!important}@media(max-width:650px){header nav{height:auto!important;min-height:64px!important;padding:11px 16px!important}header .links{margin-top:7px!important;padding-bottom:2px}.hero{padding:44px 0 38px!important}.section{padding:42px 0!important}.card{min-height:0!important}.project-visual{height:160px!important;flex-basis:160px!important}}
header .links a.is-active{color:#fff!important}header .links a.is-active:after{background:var(--blue)!important}
.project-search-row{display:flex;align-items:center;gap:12px;margin:18px 0 20px}.project-search-row .search{max-width:440px}.project-empty{grid-column:1/-1;border:1px dashed var(--line);border-radius:18px;padding:28px;color:var(--muted);text-align:center}@media(max-width:650px){.project-search-row{display:block}.project-search-row .count{display:block;margin-top:9px}}
/* Hidden project cards must override the flex-card presentation. */
#projects-grid .card[hidden]{display:none!important}
