/* Bothworlds | 连世域 — site styles
   Palette: paper #f6f6f4 · mist #ecedea · ink #1d1f21 · graphite #3a3d40 · stone #63686c
            rule #d5d7d3 · raised #2a2c2f · fjord #3e5c6b · fjord-light #8fa9b6 */

/* Latin fonts, self-hosted (Google Fonts is unreliable in mainland China) */
@font-face{font-family:Gelasio;src:url("/assets/fonts/gelasio-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Gelasio;src:url("/assets/fonts/gelasio-400-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Gelasio;src:url("/assets/fonts/gelasio-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Carlito;src:url("/assets/fonts/carlito-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Carlito;src:url("/assets/fonts/carlito-700.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Inconsolata;src:url("/assets/fonts/inconsolata-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Inconsolata;src:url("/assets/fonts/inconsolata-700.woff2") format("woff2");font-weight:700;font-display:swap}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#f6f6f4;color:#1d1f21;font-family:Calibri,Carlito,"LXGW Neo XiHei","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.zh{font-family:"LXGW Neo XiHei","PingFang SC","Microsoft YaHei",sans-serif}
img{max-width:100%}
a{color:#3e5c6b}a:hover{color:#1d1f21}
:focus-visible{outline:2px solid #3e5c6b;outline-offset:3px}
.skip{position:absolute;left:-9999px;top:0;padding:12px 16px;background:#1d1f21;color:#f6f6f4;z-index:10}
.skip:focus{left:16px;top:16px}

/* Type */
.serif{font-family:Georgia,Gelasio,"LXGW WenKai GB",serif;font-weight:400}
body.zh .serif{font-family:Georgia,Gelasio,serif}
.k{font-family:Consolas,Inconsolata,"LXGW Neo XiHei",monospace;font-size:11px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:#3e5c6b}
.ch{font-family:Consolas,Inconsolata,"LXGW Neo XiHei",monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#63686c}
.cn{font-family:"LXGW Neo XiHei","PingFang SC","Microsoft YaHei",sans-serif;color:#63686c}
.cnd{font-family:"LXGW Neo XiHei","PingFang SC","Microsoft YaHei",sans-serif;color:#9a9fa3}
.cnt,.t{font-family:"LXGW WenKai GB","Songti SC",serif;font-weight:300;letter-spacing:.03em}
.t4{font-family:"LXGW WenKai GB","Songti SC",serif;font-weight:400}
.en{font-family:Georgia,Gelasio,serif;font-style:italic;color:#63686c}

/* Layout */
.wrap{max-width:1200px;margin:0 auto;padding:0 48px}
.half{padding:72px 56px}

/* Forms */
.fld{display:flex;flex-direction:column;gap:8px}
.inp{min-height:48px;padding:0 16px;border:1px solid #1d1f21;background:#f6f6f4;font-size:16px;font-family:Calibri,Carlito,sans-serif;color:#1d1f21;border-radius:0;width:100%}
.ta{min-height:140px;padding:14px 16px;border:1px solid #1d1f21;background:#f6f6f4;font-size:16px;line-height:1.5;font-family:Calibri,Carlito,sans-serif;color:#1d1f21;border-radius:0;width:100%;resize:vertical}
.inp:focus,.ta:focus{outline:2px solid #3e5c6b;outline-offset:2px}
.role{position:relative;flex:1 1 160px}
.role input{position:absolute;opacity:0;width:1px;height:1px}
.role > span{display:flex;flex-direction:column;gap:4px;min-height:72px;padding:14px 16px;border:1px solid #d5d7d3;cursor:pointer;background:#f6f6f4}
.role input:checked + span{border-color:#1d1f21;box-shadow:inset 0 0 0 1px #1d1f21;background:#ecedea}
.role input:focus-visible + span{outline:2px solid #3e5c6b;outline-offset:2px}
.form-note{min-height:1.5em;margin:0;font-size:14px;color:#3e5c6b}

/* Mobile */
@media (max-width:700px){
  .wrap{padding:0 20px}
  .half{padding:48px 20px}
  .nl{display:none}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
