:root{--bg:#16181f;--fg:#ecead9;--muted:#8a8b80;--card:#1e2029;--card-2:#262834;--border:rgba(150,150,180,.18);--primary:#e6b66a;--primary-fg:#1a1c24;--accent:#5a4a2a;--grid:rgba(255,255,255,.04);--radius:8px;--font-display:"Cormorant Garamond","Times New Roman",Georgia,serif;--font-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;--font-sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);min-height:100%}body{background-image:radial-gradient(1200px 600px at 80% -10%,rgb(230 182 106 / .10),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgb(80 100 180 / .12),transparent 60%),linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:auto,auto,48px 48px,48px 48px;background-attachment:fixed}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;margin:0}.mono{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:var(--muted)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.site-header{border-bottom:1px solid var(--border);padding:18px 0;backdrop-filter:blur(6px);position:sticky;top:0;background:rgb(22 24 31 / .85);z-index:50}.site-header .row{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffd99a,#b6781e 60%,#3a1f06);box-shadow:0 0 24px rgb(230 182 106 / .35)}.brand-name{font-family:var(--font-display);font-size:22px}.brand-sub{font-family:var(--font-mono);font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}.nav{display:flex;flex-wrap:wrap;gap:6px}.nav a{padding:8px 14px;border:1px solid var(--border);border-radius:999px;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--fg)}.nav a:hover,.nav a.current{border-color:var(--primary);color:var(--primary)}.site-footer{border-top:1px solid var(--border);margin-top:80px;padding:32px 0;color:var(--muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.site-footer .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}.hero{position:relative;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--card);margin-top:32px}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;min-height:420px}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}}.hero-body{padding:48px}.hero h1{font-size:54px;line-height:.98;margin-top:14px}.hero h1 .accent{color:var(--primary)}.hero p{color:var(--muted);max-width:560px;line-height:1.6;margin:20px 0 28px}.hero-img{position:relative;background:#0c0d12}.hero-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin:48px 0 18px}.section-head h2{font-size:30px}.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:900px){.cat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.cat-grid{grid-template-columns:1fr}}.cat-card{background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color .2s}.cat-card:hover{border-color:rgb(230 182 106 / .6)}.cat-card .thumb{aspect-ratio:4/3;background:#0c0d12;overflow:hidden}.cat-card .thumb img{width:100%;height:100%;object-fit:cover}.cat-card .body{padding:18px 20px}.cat-card .body .top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.cat-card h3{font-size:24px}.cat-card .body p{color:var(--muted);font-size:13px;margin:6px 0 0;line-height:1.55}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:900px){.photo-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){.photo-grid{grid-template-columns:repeat(2,1fr)}}.photo-tile{display:block}.photo-tile .ph{aspect-ratio:1/1;background:#0c0d12;border-radius:6px;overflow:hidden;border:1px solid var(--border)}.photo-tile .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo-tile:hover .ph img{transform:scale(1.04)}.photo-tile .cap{margin-top:8px}.archive-head{margin:28px 0 12px}.archive-head h1{font-size:46px}.archive-head p{color:var(--muted);max-width:680px;line-height:1.6}.year-block{margin-top:40px;padding-top:24px;border-top:1px solid var(--border)}.year-block .year-label{font-family:var(--font-display);font-size:42px;color:var(--primary)}.month-block{margin-top:22px}.month-block .month-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;display:flex;align-items:center;gap:10px}.month-block .month-label::after{content:"";flex:1;height:1px;background:var(--border)}.calendar-wrap{margin-top:0}.calendar-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:20px}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.cal-nav{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-size:20px;line-height:1;color:var(--fg);transition:background-color .15s}.cal-nav:hover{background:var(--card-2)}.cal-title{text-align:center}.cal-month{font-family:var(--font-display);font-size:24px;line-height:1.1}.cal-year{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-top:2px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-dows{margin-bottom:6px}.cal-dows .dow{text-align:center;font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);padding:4px 0}.cal-days .cell{aspect-ratio:1/1;border-radius:6px;display:flex;align-items:center;justify-content:center;position:relative;font-size:13px;transition:background-color .15s,color .15s}.cal-days .cell .num{line-height:1}.cal-days .cell.empty{visibility:hidden}.cal-days .cell.off{color:rgb(236 234 217 / .32)}.cal-days .cell.has{background:var(--card-2);color:var(--fg);text-decoration:none}.cal-days .cell.has:hover{background:var(--accent);color:#fff}.cal-days .cell.has .dot{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:var(--primary)}.cal-days .cell.today{box-shadow:inset 0 0 0 1px var(--border)}.cal-days .cell.has.today{box-shadow:inset 0 0 0 1px var(--primary)}.cal-foot{margin-top:18px;padding-top:14px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.cal-foot .legend{display:flex;align-items:center;gap:8px}.cal-foot .legend .dot{width:6px;height:6px;border-radius:50%;background:var(--primary);display:inline-block}.single-header{margin-top:24px;margin-bottom:20px}.single-header h1{font-size:42px;line-height:1.15;margin:0}@media(max-width:700px){.single-header h1{font-size:30px}}.single-hero-img{margin:0 0 24px;background:#0c0d12;border:1px solid var(--border);border-radius:10px;overflow:hidden}.single-hero-img a{display:block}.single-main-img,.single-hero-img img{width:100%;height:auto;display:block;max-height:85vh;object-fit:contain;background:#000}.single-meta{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:20px 24px}.single-meta-wide{margin-bottom:32px}.single-meta .kv{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid var(--border);font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.single-meta .kv:first-of-type{border-top:0}.single-meta .kv b{color:var(--muted);font-weight:400}.single-body{margin-top:40px;line-height:1.75;color:#d6d4c4;font-size:17px;max-width:820px}.single-body p{margin:0 0 16px}.single-body-title{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 16px;font-weight:600}.pager{display:flex;justify-content:center;gap:8px;margin-top:32px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.pager a,.pager span{padding:10px 14px;border:1px solid var(--border);border-radius:999px;color:var(--muted)}.pager a:hover{border-color:var(--primary);color:var(--primary)}.pager .current{color:var(--primary);border-color:var(--primary)}.crumbs{margin-top:24px;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.crumbs a{color:inherit;text-decoration:none;transition:color .15s ease,border-color .15s ease;border-bottom:1px solid #fff0}.crumbs a:hover,.crumbs a:focus-visible{color:var(--primary);border-bottom-color:currentColor}.crumbs a:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion:reduce){.crumbs a{transition:none}}.crumbs-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center}.crumbs-list li{display:inline-flex;align-items:center}.crumbs .sep{margin:0 8px;opacity:.5}.crumbs a{cursor:pointer}.cat-header{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin:18px 0 28px;flex-wrap:wrap}.cat-title{font-size:64px;line-height:1;margin:0}.cat-desc{color:var(--muted);max-width:680px;line-height:1.55;margin:12px 0 0;font-size:14px}.cat-stats{display:flex;flex-direction:column;gap:4px;text-align:right;color:var(--muted);font-size:11px;letter-spacing:.18em}.cat-stats b{color:var(--fg);font-weight:600;font-family:var(--font-display);font-size:18px;letter-spacing:0;margin-right:6px}.cat-layout{display:grid;grid-template-columns:380px 1fr;gap:32px;align-items:start}@media(max-width:960px){.cat-layout{grid-template-columns:1fr}}.cat-left{position:sticky;top:88px}@media(max-width:960px){.cat-left{position:static}}.year-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;justify-content:center}.year-chips .chip{padding:6px 14px;border:1px solid var(--border);border-radius:999px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:var(--muted);transition:border-color .15s,color .15s}.year-chips .chip:hover{border-color:var(--primary);color:var(--primary)}.year-chips .chip.active{border-color:var(--primary);color:var(--primary)}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media(max-width:1100px){.featured-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.featured-grid{grid-template-columns:1fr}}.featured-card{display:block;text-decoration:none;color:inherit}.featured-card .ph{position:relative;aspect-ratio:1/1;background:#0c0d12;border:1px solid var(--border);border-radius:8px;overflow:hidden}.featured-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.featured-card:hover .ph img{transform:scale(1.04)}.featured-card .ph .badge{position:absolute;top:8px;right:10px;font-size:11px;letter-spacing:.1em;color:#fff;text-shadow:0 1px 3px rgb(0 0 0 / .8);z-index:2}.featured-card .cap-overlay{position:absolute;left:12px;right:12px;bottom:38px;color:#fff;font-size:10px;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 3px rgb(0 0 0 / .85);line-height:1.4;pointer-events:none}.featured-card{position:relative}.featured-card .cap{margin-top:8px;color:var(--muted);font-size:10px;letter-spacing:.16em}.section-head .back-link{text-decoration:none;color:var(--muted);font-size:11px;letter-spacing:.18em}.section-head .back-link:hover{color:var(--primary)}.single-gallery{margin-top:32px}.single-gallery h3{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-weight:600}.single-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(460px,1fr));gap:16px}@media(max-width:700px){.single-gallery-grid{grid-template-columns:1fr;gap:12px}}.single-gallery-item{display:block;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#000;transition:border-color .15s}.single-gallery-item:hover{border-color:var(--primary)}.single-gallery-img{display:block;width:100%;height:auto;object-fit:contain;background:#000}.is-video-post .single-body{max-width:none;font-size:16px}.video-container{position:relative;width:100%;max-width:1200px;aspect-ratio:16/9;margin:24px auto 36px;overflow:hidden;border-radius:12px;background:#000;box-shadow:0 10px 30px rgb(0 0 0 / .45)}.video-container iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}.video-meta-line{display:flex;flex-wrap:wrap;gap:18px;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:10px 0 4px}.video-meta-line b{color:var(--fg);font-weight:600;margin-right:6px}.is-video-post .single-header h1{max-width:980px}.tech-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:22px 24px;margin-top:32px}.tech-card h3{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-weight:600}.tech-card .tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;font-size:13px;line-height:1.6}@media(max-width:700px){.tech-card .tech-grid{grid-template-columns:1fr}}.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:40px}@media(max-width:700px){.post-nav{grid-template-columns:1fr}}.post-nav a{display:block;padding:18px 20px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:inherit;transition:border-color .15s,transform .15s}.post-nav a:hover,.post-nav a:focus-visible{border-color:var(--primary);transform:translateY(-1px);outline:none}.post-nav .dir{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.post-nav .ttl{font-family:var(--font-display);font-size:20px;margin-top:6px;line-height:1.2}.post-nav .next{text-align:right}@media (prefers-reduced-motion:reduce){.post-nav a{transition:none}.post-nav a:hover{transform:none}}@media(max-width:700px){.container{padding:0 16px}.is-video-post .single-header h1{font-size:26px}.video-container{margin:16px auto 24px;border-radius:10px}}