*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Noto Sans SC",system-ui,sans-serif;background:#fff;color:#1a1a1a;line-height:1.78;font-size:16px}
a{color:#c2410c;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}

.site-header{background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:200}
.header-inner{max-width:1180px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;color:#111;font-weight:600;font-size:.98rem}
.brand:hover{text-decoration:none}
.brand img{border-radius:8px}
.brand em{font-style:normal;color:#c2410c;font-weight:700}
.site-nav ul{display:flex;flex-wrap:wrap;gap:6px 18px;list-style:none}
.site-nav a{color:#555;font-size:.9rem;padding:4px 0}
.site-nav a.active{color:#c2410c;font-weight:600;border-bottom:2px solid #c2410c}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px}
.nav-toggle span{display:block;width:22px;height:2px;background:#333;transition:.2s}
.nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.is-open span:nth-child(2){opacity:0}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.ads-top-bar{background:#fff7ed;border-bottom:1px solid #fed7aa;padding:10px 0}
.applist-title{font-size:.78rem;color:#888;text-align:center;margin-bottom:6px}
#ads{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
#ads .caption{font-size:.7rem;color:#666;margin-top:4px;text-align:center;max-width:70px;line-height:1.3}

.page-wrap{max-width:1180px;margin:0 auto;padding:0 20px}

.hero-split{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;padding:36px 0 28px;align-items:center;border-bottom:1px solid #f3f4f6}
.hero-split .tag{display:inline-block;background:#c2410c;color:#fff;font-size:.78rem;font-weight:600;padding:5px 14px;border-radius:999px;margin-bottom:12px}
.hero-split h1{font-size:1.78rem;line-height:1.34;color:#111;margin-bottom:12px}
.hero-split .lede{color:#374151;font-size:1.02rem;margin-bottom:10px}
.hero-visual{background:linear-gradient(145deg,#fff7ed,#ffedd5);border:1px solid #fed7aa;border-radius:18px;padding:20px}
.hero-visual img{border-radius:12px;width:100%}
.hero-visual figcaption{font-size:.82rem;color:#78716c;margin-top:10px;text-align:center}

.chapter-pills{position:sticky;top:58px;z-index:150;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid #e5e7eb;padding:10px 0;margin-bottom:8px}
.chapter-pills ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;counter-reset:pill}
.chapter-pills a{display:inline-block;font-size:.82rem;color:#57534e;background:#fafaf9;border:1px solid #e7e5e4;padding:6px 14px;border-radius:999px;transition:.2s}
.chapter-pills a:hover,.chapter-pills a.is-active{background:#fff7ed;border-color:#fdba74;color:#c2410c;text-decoration:none;font-weight:600}

.duo-section{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:32px 0;border-bottom:1px solid #f3f4f6;scroll-margin-top:120px}
.duo-section.reverse .duo-text{order:2}
.duo-section.reverse .duo-media{order:1}
.duo-text h2{font-size:1.28rem;color:#111;margin-bottom:12px;padding-left:14px;border-left:4px solid #c2410c}
.duo-text p{color:#374151;margin-bottom:12px;font-size:.98rem}
.duo-media figure{background:#fafaf9;border-radius:14px;overflow:hidden;border:1px solid #e5e7eb}
.duo-media figcaption{font-size:.8rem;color:#78716c;padding:10px 12px;background:#fff}

.callout-band{background:linear-gradient(90deg,#fff7ed,#fff);border-left:4px solid #ea580c;padding:16px 20px;margin:16px 0;border-radius:0 10px 10px 0;font-size:.94rem;color:#44403c}

.full-section{padding:32px 0;border-bottom:1px solid #f3f4f6;scroll-margin-top:120px}
.full-section h2{font-size:1.28rem;color:#111;margin-bottom:14px}
.full-section p{color:#374151;margin-bottom:12px}

.check-panel{background:#fafaf9;border:1px solid #e5e7eb;border-radius:16px;padding:24px 28px;margin:28px 0 36px}
.check-panel h2{font-size:1.22rem;margin-bottom:14px;color:#111}
.check-panel ul{list-style:none;display:grid;gap:10px}
.check-panel li{padding-left:28px;position:relative;color:#374151;font-size:.96rem}
.check-panel li::before{content:"";position:absolute;left:0;top:6px;width:16px;height:16px;border:2px solid #c2410c;border-radius:4px;background:#fff7ed}

.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:12px}
.faq-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px 18px}
.faq-item h3{font-size:.95rem;color:#c2410c;margin-bottom:8px}
.faq-item p{font-size:.88rem;color:#57534e;line-height:1.65}

.read-more{display:flex;flex-wrap:wrap;gap:12px 20px;padding:24px 0 40px;font-size:.88rem}
.site-footer{background:#fafaf9;border-top:1px solid #e5e7eb;padding:28px 20px;text-align:center}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-bottom:10px;font-size:.88rem}
.site-footer p{font-size:.82rem;color:#888}

.prose-page{max-width:760px;margin:0 auto;padding:32px 20px 48px}
.prose-page h1{font-size:1.6rem;margin-bottom:16px}
.prose-page h2{font-size:1.15rem;margin:20px 0 10px;color:#111}
.prose-page p{margin-bottom:12px;color:#374151}

.error-page{text-align:center;padding:80px 20px}
.error-page h1{font-size:3rem;color:#c2410c;margin-bottom:12px}

@media(max-width:900px){
  .hero-split,.duo-section{grid-template-columns:1fr}
  .duo-section.reverse .duo-text,.duo-section.reverse .duo-media{order:unset}
  .faq-grid{grid-template-columns:1fr}
  .chapter-pills{top:52px}
}
@media(max-width:768px){
  .nav-toggle{display:flex}
  .site-nav{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #e5e7eb;padding:12px 20px;display:none;box-shadow:0 8px 24px rgba(0,0,0,.06)}
  .site-nav.is-open{display:block}
  .site-nav ul{flex-direction:column;gap:10px}
  .site-header{position:relative}
  .hero-split h1{font-size:1.45rem}
}
