/*
Theme Name: Hack Your World
Template: twentytwentyfive
Version: 1.0.0
*/

:root { --hyw-bg:#0b0d10; --hyw-panel:#12161b; --hyw-text:#e7edf2; --hyw-muted:#9aa7b2; --hyw-accent:#79d4ff; --hyw-border:#27313a; }
body { background:var(--hyw-bg); color:var(--hyw-text); }
a { color:var(--hyw-accent); }
.hyw-header { max-width:1100px; margin:0 auto; padding:22px 24px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--hyw-border); }
.hyw-brand { color:var(--hyw-text); font-weight:800; text-decoration:none; letter-spacing:-.03em; display:flex; align-items:center; gap:10px; }
.hyw-brand::before { content:""; display:inline-block; width:24px; height:24px; background:url("hyw-mark.svg") center/contain no-repeat; }
.wp-block-site-title a::before { content:""; display:inline-block; width:24px; height:24px; margin-right:10px; vertical-align:-5px; background:url("/wp-content/themes/hack-your-world/hyw-mark.svg") center/contain no-repeat; }
.hyw-nav { display:flex; gap:20px; font-size:.95rem; }
.hyw-nav a { text-decoration:none; color:var(--hyw-muted); }
.hyw-nav a:hover { color:var(--hyw-accent); }
.hyw-shell { max-width:1100px; margin:0 auto; padding:72px 24px 96px; }
.hyw-hero { min-height:66vh; display:grid; align-content:center; gap:24px; }
.hyw-kicker { color:var(--hyw-accent); font:600 13px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing:.12em; text-transform:uppercase; }
.hyw-hero h1 { max-width:780px; margin:0; font-size:clamp(3.5rem,9vw,7.5rem); line-height:.92; letter-spacing:-.07em; }
.hyw-lede { max-width:650px; color:var(--hyw-muted); font-size:clamp(1.15rem,2vw,1.45rem); line-height:1.55; }
.hyw-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:12px; }
.hyw-button { display:inline-block; border:1px solid var(--hyw-accent); border-radius:4px; padding:12px 18px; color:var(--hyw-bg); background:var(--hyw-accent); font-weight:700; text-decoration:none; }
.hyw-button.alt { color:var(--hyw-accent); background:transparent; }
.hyw-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:42px; }
.hyw-section { margin-top:72px; }
.hyw-section h2 { margin:10px 0 12px; font-size:clamp(2rem,4vw,3.2rem); letter-spacing:-.04em; }
.hyw-copy { max-width:760px; color:var(--hyw-muted); font-size:1.15rem; line-height:1.7; }
.hyw-card { background:var(--hyw-panel); border:1px solid var(--hyw-border); padding:24px; border-radius:6px; }
.hyw-card h2 { margin-top:0; font-size:1.1rem; }
.hyw-card p { color:var(--hyw-muted); line-height:1.6; }
.hyw-projects { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:24px; }
.hyw-project { display:flex; flex-direction:column; gap:8px; background:var(--hyw-panel); border:1px solid var(--hyw-border); padding:20px; border-radius:6px; text-decoration:none; transition:border-color .2s, transform .2s; }
.hyw-project:hover { border-color:var(--hyw-accent); transform:translateY(-2px); }
.hyw-project strong { color:var(--hyw-text); font-size:1.05rem; }
.hyw-project span { color:var(--hyw-muted); line-height:1.5; }
.hyw-foot { margin-top:72px; padding-top:20px; border-top:1px solid var(--hyw-border); color:var(--hyw-muted); font:13px ui-monospace,SFMono-Regular,Consolas,monospace; }
.hyw-footer { max-width:1100px; margin:40px auto 0; padding:22px 24px 40px; border-top:1px solid var(--hyw-border); color:var(--hyw-muted); font-size:.85rem; display:flex; justify-content:space-between; gap:20px; }
footer .wp-block-navigation, footer .wp-block-site-generator { display:none !important; }
.hyw-archive-head { padding:72px 0 30px; }
.hyw-archive-head h1 { max-width:760px; margin:10px 0 12px; font-size:clamp(2.6rem,6vw,5rem); line-height:1; letter-spacing:-.06em; }
.hyw-archive-list { display:grid; gap:18px; }
.hyw-archive-card { padding:28px; background:var(--hyw-panel); border:1px solid var(--hyw-border); border-radius:6px; }
.hyw-archive-card h2 { margin:10px 0; font-size:clamp(1.5rem,3vw,2.2rem); }
.hyw-archive-card h2 a { text-decoration:none; }
.hyw-excerpt { color:var(--hyw-muted); line-height:1.65; }
.hyw-readmore { display:inline-block; margin-top:16px; font-weight:700; text-decoration:none; }
@media (max-width:760px) { .hyw-grid,.hyw-projects { grid-template-columns:1fr; } .hyw-shell { padding-top:40px; } .hyw-header,.hyw-footer { flex-direction:column; align-items:flex-start; gap:14px; } .hyw-nav { flex-wrap:wrap; gap:12px; } }
