/* ===== Blog: index (hero + image cards) + article ===== */.blog-wrap{max-width:1140px;margin:0 auto;padding:52px 28px 96px}.blog-head{max-width:700px}.blog-head h1{font-family:var(--font-display);font-weight:800;letter-spacing:-0.025em;font-size:clamp(2rem, 4.6vw, 3rem);line-height:1.04;color:var(--ink)}.blog-head p.lede{color:var(--muted);margin-top:14px;font-size:1.08rem;line-height:1.55;max-width:58ch}/* ---- featured hero (split card) ---- */.bl-hero{display:grid;grid-template-columns:1fr 1.05fr;margin-top:34px;border-radius:26px;overflow:hidden;text-decoration:none;isolation:isolate;box-shadow:0 30px 60px -40px rgba(28,27,25,0.5);border:1px solid var(--line);transition:box-shadow .35s cubic-bezier(.2,.7,.2,1),transform .35s cubic-bezier(.2,.7,.2,1)}.bl-hero:hover{box-shadow:0 42px 80px -42px rgba(109,40,217,0.45);transform:translateY(-3px)}.bl-hero-text{background:linear-gradient(155deg, #232019, #14130f);color:#F4F1EA;padding:52px 48px;display:flex;flex-direction:column;justify-content:center}.bl-hero-cat{font-family:var(--font-mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent)}.bl-hero-text h2{font-family:var(--font-display);font-weight:800;letter-spacing:-0.02em;font-size:clamp(1.7rem, 2.7vw, 2.5rem);line-height:1.06;margin:14px 0 0;color:#fff}.bl-hero-text p{margin:18px 0 0;color:rgba(244,241,234,0.74);font-size:1.02rem;line-height:1.6;max-width:42ch}.bl-hero-cta{display:inline-flex;align-items:center;gap:14px;margin-top:34px;font-weight:700;font-size:15px;color:#fff}.bl-hero-cta .circ{width:46px;height:46px;border-radius:50%;background:var(--accent);display:inline-flex;align-items:center;justify-content:center;transition:transform .3s cubic-bezier(.2,.7,.2,1),background .3s}.bl-hero-cta .circ svg{width:20px;height:20px;transition:transform .3s cubic-bezier(.2,.7,.2,1)}.bl-hero:hover .bl-hero-cta .circ{transform:scale(1.12);background:var(--accent-deep, var(--accent))}.bl-hero:hover .bl-hero-cta .circ svg{transform:translateX(3px)}.bl-hero-art{position:relative;overflow:hidden;min-height:340px;background:var(--surface)}.bl-hero-art .bl-svg{position:absolute;inset:0;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.bl-hero:hover .bl-hero-art .bl-svg{transform:scale(1.045)}/* ---- card grid ---- */.bl-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:26px;margin-top:30px}@media (max-width: 900px){.bl-grid{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 600px){.bl-grid{grid-template-columns:1fr}.bl-hero{grid-template-columns:1fr}.bl-hero-text{padding:36px 30px}.bl-hero-art{min-height:240px}}.bl-card{display:flex;flex-direction:column;text-decoration:none;border-radius:18px;overflow:hidden;background:var(--card);border:1px solid var(--line);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,border-color .3s;animation:blRise .55s both cubic-bezier(.2,.7,.2,1);animation-delay:var(--d, 0s)}.bl-card:hover{transform:translateY(-7px);box-shadow:0 28px 50px -30px rgba(109,40,217,0.42);border-color:var(--accent)}.bl-card-img{position:relative;aspect-ratio:16/10;overflow:hidden}.bl-card-img .bl-svg{position:absolute;inset:0;width:100%;height:100%;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.bl-card:hover .bl-card-img .bl-svg{transform:scale(1.08)}.bl-card-img::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg, transparent 30%, rgba(255,255,255,0.18) 50%, transparent 70%);transform:translateX(-120%);transition:transform .7s cubic-bezier(.2,.7,.2,1)}.bl-card:hover .bl-card-img::after{transform:translateX(120%)}.bl-card-in{padding:18px 20px 20px;display:flex;flex-direction:column;gap:12px;flex:1}.bl-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.bl-pill{font-family:var(--font-mono);font-size:11px;letter-spacing:0.02em;padding:5px 11px;border-radius:99px;background:var(--accent-tint);color:var(--accent);font-weight:600}.bl-card-date{font-family:var(--font-mono);font-size:11.5px;color:var(--muted)}.bl-card h3{font-family:var(--font-display);font-weight:700;letter-spacing:-0.015em;font-size:1.2rem;line-height:1.22;color:var(--ink);transition:color .2s}.bl-card:hover h3{color:var(--accent)}.bl-author{display:flex;align-items:center;gap:9px;margin-top:auto;padding-top:4px}.bl-av{width:28px;height:28px;border-radius:8px;overflow:hidden;flex-shrink:0}.bl-av svg{width:100%;height:100%;display:block}.bl-aname{font-size:13px;font-weight:600;color:var(--text-secondary)}@keyframes blRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.bl-card,.bl-card .bl-svg,.bl-card-img::after,.bl-hero,.bl-hero-cta .circ,.bl-hero-cta .circ svg,.bl-hero-art .bl-svg{animation:none !important;transition:none !important}}/* ===== Article ===== */.art-wrap{max-width:720px;margin:0 auto;padding:44px 28px 96px}.art-back{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:12.5px;color:var(--muted);text-decoration:none;margin-bottom:26px}.art-back:hover{color:var(--accent)}.art-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-family:var(--font-mono);font-size:12px;color:var(--muted)}.art-meta .cat{color:var(--accent);font-weight:600}.art-wrap h1{font-family:var(--font-display);font-weight:800;letter-spacing:-0.025em;font-size:clamp(1.9rem, 4.2vw, 2.7rem);line-height:1.08;color:var(--ink);margin:14px 0 0}.art-lede{color:var(--muted);font-size:1.12rem;line-height:1.55;margin:18px 0 0}.art-banner{margin:26px 0 0;border-radius:18px;overflow:hidden;aspect-ratio:16/7;border:1px solid var(--line)}.art-banner .bl-svg{width:100%;height:100%;display:block}.art-rule{height:1px;background:var(--line);margin:30px 0 4px}.art-body{color:var(--text-secondary);font-size:1.04rem;line-height:1.72}.art-body h2{font-family:var(--font-display);font-weight:700;font-size:1.4rem;letter-spacing:-0.015em;color:var(--ink);margin:34px 0 10px}.art-body h3{font-family:var(--font-display);font-weight:700;font-size:1.1rem;color:var(--ink);margin:26px 0 8px}.art-body p{margin:14px 0}.art-body ul,.art-body ol{margin:14px 0;padding-left:22px}.art-body li{margin:7px 0}.art-body a{color:var(--accent);font-weight:600}.art-body strong{color:var(--ink);font-weight:700}.art-body code{font-family:var(--font-mono);font-size:0.84em;padding:2px 6px;border-radius:5px;background:var(--surface-2);color:var(--ink)}.art-body blockquote{margin:20px 0;padding:4px 18px;border-left:3px solid var(--accent);color:var(--ink);font-style:italic}.art-cta{margin:36px 0 0;padding:24px 26px;border-radius:16px;background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.art-cta .t b{display:block;font-family:var(--font-display);font-weight:700;font-size:1.1rem;color:var(--ink)}.art-cta .t span{display:block;color:var(--muted);font-size:0.94rem;margin-top:3px}.art-cta a{display:inline-flex;align-items:center;height:46px;padding:0 22px;border-radius:12px;background:var(--accent);color:#fff;font-weight:700;font-size:14.5px;text-decoration:none;white-space:nowrap}.art-cta a:hover{background:var(--accent-deep, var(--accent))}.art-aff{margin-top:28px;color:var(--muted);font-style:italic;font-size:0.9rem;line-height:1.5}.art-more{margin-top:48px}.art-more .lbl{font-family:var(--font-mono);font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.art-more .links{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 640px){.art-more .links{grid-template-columns:1fr}.art-cta{flex-direction:column;align-items:flex-start}}.art-more a{display:block;padding:16px 18px;border:1px solid var(--line);border-radius:12px;text-decoration:none;transition:border-color .15s}.art-more a:hover{border-color:var(--accent)}.art-more a .mc{font-family:var(--font-mono);font-size:11px;color:var(--accent)}.art-more a .mt{display:block;font-family:var(--font-display);font-weight:700;color:var(--ink);font-size:1rem;margin-top:4px;line-height:1.25}/* --- Article FAQ (AEO) --- */.art-faq{border:1px solid var(--line, rgba(28,27,25,.12));border-radius:12px;margin:0 0 12px;background:var(--surface, transparent);overflow:hidden}.art-faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;font-weight:600;font-size:.98rem}.art-faq summary::-webkit-details-marker{display:none}.art-faq summary::after{content:"+";font-family:"IBM Plex Mono",monospace;font-size:1.05rem;opacity:.55;flex:none;transition:transform .18s ease}.art-faq[open] summary::after{transform:rotate(45deg)}.art-faq p{margin:0;padding:0 18px 16px;font-size:.95rem;line-height:1.65;opacity:.88}/* --- Blog index: editorial photo-card layout --- */.bx-feat{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:8px 0 44px}.bx-sec{font-family:var(--font-display);font-weight:800;font-size:1.6rem;color:var(--ink);margin:0 0 22px}.bx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 32px}.bx-card{display:block;text-decoration:none;color:inherit}.bx-img{border-radius:16px;overflow:hidden;aspect-ratio:16/10;background:var(--surface-2)}.bx-img .bl-svg{width:100%;height:100%;display:block;transition:transform .35s ease}.bx-card:hover .bx-img .bl-svg{transform:scale(1.03)}.bx-panel{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 34px -18px rgba(28,27,25,.25);padding:20px 24px 22px;margin:-72px 18px 0 34px}.bx-grid .bx-panel{margin:-56px 12px 0 22px;padding:16px 18px 18px}.bx-meta{display:flex;align-items:center;gap:10px;font-size:.82rem;color:var(--muted);margin-bottom:10px}.bx-meta .bx-cat{color:var(--ink);font-weight:600}.bx-meta .bx-sep{width:1px;height:14px;background:var(--line-strong)}.bx-panel h2,.bx-panel h3{font-family:var(--font-display);font-weight:700;color:var(--ink);margin:0 0 8px;line-height:1.3;transition:color .15s}.bx-panel h2{font-size:1.32rem}.bx-panel h3{font-size:1.04rem}.bx-card:hover .bx-panel h2,.bx-card:hover .bx-panel h3{color:var(--accent)}.bx-ex{margin:0;color:var(--muted);font-size:.93rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width:1000px){.bx-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:860px){.bx-feat{grid-template-columns:1fr}}@media (max-width:640px){.bx-grid{grid-template-columns:1fr}.bx-panel{margin:-56px 12px 0 18px}}