:root{--bk:#0B0B0A;--bk2:#151513;--g1:#2E2E28;--g2:#4A4A42;--g3:#7A7A70;--g4:#A0A094;--g5:#C8C8BC;--g6:#E2E1DA;--g7:#EEEDEA;--g8:#F5F4F0;--cr:#FAFAF7;--wh:#FFF;--rd:#C9222E;--rd2:#A01A24;--rds:rgba(201,34,46,.07);--hd:'Playfair Display',Georgia,serif;--bd:'Libre Franklin',sans-serif;--mn:'IBM Plex Mono',monospace;--mw:1200px;--e:cubic-bezier(.25,.8,.25,1)}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}body{font-family:var(--bd);font-size:16px;color:var(--bk);background:var(--cr);-webkit-font-smoothing:antialiased;line-height:1.65}
a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
.w{max-width:var(--mw);margin:0 auto;padding:0 clamp(18px,4vw,44px)}.wn{max-width:720px;margin:0 auto;padding:0 clamp(18px,4vw,44px)}
.hdr{position:sticky;top:0;z-index:100;background:rgba(250,250,247,.92);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--g7)}
.hdr-in{max-width:var(--mw);margin:0 auto;padding:0 clamp(18px,4vw,44px);height:62px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:10px}.logo-t{font-family:var(--hd);font-size:1.4rem;font-weight:800;letter-spacing:-.04em}.logo-t b{color:var(--rd)}
.nav{display:flex;gap:2px}.nav a{padding:8px 14px;font-size:.8rem;font-weight:500;color:var(--g3);border-radius:6px;transition:.2s}.nav a:hover{color:var(--bk);background:var(--g8)}.nav a.on{color:var(--rd);background:var(--rds);font-weight:600}
.burger{display:none;width:40px;height:40px;align-items:center;justify-content:center;border-radius:8px}.burger span{display:block;width:20px;height:2px;background:var(--bk);border-radius:2px;position:relative}.burger span::before,.burger span::after{content:'';position:absolute;width:20px;height:2px;background:var(--bk);border-radius:2px;left:0}.burger span::before{top:-6px}.burger span::after{top:6px}
.mob{display:none;position:fixed;inset:62px 0 0;background:var(--cr);padding:12px 20px;z-index:99;overflow-y:auto}.mob.open{display:block}.mob a{display:block;padding:16px 4px;font-size:1rem;font-weight:500;color:var(--g2);border-bottom:1px solid var(--g7)}.mob a:hover{color:var(--rd)}
.ad{padding:20px 0;text-align:center}
.sp{padding:40px 0 60px}.sp .back{font-size:.8rem;color:var(--rd);margin-bottom:16px;display:inline-block}.sp .back:hover{text-decoration:underline}.sp h1{font-family:var(--hd);font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:700;margin-bottom:20px;line-height:1.15}.sp h2{font-family:var(--hd);font-size:1.15rem;font-weight:700;margin:24px 0 8px}.sp p{font-size:.92rem;line-height:1.75;color:var(--g2);margin-bottom:12px}.sp .box{padding:20px;background:var(--wh);border:1px solid var(--g7);border-radius:10px;margin:16px 0}.sp a{color:var(--rd);text-decoration:underline;text-underline-offset:3px}
.cat-head{padding:52px 0 28px;background:var(--bk);color:var(--wh)}.cat-head .w{position:relative}.cat-tag{font-family:var(--mn);font-size:.66rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--rd);margin-bottom:16px}.cat-h1{font-family:var(--hd);font-size:clamp(1.9rem,4vw,2.8rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:16px}.cat-desc{font-size:.98rem;color:var(--g4);max-width:620px;line-height:1.65}
.sec{padding-top:52px}.cg{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.c{background:var(--wh);border-radius:12px;overflow:hidden;border:1px solid var(--g7);transition:.3s var(--e);display:flex;flex-direction:column}.c:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(11,11,10,.06);border-color:var(--g6)}.c:hover .c-t{color:var(--rd)}.c-i{height:200px;overflow:hidden;position:relative}.c-i svg{width:100%;height:100%;display:block;transition:transform .4s var(--e)}.c:hover .c-i svg{transform:scale(1.03)}
.c-badge{position:absolute;top:12px;left:12px;font-family:var(--mn);font-size:.56rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--wh);background:rgba(11,11,10,.5);backdrop-filter:blur(6px);padding:4px 10px;border-radius:4px;z-index:1}.c-badge.red{background:var(--rd)}
.c-bd{padding:18px 20px 8px;flex:1}.c-meta{display:flex;gap:8px;align-items:center;font-size:.7rem;color:var(--g4);margin-bottom:8px}.c-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--g5)}
.c-t{font-family:var(--hd);font-size:1.15rem;font-weight:700;line-height:1.22;letter-spacing:-.015em;margin-bottom:8px;transition:color .2s}
.c-ex{font-size:.84rem;color:var(--g3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.c-ft{padding:12px 20px 16px;margin-top:auto;display:flex;align-items:center;justify-content:space-between}.c-rd{font-size:.74rem;font-weight:600;color:var(--rd)}.c-mn{font-size:.66rem;color:var(--g4);font-family:var(--mn)}
.ftr{background:var(--bk);padding:44px 0 22px;margin-top:72px}.ftr-g{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:28px;margin-bottom:32px}.ftr-brand{font-family:var(--hd);font-size:1.3rem;font-weight:800;color:var(--wh);margin-bottom:10px}.ftr-brand b{color:var(--rd)}.ftr-desc{font-size:.8rem;color:var(--g2);line-height:1.6;max-width:260px}.ftr-col h4{font-family:var(--mn);font-size:.58rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--g4);margin-bottom:12px}.ftr-col a{display:block;font-size:.8rem;color:var(--g2);padding:3px 0;text-align:left;transition:.2s}.ftr-col a:hover{color:var(--wh)}.ftr-bot{padding-top:18px;border-top:1px solid rgba(255,255,255,.06);font-size:.7rem;color:var(--g2);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.ftr-bot a{font-size:.7rem;color:var(--g2);margin-left:14px}.ftr-bot a:hover{color:var(--g4)}
html,body{overflow-x:hidden}
img,svg{max-width:100%;height:auto;display:block}
.c-i svg{filter:saturate(1.3) brightness(1.12) contrast(1.06)}
.c:hover .c-i svg{filter:saturate(1.45) brightness(1.18) contrast(1.1)}
.c{transition:.35s cubic-bezier(.25,.8,.25,1)}
.c:hover{transform:translateY(-5px);box-shadow:0 18px 48px rgba(11,11,10,.08);border-color:var(--g6)}
.c:hover .c-t{color:var(--rd)}
.c-badge{padding:5px 11px;font-size:.6rem}
.c-t{font-size:1.18rem;line-height:1.24}
.c-i{height:210px}
@media(max-width:1000px){.ftr-g{grid-template-columns:1fr 1fr;gap:26px}}
@media(max-width:640px){.nav{display:none!important}.burger{display:flex!important}.cg{grid-template-columns:1fr;gap:16px}.ftr-g{grid-template-columns:1fr;gap:22px}.ftr-bot{flex-direction:column;text-align:center;align-items:center}.ftr-bot a{margin:0 8px}.c-i{height:190px}.cat-h1{font-size:1.9rem!important}}
