@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Libre+Franklin:wght@400;500;600&display=swap');
:root {
  --mo-bg:#f3f7f6; --mo-fg:#1c2b2a; --mo-muted:#5f726f; --mo-accent:#1f8a8a;
  --mo-panel:#dfecea; --mo-line:#b7cdc9;
  --mo-display:"Archivo Black", Georgia, serif;
  --mo-body:"Libre Franklin", Georgia, serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body.mo-body{margin:0;font-family:var(--mo-body);background:var(--mo-bg);color:var(--mo-fg);line-height:1.65}
a{color:var(--mo-accent);text-decoration-thickness:1px}
a:hover{opacity:.85}
img{display:none}
.mo-btn{appearance:none;border:1px solid var(--mo-accent);background:var(--mo-accent);color:var(--mo-bg);padding:.75rem 1.2rem;font:inherit;cursor:pointer}
.mo-btn-ghost{background:transparent;color:var(--mo-fg);border-color:var(--mo-line)}
.mo-form{display:grid;gap:1rem;max-width:32rem}
.mo-form label{display:grid;gap:.35rem;font-size:.92rem}
.mo-form input,.mo-form textarea{font:inherit;padding:.7rem .8rem;border:1px solid var(--mo-line);background:var(--mo-panel);color:var(--mo-fg)}
.mo-form-success{color:var(--mo-accent);font-weight:600}
.mo-contact-block p{margin:.25rem 0}
.mo-skip{position:absolute;left:-999px}
.mo-skip:focus{left:1rem;top:1rem;background:var(--mo-panel);padding:.5rem;z-index:100}

.mo-header{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--mo-line)}
.mo-brand-stack{font-family:var(--mo-display);font-size:1.5rem;line-height:1.1;max-width:8rem}
.mo-brand-stack a{color:inherit;text-decoration:none}
.mo-nav-row{display:none;flex-wrap:wrap;gap:.8rem}
.mo-nav-row a{color:var(--mo-fg);text-decoration:none;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}
.mo-menu-btn{margin-left:auto;border:1px solid var(--mo-line);background:var(--mo-panel);padding:.45rem .8rem}
.mo-nav-panel{position:fixed;inset:0;background:var(--mo-bg);z-index:40;display:none;flex-direction:column;justify-content:center;align-items:center;gap:1.2rem}
.mo-nav-panel[data-open="true"]{display:flex}
.mo-nav-panel a{font-family:var(--mo-display);font-size:1.8rem;color:var(--mo-fg);text-decoration:none}
@media(min-width:880px){.mo-nav-row{display:flex}.mo-menu-btn{display:none}}
.mo-manifesto{padding:3rem 1.25rem 2rem;max-width:40rem}
.mo-over{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;color:var(--mo-muted)}
.mo-brand-hero{font-family:var(--mo-display);font-size:clamp(3rem,10vw,6rem);line-height:.95;margin:.4rem 0}
.mo-bleed{background:var(--mo-accent);color:#f3f7f6;padding:2.5rem 1.25rem;font-family:var(--mo-display);font-size:clamp(1.4rem,4vw,2.4rem)}
.mo-accordion{padding:2rem 1.25rem;max-width:40rem}
.mo-accordion details{border-bottom:1px solid var(--mo-line);padding:1rem 0}
.mo-accordion summary{font-family:var(--mo-display);font-size:1.3rem;cursor:pointer}
.mo-areas,.mo-booking{padding:2rem 1.25rem}
.mo-side-ann{font-size:.85rem;color:var(--mo-muted);border-left:2px solid var(--mo-accent);padding-left:.8rem;margin:1rem 0}
.mo-footer{padding:1.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:flex-end}
.mo-endrule{display:flex;align-items:center;gap:1rem;margin:0;font-size:.85rem}
.mo-endrule span{flex:1;height:1px;background:var(--mo-line);display:block;min-width:4rem}
.mo-page{padding:2rem 1.25rem;max-width:42rem}
.mo-page h1{font-family:var(--mo-display)}
.mo-form:focus-within{outline:2px solid var(--mo-accent);outline-offset:4px}

.mo-cookie{position:fixed;z-index:90;max-width:24rem}
.mo-cookie-inner{padding:1rem 1.1rem;border:1px solid var(--mo-line)}
.mo-cookie-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}
.mo-cookie-settings{display:grid;gap:.5rem;margin-top:.75rem}
.mo-cookie-text{margin:0;font-size:.9rem}
.mo-cookie{bottom:0;left:0;right:0;max-width:none}.mo-cookie-inner{background:var(--mo-panel);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--mo-line)}