:root{--bg:#14110e;--fg:#f4ede3;--mut:#c4baad;--acc:#e08a6f;--btn:#a8452d;--card:rgba(26,21,17,.9);--line:#3a322b;color-scheme:dark;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 Inter,system-ui,sans-serif}h1,h2,h3{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;margin:0}h1,h2,.sub,header p{text-shadow:0 1px 14px rgba(0,0,0,.6)}a{color:inherit}:focus-visible{outline:2px solid var(--acc);outline-offset:3px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;background:#1c1611}.bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#120d0966;pointer-events:none}.bg img,.bg i{position:absolute;object-fit:cover;display:block;border-radius:4px;box-shadow:0 10px 34px #0000008c}nav{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;max-width:1000px;margin:0 auto}nav a{text-decoration:none;margin-left:16px;font-size:14px}nav button{background:none;border:1px solid var(--line);color:var(--fg);border-radius:20px;padding:4px 12px;cursor:pointer;margin-left:16px;font:inherit}.logo{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:600}section,header,footer{max-width:1000px;margin:0 auto;padding:56px 22px}header{text-align:center;padding:96px 22px 72px}header h1{font-size:clamp(40px,8vw,72px);line-height:1.05}header p{color:var(--mut);max-width:560px;margin:18px auto 28px;font-size:18px}h2{font-size:36px;margin-bottom:8px}.sub{color:var(--mut);margin:0 0 28px}.btn{display:inline-block;background:var(--btn);color:#fff;padding:12px 26px;border-radius:30px;text-decoration:none;border:0;font:inherit;cursor:pointer}.btn:disabled{opacity:.6;cursor:wait}.btn.small{padding:8px 18px;font-size:14px}.menus{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}.mc{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:6px}.mc h3{font-size:24px}.pr{color:var(--acc);font-weight:500}.mc ul{list-style:none;margin:6px 0 12px;padding:0;font-size:14px;color:var(--mut);flex:1}.mc li{padding:3px 0}.mc li b{color:var(--fg);font-weight:500}.extras{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:22px}.ex{border:1px dashed var(--acc);border-radius:12px;padding:14px 18px;background:#00000059}.ex b{display:block}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.tile{margin:0;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}.ph{width:100%;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-size:42px;object-fit:cover}figcaption{padding:14px 16px}figcaption h3{font-size:22px}figcaption p{margin:4px 0 0;color:var(--mut);font-size:14px}.about{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.about div{border-top:2px solid var(--acc);padding-top:12px;background:#0000004d}.about h3{font-size:22px}.form{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.form.ok{display:block}.full{grid-column:1/-1}.stack{display:grid;gap:12px}label{display:grid;gap:4px;font-size:14px;color:var(--mut)}input,select,textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg);max-width:100%}textarea{min-height:100px}.modes{display:flex;gap:10px;flex-wrap:wrap}.modes label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;color:var(--fg);cursor:pointer;flex:1;min-width:200px}.chk{display:flex;align-items:center;gap:8px}.note{font-size:13px;color:var(--mut)}.err{color:#ff9d8a}footer{text-align:center;color:var(--mut);font-size:14px;border-top:1px solid var(--line)}@media (max-width:560px){.form{grid-template-columns:1fr}nav a{display:none}}
