@font-face{font-family:"Geist";src:url("/fonts/Geist-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:"Geist Mono";src:url("/fonts/GeistMono-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--bg:#110F0A;--bg-2:#0C0B08;--card:#1A1812;--text:#F3F0E8;--muted:#C4BBA8;--line:#3A3424;--accent:#FFD23F;--accent-fill:#F5C518;--accent-hover:#FFD54A;--ink:#1A1400;--focus:#FFD23F;--danger:#f3b4b4;--max:74rem;--gutter:1rem}*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:dark}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}body{margin:0;font-family:"Geist","Segoe UI","Liberation Sans",sans-serif;font-size:1.0625rem;line-height:1.6;color:var(--text);background:var(--bg)}img{max-width:100%;height:auto;display:block}picture{display:block;width:100%}.icon{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--accent);display:block}.with-icon{display:flex;align-items:flex-start;gap:0.4em}.with-icon .icon{width:1.1em;height:1.1em;flex-shrink:0;margin-top:0.25em;margin-top:calc((1lh - 1.1em) / 2)}.addr-line{display:flex;align-items:flex-start;gap:0.5rem}.addr-line .icon{margin-top:0.2em}a{color:var(--accent);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline}.skip:hover,.skip:focus-visible,.logo:hover,.logo:focus-visible,.site-header nav a:hover,.site-header nav a:focus-visible,.btn:hover,.btn:focus-visible,.works a:hover,.works a:focus-visible{text-decoration:none}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip{position:absolute;left:0.75rem;top:-3.5rem;background:var(--focus);color:var(--ink);padding:0.5rem 0.875rem;font-weight:650;z-index:20;text-decoration:none}.skip:focus{top:0.75rem}.wrap{width:min(var(--max),calc(100% - 2 * var(--gutter)));margin-inline:auto}.sr-only,.hp-field{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--line)}.site-header .wrap{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0.75rem 1.25rem;padding:0.85rem 0}.logo{color:var(--text);text-decoration:none;font-weight:650;letter-spacing:-0.02em;display:flex;align-items:baseline;gap:0.5rem}.logo span{color:var(--accent);font-family:"Geist Mono",ui-monospace,monospace;font-size:0.8rem;font-weight:500}.site-header nav{margin-left:0;width:100%;display:grid;grid-template-columns:repeat(3,max-content);gap:0 0.35rem}.site-header nav a{color:var(--text);text-decoration:none;padding:0.45rem 0.65rem;min-height:2.75rem;display:inline-flex;align-items:center;font-size:0.95rem;border-radius:2px}.site-header nav a:hover,.site-header nav a[aria-current="page"]{background:var(--card);color:var(--accent)}.nav-num{display:none}.nav-toggle{display:none}.js-nav .site-header .wrap{flex-wrap:nowrap;align-items:center;padding:0.6rem 0}.js-nav .nav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:0.45rem;margin-left:auto;min-width:2.75rem;min-height:2.75rem;padding:0 0.8rem;font:inherit;font-family:"Geist Mono",ui-monospace,monospace;font-size:0.85rem;font-weight:500;letter-spacing:0.04em;color:var(--text);background:transparent;border:1px solid var(--line);border-radius:2px;cursor:pointer}.js-nav .nav-toggle:hover,.js-nav .nav-toggle[aria-expanded="true"]{border-color:var(--accent-fill)}.js-nav .nav-toggle .icon{width:1.25rem;height:1.25rem;color:var(--accent)}.js-nav .nav-toggle .icon-x,.js-nav .nav-toggle[aria-expanded="true"] .icon-menu{display:none}.js-nav .nav-toggle[aria-expanded="true"] .icon-x{display:block}.js-nav .site-header nav{display:none}.js-nav .site-header nav.is-open{display:block;position:fixed;top:var(--nav-top,4rem);left:0;right:0;bottom:0;z-index:4;width:auto;margin:0;padding:0.5rem var(--gutter) var(--gutter);overflow-y:auto;overscroll-behavior:contain;background:var(--bg);border-top:3px solid var(--accent-fill)}.js-nav .site-header nav.is-open a{display:flex;align-items:baseline;gap:0.9rem;min-height:3.25rem;padding:0.7rem 0.5rem 0.7rem 0.75rem;font-size:1.2rem;font-weight:650;letter-spacing:-0.02em;border-bottom:1px solid var(--line);border-left:3px solid transparent;border-radius:0}.js-nav .site-header nav.is-open a:hover{background:var(--card);color:var(--text)}.js-nav .site-header nav.is-open a[aria-current="page"]{color:var(--accent);background:var(--card);border-left-color:var(--accent-fill)}.js-nav .site-header nav.is-open .nav-num{display:inline-block;min-width:1.6rem;font-family:"Geist Mono",ui-monospace,monospace;font-size:0.75rem;font-weight:500;letter-spacing:0;color:var(--accent)}html.nav-open,html.nav-open body{overflow:hidden}@media (min-width:800px){.site-header .wrap,.js-nav .site-header .wrap{flex-wrap:wrap;align-items:center;padding:0.85rem 0}.site-header nav,.js-nav .site-header nav,.js-nav .site-header nav.is-open{display:flex;flex-wrap:wrap;position:static;inset:auto;z-index:auto;width:auto;margin:0 0 0 auto;padding:0;overflow:visible;overscroll-behavior:auto;background:transparent;border:0;gap:0.15rem}.nav-toggle,.js-nav .nav-toggle{display:none}.site-header nav a,.js-nav .site-header nav.is-open a{display:inline-flex;align-items:center;gap:0;min-height:2.75rem;padding:0.45rem 0.65rem;font-size:0.95rem;font-weight:inherit;letter-spacing:normal;border:0;border-radius:2px}.js-nav .site-header nav.is-open a:hover{background:var(--card);color:var(--accent)}.js-nav .site-header nav.is-open a[aria-current="page"]{border-left:0}.js-nav .site-header nav.is-open .nav-num{display:none}html.nav-open,html.nav-open body{overflow:visible}}.hero{padding:4rem 0 var(--gutter)}.hero-tag{display:inline-block;font-family:"Geist Mono",ui-monospace,monospace;font-size:0.78rem;letter-spacing:0.06em;color:var(--ink);background:var(--accent-fill);padding:0.3rem 0.55rem;margin:0 0 1.25rem;font-weight:650}.hero h1{font-size:clamp(2.3rem,5.2vw,3.6rem);line-height:1.05;letter-spacing:-0.04em;margin:0 0 1.1rem;font-weight:650;max-width:16ch}.page-hero h1{max-width:22ch}.hero .lead,.page-hero .lead{font-size:1.2rem;color:var(--muted);max-width:38rem;margin:0 0 4rem}.actions{display:flex;flex-wrap:wrap;gap:0.75rem;margin-bottom:2.5rem}.page-hero .actions{margin-bottom:0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:0.7rem 1.15rem;font:inherit;font-weight:650;border:0;cursor:pointer;text-decoration:none;border-radius:2px}.btn-primary{background:var(--accent-fill);color:var(--ink)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}.btn-ghost:hover{box-shadow:inset 0 0 0 1px var(--accent)}.pillars{display:grid;gap:1rem}@media (min-width:800px){.pillars{grid-template-columns:repeat(3,1fr)}}.pillars article{background:var(--card);border:1px solid var(--line);padding:1.15rem 1.2rem;border-top:3px solid var(--accent-fill)}.pillars h2{margin:0 0 0.4rem;font-size:1.05rem;letter-spacing:-0.02em}.pillars p{margin:0;color:var(--muted);font-size:0.95rem}section,.hero,.page-hero{scroll-margin-top:4.5rem}section{padding:3.5rem 0 var(--gutter)}section h2{font-size:clamp(1.7rem,3vw,2.25rem);letter-spacing:-0.03em;margin:0 0 1rem;font-weight:650}.intro{color:var(--muted);max-width:42rem;margin:0 0 1.75rem}.alt{background:var(--bg-2);border-block:1px solid var(--line)}.prob{display:grid;gap:1rem}@media (min-width:800px){.prob{grid-template-columns:1fr 1fr}}.prob article{padding:1.5rem;background:var(--card);border:1px solid var(--line)}.prob .code{font-family:"Geist Mono",ui-monospace,monospace;font-size:0.75rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent);margin:0 0 0.6rem}.prob h3{margin:0 0 0.5rem;font-size:1.2rem}.prob p{margin:0;color:var(--muted)}.gets{display:grid;gap:1rem;padding:0;margin:0;list-style:none}@media (min-width:800px){.gets{grid-template-columns:1fr 1fr}}.gets li{background:var(--card);border:1px solid var(--line);padding:1.25rem 1.3rem}.gets h3{margin:0 0 0.4rem;font-size:1.05rem}.gets p{margin:0;color:var(--muted)}.mods{display:grid;gap:1rem}@media (min-width:800px){.mods{grid-template-columns:1fr 1fr}}.mods article{background:var(--card);border:1px solid var(--line);padding:1.4rem 1.3rem;display:grid;gap:0.45rem}.mods .tag{font-family:"Geist Mono",ui-monospace,monospace;font-size:0.75rem;color:var(--accent)}.mods h3{margin:0;font-size:1.2rem;letter-spacing:-0.02em}.mods p{margin:0;color:var(--muted)}.mods .more{margin-top:0.4rem}.plans{display:grid;gap:1rem}@media (min-width:900px){.plans{grid-template-columns:repeat(3,1fr);align-items:stretch}}.plan{background:var(--card);border:1px solid var(--line);padding:1.4rem 1.3rem;display:flex;flex-direction:column;gap:0.75rem}.plan.featured{border-color:var(--accent-fill);box-shadow:inset 0 0 0 1px var(--accent-fill)}.plan h3{margin:0;font-size:1.15rem}.plan .price{font-family:"Geist Mono",ui-monospace,monospace;font-size:clamp(1.4rem,3vw,1.85rem);letter-spacing:-0.04em;margin:0;font-weight:650}.plan .price span{display:block;font-size:0.8rem;color:var(--muted);letter-spacing:0;font-weight:500;margin-top:0.25rem}.plan ul{margin:0;padding:0;list-style:none;display:grid;gap:0.45rem;color:var(--muted);flex:1}.plan li{display:flex;align-items:flex-start;gap:0.45rem}.plan li .icon{width:1.05rem;height:1.05rem;margin-top:0.2em;color:var(--accent)}.plan .who{font-size:0.9rem;color:var(--accent);margin:0}.note{font-size:0.9rem;color:var(--muted);margin:1.25rem 0 0}.timeline{margin:0;padding:0;list-style:none;display:grid;gap:0;border-left:2px solid var(--line);margin-left:0.5rem}.timeline li{padding:0 0 1.6rem 1.4rem;position:relative}.timeline li:last-child{padding-bottom:0}.timeline li::before{content:"";position:absolute;left:-0.45rem;top:0.35rem;width:0.75rem;height:0.75rem;background:var(--accent-fill);border-radius:50%}.timeline h3{margin:0 0 0.3rem;font-size:1.1rem}.timeline p{margin:0;color:var(--muted)}.timeline .when{font-family:"Geist Mono",ui-monospace,monospace;font-size:0.8rem;color:var(--accent);display:block;margin-bottom:0.25rem}.works{display:grid;gap:1rem}@media (min-width:800px){.works{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.works{grid-template-columns:repeat(3,1fr)}}.works a{display:block;background:var(--card);border:1px solid var(--line);color:inherit;text-decoration:none;border-radius:2px;overflow:hidden}.works a:hover{border-color:var(--accent-fill)}.works img{width:100%;aspect-ratio:640 / 364;object-fit:cover;object-position:top}.works .cap{padding:0.9rem 1rem 1.05rem}.works strong{display:block;font-weight:650}.works span{color:var(--muted);font-family:"Geist Mono",ui-monospace,monospace;font-size:0.8rem}.contact{display:grid;gap:2rem}@media (min-width:800px){.contact{grid-template-columns:0.9fr 1.1fr}}form{display:grid;gap:1rem;background:var(--card);border:1px solid var(--line);padding:1.4rem}.row{display:grid;gap:1rem}@media (min-width:800px){.row{grid-template-columns:1fr 1fr}}.field{display:grid;gap:0.35rem}label,.check-label{font-weight:600;font-size:0.95rem}input,select,textarea{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);padding:0.65rem 0.7rem;width:100%;min-height:2.75rem;border-radius:2px}textarea{min-height:7.5rem;resize:vertical}input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:var(--danger)}.field-error{color:var(--danger);font-size:0.9rem;margin:0}.form-note{margin:0;color:var(--muted);font-size:0.9rem}address{font-style:normal;color:var(--muted)}address p{margin:0 0 0.45rem}address a{color:var(--accent)}.check{display:flex;gap:0.75rem;align-items:flex-start;font-weight:400}.check input[type="checkbox"]{width:1.25rem;height:1.25rem;min-height:1.25rem;min-width:1.25rem;margin-top:0.25rem;flex-shrink:0;accent-color:var(--accent-fill)}.check .check-text{font-weight:400;color:var(--muted)}.alert{padding:1rem 1.15rem;border:1px solid var(--line);margin:0 0 1.25rem}.alert p{margin:0}.alert-ok{border-color:var(--accent-fill);background:var(--card)}.alert-err{border-color:var(--danger)}.prose{max-width:44rem}.prose p,.prose li{color:var(--muted)}.prose h2{font-size:1.35rem;margin:2rem 0 0.75rem;letter-spacing:-0.02em}.prose h3{font-size:1.1rem;margin:1.5rem 0 0.5rem}.prose ul,.prose ol{padding-left:1.2rem}.prose a{color:var(--accent)}.prose a.btn-primary{color:var(--ink)}.prose a.btn-ghost{color:var(--text)}.page-404{padding:4.5rem 0 5rem}.page-404 h1{font-size:clamp(2.2rem,5vw,3.4rem);letter-spacing:-0.04em;margin:0 0 1rem}.page-404 .code{font-family:"Geist Mono",ui-monospace,monospace;color:var(--accent);margin:0 0 0.75rem}footer{border-top:1px solid var(--line);padding:2rem 0 var(--gutter);font-size:0.9rem;color:var(--muted);background:var(--bg-2)}footer strong{color:var(--text);display:block;margin-bottom:0.5rem}footer p,footer li{margin:0 0 0.3rem}footer ul{list-style:none;padding:0;margin:0}.footer-grid{display:grid;gap:2rem;margin-bottom:1.5rem}@media (min-width:800px){.footer-grid{grid-template-columns:1.3fr 0.8fr}}.footer-nav-label{color:var(--text);font-weight:650;margin:0 0 0.5rem}.footer-nav a{color:var(--accent)}.footer-legal{margin:0;max-width:50rem}.footer-end{display:flex;flex-direction:column;align-items:stretch;gap:1rem 1.5rem}.pecete-ronin{flex:0 0 auto;order:-1;align-self:flex-end;width:6.75rem;margin-left:auto;color:var(--accent);opacity:0.45;cursor:default;line-height:0}.pecete-ronin svg{display:block;width:100%;height:auto;fill:currentColor}@media (min-width:800px){.footer-end{flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between}.footer-end>div{flex:1 1 16rem;min-width:0}.pecete-ronin{order:0;align-self:auto}}.cta-band .actions{margin:0}address .addr-name{color:var(--text);font-weight:650}.actions-after{margin-top:1.75rem;margin-bottom:0}.btn-primary:disabled,.btn-primary[aria-disabled="true"]{background:#B89F2E;color:#1A1400;cursor:not-allowed}.btn-primary:disabled:hover,.btn-primary[aria-disabled="true"]:hover{background:#B89F2E}.turnstile-field{margin-top:0.25rem}.turnstile-label{margin:0;font-weight:600;font-size:0.95rem}.cf-turnstile{min-height:65px}.submit-help{color:var(--muted);font-size:0.9rem;margin:0.35rem 0 0.75rem}.app-feats{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:0.85rem}.app-feats li{display:flex;align-items:flex-start;gap:0.6rem;color:var(--muted)}.app-feats .icon{width:1.15rem;height:1.15rem;margin-top:0.2em;color:var(--accent)}.mods .app-feats{margin-top:0.75rem}.mods .app-feats li{color:var(--muted)}@media (min-width:800px){.hero{padding:4rem 0 3.5rem}section{padding:3.5rem 0}footer{padding:2rem 0 2.5rem}}@media (max-width:799px){section>.wrap>:last-child,.hero>.wrap>:last-child{margin-bottom:0}.page-hero>.wrap>.lead{margin-bottom:4rem}}.cookie-notice a{color:var(--accent)}.table-wrap{overflow-x:auto;margin:1rem 0}.prose table{width:100%;border-collapse:collapse;font-size:0.95rem}.prose th,.prose td{text-align:left;vertical-align:top;padding:0.55rem 0.75rem 0.55rem 0;border-bottom:1px solid var(--line);color:var(--muted)}.prose th{color:var(--text);font-weight:650}.pt-0{padding-top:0!important}.pb-0{padding-bottom:0!important}