@font-face{font-family:Dollagon Sans;src:url("assets/fonts/Roboto-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Dollagon Sans;src:url("assets/fonts/Roboto-Medium.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Dollagon Sans;src:url("assets/fonts/Roboto-Bold.ttf") format("truetype");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Dollagon Display;src:url("assets/fonts/NotoSansSC-Display.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}

:root{
  --paper:#f7f3ed;
  --paper-deep:#efe8df;
  --ink:#171717;
  --muted:#625f5a;
  --line:rgba(23,23,23,.14);
  --lavender:#b9a7d7;
  --lavender-soft:#e5ddf0;
  --sage:#52695b;
  --sage-soft:#dce6dd;
  --coral:#d87762;
  --white:#fffdf9;
  --shadow:0 24px 56px rgba(37,27,20,.18),0 7px 18px rgba(37,27,20,.11);
  --ease:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box}
html{overflow-x:hidden;scroll-behavior:smooth;background:var(--paper);color-scheme:light}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Dollagon Sans","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body,main{min-width:0}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.25em}
p,h1,h2,h3,dl,dd,figure,ul{margin-top:0}
h1,h2,h3{font-family:"Dollagon Display","PingFang SC","Microsoft YaHei",sans-serif}
::selection{background:var(--lavender);color:#17131c}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--paper-deep)}
::-webkit-scrollbar-thumb{background:#8f877e;border:3px solid var(--paper-deep);border-radius:999px}
:focus-visible{outline:3px solid #70559d;outline-offset:4px}

.skip-link{position:fixed;top:12px;left:12px;z-index:1000;padding:10px 14px;background:var(--ink);color:white;border-radius:8px;transform:translateY(-160%);transition:transform .2s var(--ease)}
.skip-link:focus{transform:translateY(0)}

.site-header{position:sticky;top:0;z-index:100;background:transparent;pointer-events:none}
.site-nav{width:min(1440px,calc(100% - 48px));height:136px;margin:auto;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:32px}
.brand{display:inline-block;width:166px;height:56px;background:url("assets/brand/dollagon-lockup-spaced.png") center/contain no-repeat;text-decoration:none;font-size:0;line-height:1}
.site-header .brand{position:relative;width:118px;height:111px;background:none;pointer-events:auto}
.site-header .brand::before,.site-header .brand::after{content:"";position:absolute;background:url("assets/brand/dollagon-lockup-spaced.png") no-repeat}
.site-header .brand::before{top:0;left:20px;width:78px;height:66px;background-position:-14px -15px;background-size:276px auto}
.site-header .brand::after{top:73px;left:18px;width:82px;height:28px;background-position:-62px -15px;background-size:151px auto}
.brand span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.brand-mark{display:none}
.nav-links{display:flex;justify-self:end;align-items:center;gap:2px;padding:5px;background:rgba(255,255,255,.94);border-radius:14px;box-shadow:0 6px 18px rgba(44,35,28,.1);font-size:14px;font-weight:500;pointer-events:auto}
.nav-links a,.site-footer a{text-decoration:none}
.nav-links a{padding:9px 15px;border-radius:10px;transition:background .2s ease}
.nav-links a:hover{background:var(--paper-deep)}
.official-name{display:none}

.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 22px;border:1px solid transparent;border-radius:12px;text-decoration:none;font-weight:500;transition:transform .25s var(--ease),background .25s ease,color .25s ease,box-shadow .25s ease}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--ink);color:white;box-shadow:0 9px 20px rgba(23,23,23,.2)}
.button-primary:hover{background:#322f2c;box-shadow:0 13px 26px rgba(23,23,23,.24)}
.button-light{background:var(--white);color:var(--ink);box-shadow:0 10px 26px rgba(0,0,0,.14)}
.text-link{display:inline-flex;align-items:center;gap:7px;font-weight:500;text-decoration:none}
.text-link span{transition:transform .25s var(--ease)}
.text-link:hover span{transform:translate(3px,-2px)}

.site-footer{width:min(1440px,calc(100% - 48px));margin:auto;padding:70px 0 42px;display:grid;grid-template-columns:1fr 1fr;gap:80px;color:#3f3c38;border-top:1px solid var(--line)}
.site-footer p{margin:12px 0 0;color:var(--muted);font-size:13px}
.site-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:flex-start;gap:13px 25px;font-size:13px}
.footer-brand{width:143px;height:48px}

/* Shared product and policy document shell. */
.document-page{background:var(--paper)}
.document-main{width:min(1100px,calc(100% - 48px));margin:0 auto;padding:96px 0 120px}
.document-hero{max-width:760px;margin-bottom:74px}
.document-hero h1{max-width:11ch;margin-bottom:24px;font-size:clamp(3rem,7vw,5.5rem);line-height:.98;letter-spacing:-.04em}
.document-hero p{max-width:68ch;margin:0;color:var(--muted);font-size:18px}
.document-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:80px;align-items:start}
.document-toc{position:sticky;top:110px;display:grid;gap:10px}
.document-toc a{color:var(--muted);font-size:14px;text-decoration:none}
.document-toc a:hover{color:var(--ink)}
.document-content{min-width:0;max-width:74ch}
.document-content section{padding:0 0 54px;margin:0 0 54px;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.document-content section:last-child{border-bottom:0}
.document-content h2{margin-bottom:18px;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.025em}
.document-content h3{margin:30px 0 10px;font-size:18px}
.document-content p,.document-content li{color:#4f4b46}
.document-content ul{padding-left:1.2em}
.document-meta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:28px;color:var(--muted);font-size:13px}
.document-content details{padding:18px 0;border-top:1px solid var(--line)}
.document-content details:last-of-type{border-bottom:1px solid var(--line)}
.document-content summary{cursor:pointer;font-weight:500}
.document-content details p{margin:12px 0 2px}
.document-note{padding:20px 22px;background:var(--lavender-soft);border-radius:14px;color:#403647!important}
.table-wrap{max-width:100%;overflow-x:auto;margin:24px 0 32px}
.document-content table{width:100%;min-width:620px;border-collapse:collapse;font-size:14px}
.document-content th,.document-content td{padding:15px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.document-content th{color:var(--ink);font-weight:500}.document-content td{color:#514d48}

@media (max-width:800px){
  .site-nav{width:calc(100% - 36px);height:108px;grid-template-columns:auto 1fr;gap:12px}
  .brand{width:143px;height:48px}
  .site-header .brand{width:96px;height:90px}
  .site-header .brand::before{left:17px;width:62px;height:53px;background-position:-11px -12px;background-size:219px auto}
  .site-header .brand::after{top:58px;left:14px;width:68px;height:23px;background-position:-51px -13px;background-size:125px auto}
  .nav-links{gap:0;padding:4px;border-radius:12px;font-size:12px}.nav-links a{padding:8px 11px}.nav-links a:nth-child(2){display:none}
  .site-footer{width:calc(100% - 36px);grid-template-columns:1fr;gap:36px;padding-top:52px}
  .site-footer nav{justify-content:flex-start}
  .document-main{width:calc(100% - 36px);padding:70px 0 88px}
  .document-hero{margin-bottom:52px}.document-hero p{font-size:16px}
  .document-layout{grid-template-columns:1fr;gap:36px}.document-toc{position:static;display:flex;flex-wrap:wrap;gap:10px 18px;padding-bottom:24px;border-bottom:1px solid var(--line)}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}

@media (prefers-reduced-transparency:reduce){.nav-links{background:#fff}}
