/* zenbrook.world · .zen- · v5.4 */
/* L19 Y11 H10 F24 */
:root{--zen-bg:#f4e8e0;--zen-surf:#faf3ee;--zen-ink:#3a2430;--zen-muted:#7a5a68;--zen-accent:#8b4560;--zen-band:#e8d4c8;--zen-inv:#3a2430;--zen-invt:#faf3ee;--zen-on-accent:#ffffff}
*,*::before,*::after{box-sizing:border-box}
.zen-body{margin:0;background:var(--zen-bg);color:var(--zen-ink);font-family:"IBM Plex Sans",Georgia,serif;line-height:1.65;font-size:1.05rem}
.zen-skip{position:absolute;left:-9999px}.zen-skip:focus{left:1rem;top:1rem;z-index:99;background:var(--zen-surf);padding:.5rem 1rem}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;line-height:1.15;font-weight:600;margin:0 0 .75rem}
a{color:var(--zen-accent)}
.zen-brand{font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.05rem,2.4vw,1.45rem);text-decoration:none;color:inherit;font-weight:600}
.zen-cta{display:inline-block;background:var(--zen-accent);color:var(--zen-on-accent);padding:.65rem 1.25rem;text-decoration:none;border:none;font:inherit;cursor:pointer;width:auto;max-width:max-content}
.zen-nav a{color:inherit;text-decoration:none;font-size:.95rem}
.zen-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:4px}
.zen-nav-toggle{display:none;background:transparent;border:1px solid currentColor;color:inherit;padding:.35rem .75rem;font:inherit;cursor:pointer}
.zen-editorial p,.zen-text-essay p,.zen-story-open p,.zen-short-about p,.zen-deep-feature p{margin:0 0 1.05rem}
.zen-contact-form label{display:block;margin-bottom:1rem}
.zen-contact-form input,.zen-contact-form textarea{width:100%;padding:.5rem;border:1px solid var(--zen-band);background:var(--zen-surf);color:var(--zen-ink);font:inherit}
.zen-form-success{display:none;margin-top:1rem;padding:1rem;background:var(--zen-band)}
.zen-form-success.is-visible{display:block}
.zen-footer-contact{margin-bottom:.75rem;font-size:.95rem}
.zen-footer-contact a{color:inherit}
.zen-footer-legal a{margin-right:.75rem;color:var(--zen-muted);font-size:.9rem}
.zen-cookie{position:fixed;z-index:100;background:var(--zen-surf);border:1px solid var(--zen-band);padding:1rem;box-shadow:0 4px 24px rgba(0,0,0,.12);display:none;left:1rem;bottom:1rem;max-width:22rem;color:var(--zen-ink)}
.zen-cookie.is-visible{display:block}
.zen-cookie-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}
.zen-cookie button{font:inherit;cursor:pointer;padding:.45rem .85rem;border:1px solid var(--zen-band);background:var(--zen-bg);color:var(--zen-ink)}
.zen-cookie .zen-btn-accept{background:var(--zen-accent);color:var(--zen-on-accent);border-color:var(--zen-accent)}
.zen-cookie .zen-btn-decline,.zen-cookie .zen-btn-settings,.zen-cookie .zen-btn-save-settings{background:var(--zen-bg);color:var(--zen-ink);border-color:var(--zen-band)}
.zen-btn-accept{background:var(--zen-accent);color:var(--zen-on-accent);border-color:var(--zen-accent)}
.zen-page-hero{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--zen-band)}
.zen-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;color:var(--zen-muted);margin:0}
.zen-inner{padding:clamp(1rem,4vw,2.5rem);max-width:min(54rem,94vw);margin:0 auto}
.zen-inner .zen-editorial{max-width:42rem}
@media (prefers-reduced-motion:reduce){.zen-body *{animation:none!important;transition:none!important}}
.zen-h-announce{display:block;padding:0}.zen-marquee{margin:0;padding:.4rem 1rem;background:var(--zen-inv);color:var(--zen-invt);font-size:.85rem;text-align:center}.zen-header-main{display:flex;justify-content:space-between;padding:1rem 1.5rem;align-items:center;flex-wrap:wrap;gap:1rem}.zen-nav{display:flex;gap:1rem;flex-wrap:wrap}@media(max-width:820px){.zen-nav-toggle{display:inline-block}.zen-nav{display:none;width:100%;flex-direction:column}.zen-nav.is-open{display:flex}.zen-dock-row,.zen-nav-left{display:none}}.zen-home{max-width:40rem;margin:0 auto;padding:1.5rem}.zen-menu-board{background:var(--zen-inv);color:var(--zen-invt);padding:2rem;margin-bottom:2rem}.zen-price-board{list-style:none;padding:0}.zen-price-board li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px dashed rgba(255,255,255,.25)}.zen-booking{text-align:center;margin:2rem 0}.zen-hero-frame{padding:2rem}.zen-frame-inner{border:3px solid var(--zen-ink);padding:2.5rem;max-width:40rem;margin:0 auto}.zen-footer{padding:2rem clamp(1rem,4vw,2.5rem);border-top:1px solid var(--zen-band);background:var(--zen-surf);margin-top:3rem}.zen-footer-band{background:var(--zen-band);padding:2rem 1.5rem}