:root{--brand:#84370b;--brand-soft:#fedaa8;--ink:#1c0a04;--bg:#fff6ed;--brand-text:#84370b;--muted:#637289;--muted-strong:#475569;--line:#e2e8f0;--card:#fff;--max:1280px;--radius:10px;--btn-radius:6px;--shadow:0 4px 12px rgba(15,23,42,.05);--section-y:2rem;--grid-gap:1.25rem;--prose-max:80ch;--font:Georgia,"Songti SC","Noto Serif SC",serif;--line-height:1.85;--h1-weight:800;--h1-tracking:-0.02em;--h2-weight:800;--logo-radius:calc(var(--radius) - 4px);--feature-cols:2;--shot-cols:3;--price-cols:4;--grid-line:#84370b14;--brand-shadow:#84370b33;--scroll-thumb:#bb8d71;--counter:#b58365}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:5rem;-webkit-text-size-adjust:100%;scrollbar-color:var(--scroll-thumb) var(--bg)}
body{font-family:var(--font);color:var(--ink);background-color:var(--bg);line-height:var(--line-height)}
img{max-width:100%;display:block;height:auto}
a{color:var(--brand-text);text-decoration:none}
a:hover{opacity:.9}
::selection{background:var(--brand-soft);color:var(--ink)}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
.skip-link{position:absolute;left:-999px;top:.5rem;z-index:200;padding:.5rem .9rem;background:var(--brand);color:#fff;border-radius:var(--btn-radius)}
.skip-link:focus{left:.75rem}
.nb{white-space:nowrap}
h1{font-weight:var(--h1-weight);letter-spacing:var(--h1-tracking);text-wrap:balance}
.header-inner{max-width:var(--max);margin:0 auto;padding:.8rem 1.2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo-link{display:flex;align-items:center;gap:.7rem;color:var(--ink);font-weight:800;white-space:nowrap}
.logo-img{width:42px;height:42px;border-radius:var(--logo-radius);object-fit:cover}
.main-nav{display:flex;flex-wrap:wrap;gap:.2rem}
.main-nav a{color:var(--muted);padding:.4rem .7rem;border-radius:8px;font-size:.9rem}
.header-actions{display:flex;align-items:center;gap:.5rem}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.2rem;border-radius:var(--btn-radius);font-weight:700;border:1px solid transparent;white-space:nowrap}
.btn-primary{background:var(--brand);color:#fff}
.btn-outline{background:#fff;border-color:var(--line);color:var(--ink)}
.menu-toggle{display:none;width:42px;height:42px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.menu-toggle span{width:18px;height:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease}
.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav{display:none;flex-direction:column;gap:.3rem;padding:.5rem 1.2rem 1rem;background:#fff;border-bottom:1px solid var(--line)}
.mobile-nav.open{display:flex}
.mobile-nav a{padding:.7rem .85rem;background:var(--brand-soft);border-radius:10px;color:var(--ink)}
.ads-slot{max-width:var(--max);margin:1rem auto 0;padding:0 1.2rem}
#download .ads-slot{max-width:100%;margin:1.1rem 0 1.4rem;padding:0}
.ads-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:.75rem 1rem 1rem}
#download .ads-wrap{background:var(--card)}
.applist-title{text-align:center;color:var(--muted);font-size:.95rem;margin-bottom:.55rem}
.js-ads-list{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.js-ads-list li{width:72px;flex:0 0 72px;text-align:center}
.js-ads-list a{display:block;width:65px;height:65px;margin:0 auto;border-radius:16px;overflow:hidden}
.js-ads-list img{width:65px;height:65px;object-fit:cover;border-radius:16px}
.icon-empty{display:block;width:65px;height:65px;border-radius:16px;background:var(--brand-soft);border:1px dashed var(--brand)}
.caption{display:block;margin-top:6px;font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.section{max-width:var(--max);margin:0 auto;padding:var(--section-y) 1.2rem}
.section h2{font-size:1.45rem;margin-bottom:.7rem;font-weight:var(--h2-weight);line-height:1.35}
.sec-lead{color:var(--muted);margin-bottom:1.2rem;max-width:68ch;line-height:1.7}
.prose p{margin-bottom:1rem;color:#334155;max-width:var(--prose-max);line-height:1.8}
strong.kw{color:var(--brand-text);font-weight:800;background:linear-gradient(180deg,transparent 55%,var(--brand-soft) 55%);padding:0 .12em;border-radius:2px}
.outlinks{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.1rem 0}
.outlinks a{padding:.5rem 1rem;border-radius:var(--btn-radius);background:var(--brand-soft);border:1px solid var(--line);color:var(--brand-text);font-weight:700}
.feature-grid,.shot-grid,.price-grid{display:grid;gap:var(--grid-gap);margin-top:1.2rem}
.feature-grid{grid-template-columns:repeat(var(--feature-cols),1fr)}
.shot-grid{grid-template-columns:repeat(var(--shot-cols),minmax(0,280px));justify-content:center}
.price-grid{grid-template-columns:repeat(var(--price-cols),minmax(0,220px));justify-content:center}
.card,figure.shot,article.price{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.card{padding:1.1rem}
.card h3{margin-bottom:.4rem;font-size:1.02rem}
.card p{color:var(--muted);font-size:.95rem}
figure.shot,article.price{display:flex;flex-direction:column;align-items:stretch;padding-top:.9rem;background:linear-gradient(180deg,var(--brand-soft) 0%,var(--card) 42%)}
figure.shot img,article.price img{width:100%;max-width:260px;height:auto;margin:0 auto;object-fit:contain;object-position:top center;border-radius:calc(var(--radius) - 2px);border:1px solid var(--line);box-shadow:0 8px 24px rgba(15,23,42,.12);background:#0f172a}
figure.shot figcaption,article.price p{padding:.85rem 1rem 1rem;font-size:.9rem;line-height:1.55;color:var(--muted);text-align:center;word-break:break-word}
.tier-list{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-weight:700}
.tier-list li+li::before{content:"·";margin-right:1.4rem;color:var(--muted)}
.faq details{background:#fff;border:1px solid var(--line);border-radius:calc(var(--radius) - 4px);padding:1rem;margin-bottom:.7rem}
.faq summary{cursor:pointer;font-weight:700;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";display:inline-block;width:1.2em;color:var(--brand-text);font-weight:800}
.faq details[open] summary::before{content:"−"}
.faq p{margin-top:.5rem;color:var(--muted)}
.cta{margin:1rem auto 2.5rem;max-width:var(--max);padding:2rem 1.2rem;text-align:center;border-radius:calc(var(--radius) + 4px)}
.cta p{margin:.55rem auto 1rem;max-width:42rem}
.cta-actions{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center}
.page-hero{max-width:var(--max);margin:1.4rem auto 0;padding:1.4rem 1.2rem;border-bottom:1px solid var(--line)}
.page-body{max-width:760px;margin:0 auto;padding:2rem 1.2rem 3rem}
.page-body p{margin-bottom:.8rem;color:#334155}
.error-box{max-width:560px;margin:3rem auto;text-align:center;padding:2rem 1.2rem}
.error-box p{margin-top:.8rem}
.site-footer{padding:2rem 1.2rem;margin-top:2rem}
.footer-inner{max-width:var(--max);margin:0 auto}
.footer-nav{display:flex;flex-wrap:wrap;gap:.7rem 1.1rem;margin-bottom:.7rem}
.footer-nav a{font-size:.9rem}
@media(max-width:960px){.main-nav,.header-actions .btn{display:none}.menu-toggle{display:flex}
.feature-grid{grid-template-columns:1fr}
.shot-grid{grid-template-columns:repeat(2,minmax(0,280px))}
.price-grid{grid-template-columns:repeat(2,minmax(0,220px))}}
@media(max-width:560px){.shot-grid,.price-grid{grid-template-columns:minmax(0,280px)}figure.shot img,article.price img{max-width:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.card:hover{transform:none}}
.site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line);border-top:4px solid var(--brand)}
.logo-text{letter-spacing:.04em;text-transform:uppercase;font-size:.95rem}
.card,figure.shot,article.price{box-shadow:none;background:var(--brand-soft);border-color:transparent}
.card p,figure.shot figcaption,article.price p{color:var(--muted-strong)}
.section{counter-increment:sec}
.section h2::before{content:counter(sec,decimal-leading-zero);margin-right:.55rem;color:var(--counter);font-weight:800}
body{counter-reset:sec}
.main-nav a[aria-current=page],.main-nav a:hover{background:transparent;color:var(--brand-text);text-decoration:underline;text-underline-offset:4px}
.ads-wrap{border:0;background:var(--brand-soft);border-radius:calc(var(--radius) + 4px)}
.ads-wrap .applist-title,.ads-wrap .caption{color:var(--muted-strong)}
.cta{background:linear-gradient(90deg,var(--brand-soft) 0 55%,#fff 55%);text-align:left;padding-left:1.6rem;color:#0f172a}
.cta h2{color:#0f172a}.cta p{color:var(--muted-strong);margin-left:0}
.cta .btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}
.cta .btn-outline{background:#fff;color:#0f172a;border:1px solid var(--brand)}
.cta-actions{justify-content:flex-start}
.site-footer{background:var(--brand);color:#fff}
.footer-nav a,.site-footer small{color:#fff}
.hero{max-width:var(--max);margin:1.5rem auto 0;padding:0 1.2rem}
.hero.has-visual{display:grid;grid-template-columns:1.15fr .85fr;gap:1.8rem;align-items:start}
.hero h1{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.25;margin:.6rem 0 1rem}
.hero .lead{color:var(--muted);margin-bottom:1.2rem;line-height:1.75;max-width:var(--prose-max)}
.hero-visual{border-radius:calc(var(--radius) + 4px);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:linear-gradient(180deg,var(--brand-soft),#fff);padding:1rem 1rem 0;max-width:320px;margin-left:auto}
.hero-visual img{width:100%;height:auto;object-fit:contain;object-position:top;border-radius:var(--radius);border:1px solid var(--line);background:#0f172a}
.hero-visual figcaption{padding:.8rem 1rem;background:#fff;color:var(--muted);font-size:.9rem;border-top:1px solid var(--line);text-align:center}
.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:1rem}
@media(max-width:960px){.hero.has-visual{grid-template-columns:1fr}.hero-visual{margin:0 auto}}
