@font-face{font-family:"REFU Serif";src:url(/fonts/refu.woff2) format("woff2");font-weight:300 500;font-style:normal;font-display:swap}
@font-face{font-family:"REFU Serif";src:url(/fonts/refu-italic.woff2) format("woff2");font-weight:300 500;font-style:italic;font-display:swap}
:root{--k:#000;--g:#777;--w:#E8E8E8;--g18:rgba(119,119,119,.18);--line:rgba(119,119,119,.28);
  --serif:"REFU Serif","Didot","Bodoni 72","Baskerville","Hoefler Text","Palatino Linotype","Times New Roman",serif;
  --cjk:"REFU Serif","Songti SC","STSong","Noto Serif CJK SC","Source Han Serif SC","Noto Serif SC","SimSun",serif;
  --mono:"SF Mono",SFMono-Regular,ui-monospace,Menlo,Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:#000;color:var(--w)}
body{min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--cjk)}
a{color:inherit;text-decoration:none}
.top{display:flex;justify-content:space-between;align-items:center;padding:30px 5vw 0;font:400 11px/1 var(--mono);letter-spacing:.24em;color:var(--g);text-transform:uppercase}
.top b{font:500 13px/1 var(--serif);letter-spacing:.5em;color:var(--w);padding-left:.5em}
.top a{color:var(--g)}.top a:hover{color:var(--w)}
.wrap{width:min(720px,100%);margin:0 auto;padding:0 5vw}
main.wrap{flex:1;padding-top:clamp(56px,11vh,110px);padding-bottom:clamp(72px,12vh,120px)}
.eyebrow{font:italic 400 clamp(15px,1.2vw,18px)/1 var(--serif);letter-spacing:.3em;color:var(--g)}
h1{margin-top:18px;font:300 clamp(22px,2.4vw,32px)/1.15 var(--cjk);letter-spacing:.55em}
.meta{margin-top:18px;max-width:34em;font:300 13px/1.9 var(--cjk);letter-spacing:.14em;color:var(--g)}
.lead{margin-top:clamp(36px,5.5vh,52px);padding-top:clamp(28px,4vh,40px);border-top:1px solid var(--line);font:300 clamp(16px,1.55vw,19px)/1.9 var(--cjk);letter-spacing:.1em;color:var(--w)}
section{margin-top:clamp(40px,6vh,56px)}
section h2{font:300 clamp(17px,1.6vw,20px)/1.4 var(--cjk);letter-spacing:.32em}
section p,section li{margin-top:16px;font:300 15px/1.95 var(--cjk);letter-spacing:.06em;color:rgba(232,232,232,.82)}
section ul{margin:14px 0 0 1.15em}
section li+li{margin-top:10px}
section strong{font-weight:500;color:var(--w)}
section a,.inlink{color:var(--g);border-bottom:1px solid rgba(119,119,119,.45)}
section a:hover,.inlink:hover{color:var(--w);border-bottom-color:rgba(232,232,232,.55)}
.note{margin-top:clamp(48px,8vh,72px);padding-top:28px;border-top:1px solid var(--line);font:300 13px/1.9 var(--cjk);letter-spacing:.12em;color:var(--g)}
.grid{margin-top:clamp(40px,6vh,56px);display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}
.card{padding:28px 26px 30px;border:1px solid var(--line);background:radial-gradient(ellipse 80% 70% at 50% 0%,rgba(119,119,119,.1),transparent 70%)}
.card h2{font:300 16px/1.4 var(--cjk);letter-spacing:.28em}
.card p{margin-top:14px;font:300 14px/1.9 var(--cjk);letter-spacing:.06em;color:rgba(232,232,232,.82)}
.faq{margin-top:12px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:22px 0}
.faq summary{list-style:none;cursor:pointer;font:300 16px/1.55 var(--cjk);letter-spacing:.1em;color:var(--w);display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 18px/1 var(--serif);color:var(--g);flex:none}
.faq details[open] summary::after{content:"–"}
.faq p{margin-top:14px;max-width:38em;font:300 15px/1.95 var(--cjk);letter-spacing:.06em;color:rgba(232,232,232,.82)}
.cta-block{margin-top:clamp(48px,8vh,72px);padding-top:clamp(28px,4vh,36px);border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.cta-block p{font:300 13px/1.9 var(--cjk);letter-spacing:.14em;color:var(--g);max-width:36em}
.btn{display:inline-block;padding:15px 34px;border:1px solid rgba(232,232,232,.38);font:400 13px/1 var(--cjk);letter-spacing:.28em;color:var(--w);transition:border-color .2s,background .2s}
.btn:hover{border-color:rgba(232,232,232,.75);background:rgba(232,232,232,.06)}
footer{margin-top:auto;padding:0 5vw;height:64px;display:flex;justify-content:space-between;align-items:center;gap:16px;font:300 12px/1 var(--cjk);letter-spacing:.14em;color:var(--g);border-top:1px solid var(--line);background:linear-gradient(transparent,#000 40%)}
footer nav{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
footer a{color:var(--g)}footer a:hover{color:var(--w)}
.gongan{display:inline-flex;align-items:center;gap:5px}.gongan img{width:auto;height:15px;display:block}
.badge{display:inline-block;margin-top:18px;padding:6px 12px;border:1px solid var(--line);font:400 11px/1 var(--mono);letter-spacing:.2em;color:var(--g)}
.btn.primary{background:var(--w);color:#000;border-color:var(--w)}.btn.primary:hover{background:#fff;border-color:#fff}
.spec{margin-top:clamp(36px,5vh,48px);border-top:1px solid var(--line)}
.spec div{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);font:300 14px/1.6 var(--cjk);letter-spacing:.08em}
.spec dt{color:var(--g);flex:none}.spec dd{color:var(--w);text-align:right;word-break:break-all}
.spec code{font:400 12px/1.6 var(--mono);letter-spacing:0}
.dl{margin-top:clamp(36px,5vh,48px);display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.dl small{font:300 12px/1.8 var(--cjk);letter-spacing:.1em;color:var(--g)}
@media (max-width:760px){
  .spec div{flex-direction:column;gap:4px}.spec dd{text-align:left}
  :root{--g:#8f8f8f}
  .top{padding-top:22px;font-size:9px;letter-spacing:.16em;color:var(--g)}
  .top b{font-size:12px;letter-spacing:.36em;padding-left:.36em}
  .top a{display:inline-flex;align-items:center;min-height:44px;padding:10px 4px}
  h1{letter-spacing:.32em;font-size:clamp(22px,7vw,28px)}
  .meta,.note,.eyebrow,.cta-block p{letter-spacing:.08em;color:#999}
  .meta{letter-spacing:.08em}
  .lead{letter-spacing:.06em}
  section h2{letter-spacing:.2em}
  .grid{grid-template-columns:1fr}
  .btn{padding:16px 28px;min-height:48px;letter-spacing:.18em;font-size:12px;display:inline-flex;align-items:center;justify-content:center}
  footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;height:auto;padding:14px 5vw 18px;font-size:11px;color:#8f8f8f}
  footer a{display:inline-flex;align-items:center;min-height:44px;padding:10px 6px}
  footer nav{gap:8px}
}
