@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--bg:#09090f;--panel:#14131d;--line:#393043;--text:#f4ebdd;--muted:#b3aaba;--gold:#f3bd4e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-size:14px}button,a,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}header{height:95px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);gap:25px}.brand{font-size:13px;letter-spacing:2px;font-weight:700;white-space:nowrap}.brand-icon{font-size:30px;color:var(--gold);margin-right:10px;vertical-align:middle}nav{display:flex;gap:32px;color:var(--muted)}nav a{padding:12px 0}nav a.active{color:var(--gold);border-bottom:1px solid var(--gold)}button,.button{border:1px solid var(--gold);background:var(--gold);color:#15201b;border-radius:4px;padding:13px 21px;display:inline-block}.outline{background:transparent;color:var(--text);border-color:#65705b}.text-button{padding:0;background:none;border:0;color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2.7px;color:var(--gold);text-transform:uppercase;font-weight:600}.hero{position:relative;min-height:550px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;border-bottom:1px solid var(--line);overflow:hidden;padding:55px 8%;gap:60px;background:radial-gradient(ellipse at 80% 60%,#34453755,transparent 65%)}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(58px,6.5vw,92px);line-height:.99;letter-spacing:-2px;margin:24px 0}h1 em{color:var(--gold);font-weight:400}p{color:var(--muted);line-height:1.8}.hero p{max-width:420px;font-size:15px}.actions{display:flex;gap:16px;align-items:center;margin-top:28px}.small-note{font-size:11px;margin-top:25px;letter-spacing:.4px}.art{height:430px;position:relative;display:grid;place-items:center}.moon{position:absolute;top:22px;right:42px;width:93px;height:93px;border:1px solid #bea87477;border-radius:50%;box-shadow:0 0 80px #c5b68215}.moon:after{content:'';position:absolute;inset:10px;border:1px solid #bea87433;border-radius:50%}.orbit{position:absolute;width:350px;height:350px;border:1px solid #8c977433;border-radius:50%;transform:rotate(-25deg) scaleX(.78)}.book{width:220px;height:310px;position:relative;transform:rotate(-12deg);background:linear-gradient(110deg,#11241d,#294237 50%,#14261f);border:1px solid #9c9b71;box-shadow:13px 15px 0 -3px #c2b997,17px 19px 0 -3px #17281e,25px 35px 65px #0008;padding:25px 20px;text-align:center}.book:before{content:'';position:absolute;inset:13px;border:1px solid #a0a07866}.book .title{font-family:Georgia,serif;font-size:25px;letter-spacing:2px;margin-top:30px;color:#cec3a0}.tree{font-size:90px;color:#a5ac87;line-height:1.4}.book small{font-size:8px;letter-spacing:3px;color:#bbb79c}.star{position:absolute;color:var(--gold);font-size:35px}.star.one{bottom:30px;right:60px}.star.two{top:50px;left:40px}.art-caption{position:absolute;bottom:0;color:#788b76;font-size:9px;letter-spacing:3px}.ribbon{display:flex;justify-content:space-evenly;padding:22px 5%;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;letter-spacing:1px}.ribbon b{color:var(--gold);margin-right:10px}section{padding:55px 8%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}h2{font-size:42px;line-height:1.1}.section-head .eyebrow{margin-bottom:12px}.section-link{color:var(--gold);font-size:12px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);background:var(--panel);border-radius:5px;overflow:hidden;transition:transform .2s}.card:hover{transform:translateY(-4px)}.card-body{padding:23px}.card h3{font-size:28px;margin:10px 0}.card p{font-size:13px;margin:10px 0}.tag{font-size:9px;letter-spacing:1.7px;color:var(--gold);text-transform:uppercase}.card-art{height:185px;display:grid;place-items:center;background:radial-gradient(ellipse at bottom,#56735d,#1d352b 65%);position:relative;overflow:hidden}.card-art:before,.card-art:after{content:'';width:50px;height:230px;position:absolute;background:#0d211b;transform:rotate(25deg);left:15%;top:40px;box-shadow:90px 30px #0d211b,190px -20px #0d211b}.card-art:after{transform:rotate(-25deg);left:80%}.card-art span{z-index:1;font-size:65px;color:#c3bf96;text-shadow:0 5px 20px #000}.card-art.gold{background:radial-gradient(ellipse at bottom,#8a7850,#302e22 70%)}.card-art.blue{background:radial-gradient(ellipse at bottom,#637f86,#23383c 70%)}.meta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:11px;color:var(--muted)}.join-banner{margin:0 8% 60px;padding:36px;border:1px solid #666950;display:flex;justify-content:space-between;align-items:center;gap:25px;background:#242e23}.join-banner h2{font-size:32px}.join-banner p{margin-bottom:0}.page-intro{padding-bottom:25px}.page-intro h1{font-size:68px}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 30px}.tabs button{background:transparent;color:var(--muted);border-color:var(--line)}.tabs button.selected{background:var(--gold);color:var(--bg)}.lock-note{border:1px solid var(--line);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.sample{color:var(--muted);font-size:11px}.empty{text-align:center;padding:50px}.price{font-family:Georgia,serif;font-size:44px;margin:22px 0 6px}.price small{font:12px 'DM Sans',sans-serif;color:var(--muted)}footer{padding:45px 8%;border-top:1px solid var(--line)}footer div{display:flex;gap:25px;flex-wrap:wrap;margin:30px 0;color:var(--muted);font-size:12px}footer small{color:#768679;font-size:10px}.fan{position:fixed;bottom:22px;right:24px;border-color:#627b60;background:#243d2d;color:#e5eddf;box-shadow:0 5px 25px #0004;z-index:5}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:38px;max-width:680px;width:calc(100% - 32px);max-height:88vh}dialog::backdrop{background:#050e0bcc;backdrop-filter:blur(5px)}.close{float:right;background:none;color:var(--text);border:0;font-size:25px;padding:0 0 10px 20px}dialog h2{font-size:36px}dialog .grid{grid-template-columns:1fr}label{display:block;margin:18px 0 6px;color:var(--muted)}input,textarea,select{width:100%;padding:12px;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:4px}textarea{min-height:100px}.editor-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.editor-item{border-top:1px solid var(--line);padding:16px 0;display:flex;justify-content:space-between;gap:10px}.editor-item button{padding:6px 12px}.error{color:#f2bba6}.status{color:var(--gold)}button:focus-visible,a:focus-visible{outline:2px solid #eee6b8;outline-offset:4px}@media(max-width:850px){header{height:auto;min-height:90px;padding:22px 6%;flex-wrap:wrap}nav{order:3;width:100%;justify-content:space-between;gap:10px;font-size:12px}.hero{padding:45px 7%;gap:15px}.art{transform:scale(.85);height:370px}.grid{gap:14px}.card-body{padding:17px}section{padding:45px 7%}}@media(max-width:600px){header>.outline{font-size:11px;padding:10px}.brand{font-size:10px;letter-spacing:1.4px}.hero{grid-template-columns:1fr;padding-bottom:25px}.hero h1{font-size:66px}.art{height:350px;margin-top:0}.ribbon{gap:10px;flex-wrap:wrap;font-size:9px}.grid{grid-template-columns:1fr}.card-art{height:205px}.join-banner{flex-direction:column;align-items:start;margin:0 7% 45px}.section-head{align-items:start}h2{font-size:35px}.page-intro h1{font-size:54px}.lock-note{align-items:start;flex-direction:column}.fan{bottom:14px;right:14px;padding:11px 16px}footer{padding-bottom:90px}}

/* TOBU identity: ink, parchment gold, dragonfire, violet and electric blue. */
.brand{display:inline-flex;align-items:center;gap:12px}.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:10px;flex-shrink:0}header{background:#09090ff2;border-bottom-color:#48344c}nav a.active{color:#f3bd4e}.hero{background:radial-gradient(ellipse at 90% 35%,#1579a322,transparent 50%),radial-gradient(ellipse at 63% 70%,#9e42c026,transparent 48%),radial-gradient(ellipse at 25% 100%,#b53b1717,transparent 50%),#09090f;gap:35px}.logo-art{height:auto;min-height:430px;isolation:isolate;display:flex;flex-direction:column;justify-content:center;transform:none}.hero-logo{width:100%;max-width:460px;height:auto;display:block;border-radius:18%;filter:drop-shadow(0 15px 38px #0009)}.logo-art .art-caption{position:static;margin-top:22px;text-align:center;color:#d0bb93}.hero h1 em{background:linear-gradient(100deg,#ffce69 5%,#e1a4e5 60%,#48bdeb);background-clip:text;-webkit-background-clip:text;color:transparent}.button,button{color:#1b1013}.outline{color:var(--text);border-color:#80646f}.text-button{color:var(--muted)}.close{color:var(--text)}.ribbon{background:#100d17}.ribbon span:nth-child(2) b{color:#c879df}.ribbon span:nth-child(3) b{color:#53bee7}.card{border-color:#383043;box-shadow:0 8px 25px #0002}.card-art{background:radial-gradient(ellipse at bottom,#be4c23,#461b24 68%)}.card-art.gold{background:radial-gradient(ellipse at bottom,#997433,#3b2915 70%)}.card-art.blue{background:radial-gradient(ellipse at bottom,#267b9a,#122536 70%)}.card-art:before,.card-art:after{background:#0c0b14;box-shadow:90px 30px #0c0b14,190px -20px #0c0b14}.card-art span{color:#ffdfad}.card:nth-child(2) .tag{color:#d69de5}.card:nth-child(3) .tag{color:#70c9ee}.card:hover{border-color:#b96bd0}.join-banner{background:linear-gradient(120deg,#312014,#25172e 60%,#142632);border-color:#76583e}.fan{background:#1b2235;border-color:#548ec0;color:#e5efff}.fan:hover{background:#293149}footer{background:#0c0a11}footer small{color:#a096a8}button:focus-visible,a:focus-visible{outline-color:#64c7f3}.tabs button.selected{background:var(--gold)}dialog{box-shadow:0 20px 90px #0008}@media(max-width:850px){.brand-logo{width:40px;height:40px}.logo-art{min-height:320px}}@media(max-width:600px){.brand{gap:8px}.brand-logo{width:36px;height:36px}.logo-art{min-height:0;margin:18px auto 0;width:100%;max-width:370px}.hero-logo{max-width:350px}.logo-art .art-caption{font-size:8px;margin-top:15px}.hero{gap:10px}footer .brand-logo{width:46px;height:46px}}

