/* Phantom Machines — inner pages (Support, Privacy, Terms, 404). Same paper, ink, Manrope and quiet small-caps chrome as the home page. */
:root{--paper:#FCFBF9;--ink:#0B0B0C;--text:rgba(11,11,12,.82);--mute:rgba(11,11,12,.6);--faint:rgba(11,11,12,.42);--line:rgba(11,11,12,.09);--gut:40px}
*{box-sizing:border-box}
html{background:var(--paper);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font-family:var(--ff);-webkit-font-smoothing:antialiased;overflow-x:hidden;font-kerning:normal}
a{color:inherit}
:target{scroll-margin-top:28px}

/* header: logo left (home link), language right — on the 40 px gutter like the home page */
.top{display:flex;align-items:center;justify-content:flex-end;min-height:90px;padding:50px var(--gut) 0}
.bk{position:fixed;z-index:10;left:calc(var(--gut) - 13.4px);top:51.2px;display:flex;align-items:center;padding:8px;border-radius:50%;color:rgba(11,11,12,.45);text-decoration:none;transition:color .25s;-webkit-tap-highlight-color:transparent}.bk:hover{color:var(--ink)}.bk svg{width:21.6px;height:21.6px;display:block;transform:rotate(90deg);stroke-width:.8}
@media(max-width:900px){.bk{background:rgba(252,251,249,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}
.bk:focus-visible{outline:2px solid rgba(11,11,12,.4);outline-offset:2px;border-radius:4px}
.lang{position:relative;z-index:6;font-size:9.5px;line-height:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(11,11,12,.45);font-family:var(--ffm)}
.lang .lb{all:unset;cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 0 8px 10px;transition:color .25s;-webkit-tap-highlight-color:transparent}.lang .lb:hover,.lang.open .lb{color:var(--ink)}
.lang .lb:focus-visible{outline:2px solid rgba(11,11,12,.4);outline-offset:2px;border-radius:4px}
.lang .lb svg{width:8px;height:8px;display:block;transition:transform .3s}.lang.open .lb svg{transform:rotate(180deg)}
.lang .ll{position:absolute;right:-8px;top:100%;margin:2px 0 0;padding:6px 0;list-style:none;min-width:150px;background:#fff;border:1px solid rgba(11,11,12,.08);border-radius:12px;box-shadow:0 18px 44px rgba(20,18,12,.12),0 2px 6px rgba(20,18,12,.05);
  opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity .22s,transform .3s cubic-bezier(.2,.8,.2,1),visibility 0s linear .3s}
.lang.open .ll,html:not(.js) .lang:hover .ll,html:not(.js) .lang:focus-within .ll{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .22s,transform .3s cubic-bezier(.2,.8,.2,1),visibility 0s}
.lang .ll a{display:flex;justify-content:space-between;gap:18px;padding:7px 14px;color:rgba(11,11,12,.6);text-decoration:none;transition:color .2s,background .2s}.lang .ll a:hover{color:var(--ink);background:rgba(11,11,12,.04)}
.lang .ll a b{font-weight:600;color:var(--ink)}.lang .ll a.cur{color:var(--ink)}
.lang .ll a i{font-style:normal;letter-spacing:.02em;text-transform:none;font-size:11px;font-weight:500}

/* article */
.article{width:100%;max-width:calc(68ch + 2 * var(--gut));margin:0 auto;padding:96px var(--gut) 112px;font-size:16.5px;line-height:1.65;font-weight:450;color:var(--text);overflow-wrap:break-word;flex:1 0 auto}
.article h1{margin:0 0 18px;font-size:40px;line-height:1.1;font-weight:700;letter-spacing:-.025em;color:var(--ink)}
.article .tnote{display:inline-block;margin:0 0 26px;padding:9px 14px;border-radius:10px;background:rgba(11,11,12,.04);font-size:13px;line-height:1.45;font-weight:500;color:var(--mute)}
.article .tnote a{color:var(--ink)}
.article .meta{margin:0 0 52px;font-size:13.5px;line-height:1.7;font-weight:500;color:var(--mute)}.article .meta strong{color:rgba(11,11,12,.75)}
.article h2{margin:56px 0 14px;font-size:22px;line-height:1.3;font-weight:700;letter-spacing:-.015em;color:var(--ink)}
.article h2.part{margin:80px 0 0;padding-top:22px;border-top:1px solid var(--line);font-size:10px;line-height:14px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.article h2.part+h2{margin-top:30px}
.article h3{margin:36px 0 10px;font-size:17px;line-height:1.4;font-weight:700;letter-spacing:-.005em;color:var(--ink)}
.article p{margin:0 0 16px}.article p.cl{margin-bottom:14px}
.article ul,.article ol{margin:0 0 18px;padding-left:1.25em}.article li{margin:0 0 8px;padding-left:.2em}.article li::marker{color:var(--faint)}
.article strong{font-weight:700;color:var(--ink)}
.article a{text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:rgba(11,11,12,.28);text-underline-offset:3px;transition:text-decoration-color .2s}.article a:hover{text-decoration-color:var(--ink)}
.article .em{font-weight:600;color:var(--ink);white-space:nowrap}
.article hr{border:0;height:0;margin:0}
.article .tw{margin:18px 0 26px;overflow-x:auto}
.article table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.55}
.article th{padding:0 18px 10px 0;text-align:left;vertical-align:bottom;font-size:10px;line-height:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid rgba(11,11,12,.16)}
.article td{padding:12px 18px 12px 0;vertical-align:top;border-bottom:1px solid var(--line)}
.article td:first-child{font-weight:600;color:var(--ink);min-width:9em}
.article th:last-child,.article td:last-child{padding-right:0}

/* support */
.article .lead{margin:0 0 30px;font-size:20px;line-height:1.45;font-weight:500;color:rgba(11,11,12,.78)}
.mail{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;padding:16px 16px 16px 22px;border-radius:18px;background:rgba(255,255,255,.7);box-shadow:inset 0 0 0 1px rgba(11,11,12,.07),0 12px 34px rgba(20,18,12,.06)}
.mail .addr{font-size:19px;line-height:26px;font-weight:700;letter-spacing:-.01em;color:var(--ink);-webkit-user-select:all;user-select:all;white-space:nowrap}
.mail .who{display:flex;align-items:center;gap:8px;min-width:0}
.mail a.mailto{display:inline-block;padding:8px 18px;border-radius:999px;background:var(--ink);color:#fff;border:0;background-image:none;box-shadow:none;text-decoration:none;font-size:13px;line-height:18px;font-weight:700;white-space:nowrap;transition:transform .25s;-webkit-tap-highlight-color:transparent}.mail a.mailto:hover{transform:translateY(-1px);color:#fff}.mail a.mailto:focus-visible{outline:2px solid rgba(11,11,12,.45);outline-offset:3px}
.copy{all:unset;cursor:pointer;flex:none;box-sizing:border-box;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:rgba(11,11,12,.42);transition:color .2s;-webkit-tap-highlight-color:transparent}
.copy svg{width:18px;height:18px;display:block}.copy .i2{display:none}.copy.ok{color:#2E7D4F}.copy.ok .i1{display:none}.copy.ok .i2{display:block}
.copy:hover{color:var(--ink)}.copy.ok:hover{color:#2E7D4F}.copy:focus-visible{outline:2px solid rgba(11,11,12,.45);outline-offset:2px}
.postal{margin-top:40px;font-size:14px;line-height:22px;color:var(--mute,rgba(11,11,12,.55))}.postal span{display:block;margin-bottom:6px;font-size:12px;color:rgba(11,11,12,.42)}
html:not(.js) .copy{display:none}
.more{margin-top:64px;font-size:15.5px;color:var(--mute)}.more h2{font-size:18px;margin-top:44px}.more strong{color:rgba(11,11,12,.8)}

/* 404 */
.nf{padding-top:6vh}.nf h1{margin-bottom:12px}.nf p{color:var(--mute)}.nf .back{color:var(--ink);font-weight:600}

/* footer: the home page's quiet small caps, right-aligned; © half the size, same baseline */
.pf{display:flex;justify-content:flex-end;align-items:baseline;padding:0 var(--gut) 35px;font-size:9.5px;line-height:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(11,11,12,.42);font-family:var(--ff)}
.pf .rt{display:flex;align-items:baseline;gap:26px;flex-wrap:wrap;justify-content:flex-end;row-gap:4px}.pf .ln{display:flex;gap:16px;flex-wrap:wrap}.pf a{text-decoration:none;padding:8px 0;margin:-8px 0;transition:color .25s;white-space:nowrap}.pf a:hover,.pf a.cur{color:var(--ink)}
.pf .cp2{font-size:8.5px;letter-spacing:.12em;color:rgba(11,11,12,.36);white-space:nowrap}

/* CJK: no tracking on body text, airier lines, Korean keeps words whole */
.cjk .article{font-weight:400;line-height:1.85}.cjk .article h1,.cjk .article h2,.cjk .article h3{letter-spacing:0}
.cjk .article h2.part,.cjk .article th{letter-spacing:.08em}
.ko .article,.ko .article *{word-break:keep-all}
.cjk .pf{letter-spacing:.06em}

@media (max-width:640px){
  :root{--gut:16px}
  .top{padding-top:12px;min-height:52px}.bk{top:13.2px}.lang{font-size:9px}
  .article{padding-top:56px;padding-bottom:80px;font-size:16px;line-height:1.62}
  .article h1{font-size:min(31px,7.5vw);-webkit-hyphens:auto;hyphens:auto}
  .article{-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:7 3 3}.article .em,.article a,.mail{-webkit-hyphens:none;hyphens:none}
  .article h2{font-size:20px;margin-top:46px}
  .article .lead{font-size:18px}
  .mail{padding:14px 14px 14px 18px}.mail .addr{font-size:min(17px,calc((100vw - 104px) / 16.2))}
  /* tables become stacked rows: label from the header cell */
  .article table,.article tbody,.article tr,.article td{display:block;width:100%}
  .article thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .article tr{padding:12px 0 6px;border-bottom:1px solid var(--line)}
  .article td{padding:0 0 8px;border:0}
  .article td::before{content:attr(data-label);display:block;margin:0 0 2px;font-size:9.5px;line-height:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
  .article td:first-child::before{display:none}.article td:first-child{font-size:15px}
  .pf{justify-content:center;padding:0 var(--gut) calc(14px + env(safe-area-inset-bottom,0px));font-size:9px;letter-spacing:.1em}
  .pf .rt{gap:12px;justify-content:center}.pf .ln{gap:12px;justify-content:center}.pf a{padding:8px 4px;margin:0}
}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;transition-delay:0s!important}}
@media print{.top .lang,.pf,.copy{display:none}.article{padding:0;max-width:none;color:#000;font-size:11pt}.top{padding:0 0 24px}}
