:root{color-scheme:light;--bg:#fffdfb;--ink:#25211e;--muted:#635a54;--line:#ede5df;--accent:#a63b13;--soft:#fcf3ed;font-family:system-ui,-apple-system,"Yu Gothic",Meiryo,sans-serif;line-height:1.75}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink)}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:3px}
.wrap,.shell{width:min(100% - 40px,740px);margin-inline:auto}
.skip{position:absolute;top:-80px;left:12px;background:white;padding:8px;z-index:1}
.skip:focus{top:8px}
.masthead,.header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 0;border-bottom:1px solid var(--line)}
.brand{font-size:1.02rem;font-weight:800;white-space:nowrap}
.masthead nav,.header nav{display:flex;gap:clamp(12px,3vw,24px);font-size:.85rem}
.masthead nav a,.header nav a,.footer a{color:var(--muted)}
.masthead nav a:hover,.header nav a:hover,.footer a:hover,.brand:hover{color:var(--accent)}
.intro{padding:clamp(44px,8vw,77px) 0 38px}
.handle,.eyebrow{color:var(--accent);font-size:.82rem;font-weight:750;margin:0 0 4px}
.intro h1,.detail-banner h1,.terms-intro h1{font-size:clamp(2.55rem,7vw,4rem);letter-spacing:-.06em;line-height:1.12;margin:0;font-weight:850}
.lead{font-weight:650;font-size:1.08rem;margin:14px 0 8px}
.bio,.section p,.detail-banner p:last-child{color:var(--muted);margin:7px 0 0}
.bio{max-width:59ch}
.record{border-left:2px solid #e97847;padding:1px 0 1px 13px;margin-top:24px}
.record strong{font-size:.91rem}
.record span,.accent-link,.inline-links a,.legal a,.terms-nav a{color:var(--accent)}
.record p,.muted{margin:2px 0 0;color:var(--muted);font-size:.84rem}
.section{padding:25px 0 28px;border-top:1px solid var(--line);scroll-margin-top:20px}
.section h2{font-size:1.38rem;letter-spacing:-.025em;line-height:1.4;margin:0 0 10px}
.bot-list{display:grid;gap:8px}
.bot-link{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:15px;padding:12px 9px;border:1px solid transparent;border-radius:10px;transition:background .16s,border-color .16s}
.bot-link:hover,.bot-link:focus-visible{background:var(--soft);border-color:var(--line)}
.bot-icon{width:56px;height:56px;border-radius:12px;object-fit:cover}
.bot-link h3{font-size:1.08rem;margin:0;line-height:1.35}
.bot-link p{font-size:.85rem;margin:3px 0 0}
.arrow{color:var(--accent);margin-right:5px}
.inline-links{display:flex;flex-wrap:wrap;gap:8px 20px}
.accent-link,.inline-links a,.legal a,.terms-nav a{text-decoration:underline;text-underline-offset:4px}
.accent-link{display:inline-block;margin-top:8px}
.footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:17px 0 28px;color:var(--muted);font-size:.79rem}
.detail-hero,.terms-intro{padding:clamp(34px,6vw,60px) 0 24px}
.back{display:inline-block;margin-bottom:20px;color:var(--accent);font-size:.88rem}
.detail-banner>.bot-icon{margin-bottom:8px}
.features,.legal{display:grid;gap:0}
.feature,.legal article{border-bottom:1px solid var(--line);padding:12px 0}
.feature:last-child,.legal article:last-child{border-bottom:0}
.feature h3,.legal h3{margin:0;font-size:1rem}
.feature .meta,.legal h3 span{color:var(--accent);font-size:.75rem;margin-right:6px}
.feature p,.legal p{margin:3px 0 0}
.legal ul{padding-left:1.2rem;color:var(--muted)}
.contact,.terms-nav{display:flex;gap:12px 20px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.pill,.button{color:var(--accent);font-weight:650;text-decoration:underline;text-underline-offset:4px}
.notice{background:var(--soft);border-left:2px solid #e97847;padding:7px 12px;color:var(--muted);font-size:.86rem}
.terms-nav{justify-content:flex-start;padding-bottom:18px;font-size:.88rem}
@media(max-width:430px){.wrap,.shell{width:calc(100% - 30px)}.bot-link{grid-template-columns:46px minmax(0,1fr) auto;gap:10px;padding-inline:5px}.bot-icon{width:46px;height:46px}.contact{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.detail-nav{display:flex;flex-wrap:wrap;gap:7px 20px;padding:0 0 19px;font-size:.86rem}
.detail-nav a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.detail-list{margin:0}
.detail-list>div{padding:12px 0;border-bottom:1px solid var(--line)}
.detail-list>div:last-child{border-bottom:0;padding-bottom:0}
.detail-list dt,.detail-steps strong{font-weight:750}
.detail-list dd{margin:4px 0 0;color:var(--muted)}
.detail-steps{margin:0;padding-inline-start:1.35rem}
.detail-steps li{padding:8px 0 8px 4px}
.detail-steps li::marker{color:var(--accent);font-weight:750}
.detail-steps p{margin:3px 0 0}
code{font-family:ui-monospace,Consolas,monospace;font-size:.88em;background:var(--soft);padding:.1em .32em;border-radius:4px;overflow-wrap:anywhere}
.section .detail-note{margin-top:15px;padding:9px 12px;border-left:2px solid #e97847;background:var(--soft);font-size:.88rem}
.detail-note strong{color:var(--accent);margin-right:.3em}
.section details{border-bottom:1px solid var(--line);padding:9px 0}
.section details:last-of-type{border-bottom:0}
.section summary{font-weight:700;cursor:pointer}
.section summary::marker{color:var(--accent)}
.section details p{margin:5px 0 4px}
