/* Styles for generated project pages (/work/ and /work/<slug>/). Dark theme matching the home page. */
:root{--bg:#090d16;--panel:#0f1c2e;--line:#2f4a6b;--ink:#f3f7ff;--text:#c9d6e5;--muted:#9fb5d4;--blue:#4d9bff;--sky:#74c4ff;--display:'Space Grotesk',Inter,system-ui,sans-serif;--mono:'DM Mono',ui-monospace,Consolas,monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 Inter,system-ui,-apple-system,'Segoe UI',sans-serif;background-image:linear-gradient(#477b9b10 1px,transparent 1px),linear-gradient(90deg,#477b9b10 1px,transparent 1px);background-size:54px 54px}
a{color:var(--sky)}
img{max-width:100%;height:auto}
.wp-skip{position:absolute;left:-9999px}.wp-skip:focus{left:16px;top:12px;z-index:10;background:var(--ink);color:var(--bg);padding:8px 12px;border-radius:4px}
.wp-header{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px max(16px,calc((100% - 1120px)/2));background:#090d16e6;backdrop-filter:blur(10px);border-bottom:1px solid #1d2d44}
.wp-brand{color:var(--ink);text-decoration:none;font:800 24px var(--display);letter-spacing:-.06em}.wp-brand span{color:var(--blue)}.wp-brand small{font:10px var(--mono);letter-spacing:.08em;color:var(--muted);margin-left:6px}
.wp-header nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.wp-header nav a{color:var(--text);text-decoration:none;font:12px var(--mono);letter-spacing:.06em}.wp-header nav a:hover{color:var(--ink)}
.wp-header .wp-cta{padding:9px 13px;border:1px solid #699ad0;border-radius:4px;background:#143353;color:#eaf5ff}
.wp-main{max-width:1120px;margin:0 auto;padding:34px 16px 60px}
.wp-crumbs{font:11px var(--mono);letter-spacing:.05em;color:var(--muted);margin-bottom:28px}.wp-crumbs a{color:var(--muted)}
.wp-kicker{margin:0;color:var(--sky);font:12px var(--mono);letter-spacing:.14em}
h1{font:700 clamp(40px,7vw,76px)/1 var(--display);letter-spacing:-.05em;color:var(--ink);margin:12px 0 18px}
h2{font:700 24px/1.2 var(--display);letter-spacing:-.03em;color:var(--ink);margin:0 0 10px}
.wp-lead{font-size:clamp(18px,2.2vw,22px);line-height:1.55;color:#dde7f3;max-width:820px;margin:0 0 20px}
.wp-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 26px}.wp-tags li{border:1px solid var(--line);border-radius:3px;padding:5px 10px;font:10px var(--mono);letter-spacing:.06em;color:var(--muted)}
.wp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 26px}.wp-facts div{border:1px solid var(--line);border-radius:6px;padding:16px 18px;background:var(--panel)}
.wp-facts dt{font:700 32px/1.1 var(--display);letter-spacing:-.03em;color:var(--ink)}.wp-facts dd{margin:6px 0 0;font:11px/1.5 var(--mono);color:var(--muted);letter-spacing:.03em}
.wp-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
.wp-button{display:inline-flex;align-items:center;min-height:44px;padding:11px 16px;border-radius:4px;border:1px solid #699ad0;background:#1f5fd6;color:#fff;text-decoration:none;font:12px var(--mono);letter-spacing:.06em}
.wp-button:hover,.wp-button:focus-visible{background:#2d72ee}.wp-ghost{background:transparent;color:#dbeaff}.wp-ghost:hover,.wp-ghost:focus-visible{background:#143353}
.wp-button:focus-visible,.wp-header a:focus-visible,.wp-cards a:focus-visible,.wp-pager a:focus-visible{outline:3px solid #5baff5;outline-offset:3px}
.wp-shot{margin:0 0 30px}.wp-shot img{display:block;width:100%;border:1px solid var(--line);border-radius:8px;background:#0b1422}
.wp-shot figcaption{margin-top:8px;font:11px/1.5 var(--mono);color:var(--muted);letter-spacing:.03em}
.wp-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:10px 0 30px}.wp-columns p{margin:0}
.wp-quote{margin:0 0 34px;padding:20px 24px;border-left:3px solid var(--blue);background:var(--panel);border-radius:0 6px 6px 0}.wp-quote p{margin:0;font-size:20px;line-height:1.55;color:var(--ink)}.wp-quote footer{margin-top:10px;font:11px var(--mono);color:var(--muted);letter-spacing:.05em}
.wp-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}
.wp-status{font:12px/1.6 var(--mono);color:var(--muted);border-top:1px solid #1d2d44;padding-top:16px;margin:10px 0 0}
.wp-cta-block{margin:56px 0 0;padding:30px;border:1px solid var(--line);border-radius:10px;background:radial-gradient(ellipse at 80% 0,#16345a,#0d1828 70%)}.wp-cta-block p{max-width:620px}.wp-cta-block .wp-actions{margin:18px 0 0}
.wp-pager{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.wp-pager a{display:block;padding:16px 18px;border:1px solid var(--line);border-radius:6px;text-decoration:none;color:var(--ink);font:700 18px var(--display)}.wp-pager a:last-child{text-align:right}.wp-pager small{display:block;font:11px var(--mono);color:var(--muted);letter-spacing:.06em;margin-bottom:4px}.wp-pager a:hover{border-color:var(--sky)}
.wp-cards{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.wp-cards a{display:flex;flex-direction:column;height:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);text-decoration:none;color:var(--text);transition:border-color .2s,transform .2s}.wp-cards a:hover{border-color:var(--sky);transform:translateY(-2px)}
.wp-cards img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:5px;margin-bottom:12px}
.wp-card-kicker{font:10px var(--mono);letter-spacing:.08em;color:var(--sky)}.wp-cards strong{font:700 22px var(--display);letter-spacing:-.03em;color:var(--ink);margin:4px 0 6px}.wp-card-text{font-size:14px;line-height:1.55}
.wp-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:24px max(16px,calc((100% - 1120px)/2));border-top:1px solid #1d2d44;font:11px var(--mono);color:var(--muted);letter-spacing:.04em}.wp-footer a{color:var(--muted);overflow-wrap:anywhere}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:20;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 10px 28px #0008}
@media(max-width:720px){.wp-columns{grid-template-columns:1fr}.wp-pager{grid-template-columns:1fr}.wp-pager a:last-child{text-align:left}.wp-header nav a:not(.wp-cta){display:none}.wp-cta-block{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wp-cards a{transition:none}}
