:root{--ink:light-dark(#16281e,#eef5ef);--text:light-dark(#3f5348,#b2c4b7);--muted:light-dark(#586b60,#8ba392);--bg:light-dark(#f3f8f0,#0f1512);--bg-soft:light-dark(#e6f0e1,#161f1a);--surface:light-dark(#fff,#18221c);--border:light-dark(#c3d6bc,#2a382f);--accent:light-dark(#277950,#7ad3a3);--accent-hover:light-dark(#1d6440,#95e0b6);--accent-contrast:light-dark(#fff,#0c1a13);--accent-rgb:39 121 80;--accent-soft:light-dark(#2779501a,#7ad3a324);--amber:light-dark(#a05724,#e8a66a);--danger:light-dark(#a8402f,#ef7a68);--ok:light-dark(#277950,#7ad3a3);--shadow:0 14px 34px -20px light-dark(#16281e57,#000000b3);--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--serif:ui-serif, Georgia, "Times New Roman", serif;--radius:10px;color-scheme:light dark;font:400 16px / 1.6 var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{min-height:100svh;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{color:var(--ink);font-family:var(--serif);letter-spacing:-.01em;font-weight:500;line-height:1.15}h1{margin:0 0 .7rem;font-size:clamp(2rem,4.5vw,3.1rem)}h2{margin:0 0 .6rem;font-size:1.6rem}h3{margin:0 0 .4rem;font-size:1.15rem}p{margin:0 0 .8rem}.site-header{z-index:20;border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:1.4rem;padding:.8rem 1.4rem;display:flex;position:sticky;top:0}.site-brand{color:var(--ink);align-items:center;gap:.6rem;display:flex}.site-brand:hover{text-decoration:none}.brand-mark{width:2rem;height:2rem;color:var(--accent);flex:none}.site-brand-text{flex-direction:column;line-height:1.15;display:flex}.site-brand-name{font-family:var(--serif);font-size:1.15rem;font-weight:500}.site-brand-sub{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:.66rem}.site-nav{gap:1.3rem;font-size:.94rem;display:flex}.site-nav a{color:var(--text)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent);text-decoration:none}.site-spacer{flex:1}.site-actions{align-items:center;gap:.7rem;display:flex}.site-phone{color:var(--ink);white-space:nowrap;font-weight:600}.site-name{color:var(--text)}.site-main{flex-direction:column;flex:1;display:flex}.band{border-bottom:1px solid var(--border);padding:3.4rem 0}.band-soft{background:var(--bg-soft)}.inner{width:min(72rem,100% - 2.6rem);margin-inline:auto}.band-head{align-items:baseline;gap:1rem;margin-bottom:1.6rem;display:flex}.band-head h2{margin:0}.band-note{color:var(--muted);font-size:.92rem}.hero{background:var(--bg-soft);align-items:flex-end;min-height:min(78svh,40rem);display:flex;position:relative;overflow:hidden}.hero-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(#0c141075 0%,#0c14109e 55%,#0c1410d1 100%);position:absolute;inset:0}.hero-copy{z-index:1;color:#f4f1e8;width:min(72rem,100% - 2.6rem);margin:0 auto;padding:3rem 0;position:relative}.hero-copy h1{color:#fffdf7;max-width:18ch}.hero-eyebrow{color:#cfe0d3;letter-spacing:.2em;text-transform:uppercase;margin:0 0 1rem;font-size:.76rem;font-weight:600}.hero-lead{color:#e6e2d6;max-width:46ch;margin:0 0 1.6rem;font-size:1.06rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.hero-facts{border-top:1px solid #ffffff38;flex-wrap:wrap;gap:2.2rem;margin-top:2.4rem;padding-top:1.4rem;display:flex}.hero-fact strong{font-family:var(--serif);color:#fffdf7;font-size:1.5rem;font-weight:500;display:block}.hero-fact span{color:#cfe0d3;font-size:.84rem}.stays-shell{flex-wrap:wrap;justify-content:center;align-items:center;display:flex;position:relative}.stays,.stays-dots{flex:0 0 100%}.stays{scroll-snap-type:x mandatory;scrollbar-width:none;gap:1.4rem;display:flex;overflow-x:auto}.stays::-webkit-scrollbar{display:none}.stays:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.stays>*{scroll-snap-align:start;flex:0 0 100%}.stays-arrow{z-index:2;border:1px solid var(--border);background:var(--surface);width:2.9rem;height:2.9rem;color:var(--ink);cursor:pointer;box-shadow:var(--shadow);border-radius:999px;place-items:center;padding:0;display:grid;position:absolute;top:50%;translate:0 -50%}.stays-arrow-prev{left:.8rem}.stays-arrow-next{right:.8rem}.stays-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.stays-arrow:disabled{color:var(--muted);cursor:default;opacity:.4}.stays-dots{justify-content:center;gap:.5rem;margin-top:1.2rem;display:flex}.stays-dot{cursor:pointer;background:0 0;border:0;width:1.5rem;height:1.5rem;padding:0}.stays-dot:after{content:"";background:var(--border);border-radius:999px;width:.5rem;height:.5rem;margin:0 auto;transition:background .2s,width .2s;display:block}.stays-dot[aria-selected=true]:after{background:var(--accent);width:1.4rem}@media (prefers-reduced-motion:reduce){.stays{scroll-behavior:auto}.stays-dot:after{transition:none}}.stay{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);display:grid;overflow:hidden}.stay-shot{background:var(--bg-soft);min-height:15rem;position:relative}.stay-shot img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.stay-shot-empty{border-right:1px solid var(--border);color:var(--muted);place-items:center;font-size:.82rem;display:grid;position:absolute;inset:0}.stay-body{flex-direction:column;gap:.7rem;padding:1.8rem 2rem;display:flex}.stay-body h3{font-size:1.7rem}.stay-kind{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:600}.stay h3{margin:0}.stay-blurb{color:var(--text);margin:0;font-size:.93rem}.stay-meta{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.stay-meta li{border:1px solid var(--border);color:var(--text);border-radius:999px;padding:.16rem .55rem;font-size:.78rem}.stay-foot{border-top:1px solid var(--border);align-items:baseline;gap:.8rem;margin-top:auto;padding-top:.6rem;display:flex}.stay-price{font-family:var(--serif);color:var(--ink);font-size:1.3rem}.stay-price span{color:var(--muted);font-family:var(--sans);font-size:.82rem}.stay-foot .btn{margin-left:auto}@media (width<=860px){.stay{grid-template-columns:1fr}.stay-shot{aspect-ratio:4/3;min-height:0}.stay-shot-empty{border-right:0}.stay-body{padding:1.2rem 1.3rem 1.4rem}.stays-arrow{width:2.6rem;height:2.6rem;box-shadow:none;position:static;translate:0}.stays-arrow-prev{order:1}.stays-dots{flex:0 auto;order:2;margin:0 .4rem}.stays-arrow-next{order:3}.stays-shell{gap:.3rem;padding-top:1.2rem}.stays{order:0}}.events{flex-direction:column;gap:.9rem;display:flex}.event{border:1px solid var(--border);border-left:3px solid var(--amber);border-radius:var(--radius);background:var(--surface);align-items:flex-start;gap:1.2rem;padding:1rem 1.2rem;display:flex}.event-date{text-align:center;width:3.6rem;color:var(--amber);font-family:var(--serif);flex:none;line-height:1.1}.event-date strong{font-size:1.7rem;font-weight:500;display:block}.event-date span{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.event-body h3{margin:0 0 .2rem}.event-body p{color:var(--text);margin:0;font-size:.93rem}.event-place{color:var(--muted);margin-top:.3rem;font-size:.84rem;display:block}.event-tail{flex:none;margin-left:auto}.booking{grid-template-columns:minmax(0,32rem) minmax(0,1fr);align-items:start;gap:2.4rem;display:grid}.route h3{margin:0 0 .9rem}.route-sketch{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;height:auto;color:var(--muted);margin-bottom:1.2rem;display:block}.route-label{fill:var(--muted);font-family:var(--sans);letter-spacing:.04em;font-size:9px}.route-water{fill:var(--accent-soft)}.route-pine{fill:var(--accent)}.route-pin{fill:var(--amber)}.route-pin-dot{fill:var(--surface)}.route-ways{gap:.7rem;margin:0 0 1rem;display:grid}.route-ways dt{color:var(--ink);font-size:.9rem;font-weight:600}.route-ways dd{color:var(--text);margin:.1rem 0 0;font-size:.92rem}.route-address{border-top:1px solid var(--border);color:var(--muted);margin:0;padding-top:.9rem;font-size:.88rem}@media (width<=900px){.booking{grid-template-columns:1fr;gap:1.8rem}}.booking-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:1.4rem 1.5rem 1.5rem}.field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.8rem;display:grid}@media (width<=430px){.field-row{grid-template-columns:1fr;gap:0}}.booking-total{border-top:1px solid var(--border);font-family:var(--serif);color:var(--ink);align-items:baseline;gap:.6rem;margin:.6rem 0 1rem;padding-top:.8rem;font-size:1.25rem;display:flex}.booking-total span{color:var(--muted);font-family:var(--sans);font-size:.86rem}.booked{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);padding:1.6rem 1.5rem}.booked strong{font-family:var(--serif);color:var(--ink);font-size:1.3rem}.availability{color:var(--muted);align-items:center;gap:.45rem;margin:-.3rem 0 .9rem;font-size:.87rem;display:flex}.availability:before{content:"";background:var(--ok);border-radius:999px;flex:none;width:.5rem;height:.5rem}.availability.busy{color:var(--danger)}.availability.busy:before{background:var(--danger)}.page{flex-direction:column;gap:1.2rem;width:min(72rem,100% - 2.6rem);margin:2rem auto 3rem;display:flex}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:1.4rem 1.5rem}.auth-card{width:min(26rem,100% - 2.6rem);margin:2.5rem auto}.muted{color:var(--muted)}.error{color:var(--danger);font-size:.9rem}.notice{color:var(--ok);font-size:.9rem}.cell-sub{color:var(--muted);font-size:.87rem}.auth-alt{text-align:center;margin:.9rem 0 .4rem;font-size:.9rem}.list{flex-direction:column;margin:.4rem 0;padding:0;list-style:none;display:flex}.list>li{border-bottom:1px solid var(--border);padding:.7rem 0}.list>li:last-child{border-bottom:0}.row-between{justify-content:space-between;align-items:center;gap:1rem;display:flex}.row-tail{flex:none;align-items:center;gap:.5rem;display:flex}[data-inactive=true]{opacity:.55}.badge{border:1px solid var(--border);background:var(--bg-soft);color:var(--muted);white-space:nowrap;border-radius:999px;padding:.1rem .55rem;font-size:.78rem}.badge-ok{border-color:var(--ok);color:var(--ok)}.badge-off{border-color:var(--danger);color:var(--danger)}.badge-new{border-color:var(--amber);color:var(--amber)}.field{flex-direction:column;gap:.3rem;margin-bottom:.8rem;display:flex}.field label{color:var(--muted);font-size:.85rem}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--bg);width:100%;min-width:0;color:var(--ink);border-radius:8px;padding:.55rem .65rem}textarea{resize:vertical;min-height:5rem}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.adder{border-top:1px solid var(--border);flex-direction:column;gap:.4rem;margin-top:1rem;padding-top:1rem;display:flex}.role-select{width:auto;padding:.25rem .4rem;font-size:.85rem}.btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;padding:.5rem 1rem;display:inline-block}.btn:hover{border-color:var(--accent);text-decoration:none}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-lg{padding:.7rem 1.5rem;font-size:1.02rem}.btn-sm{padding:.25rem .7rem;font-size:.85rem}.btn-block{text-align:center;width:100%;display:block}.btn-ghost{color:#fffdf7;background:0 0;border-color:#ffffff73}.btn-ghost:hover{background:#ffffff1f;border-color:#fffdf7}.link-btn{width:auto;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.site-footer{border-top:1px solid var(--border);background:var(--bg-soft);color:var(--muted);padding:1.6rem 0 2.2rem;font-size:.88rem}.site-footer-inner{flex-wrap:wrap;align-items:baseline;gap:.6rem 1.8rem;width:min(72rem,100% - 2.6rem);margin-inline:auto;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:1.6rem;height:1.6rem;margin:3rem auto;animation:.8s linear infinite spin}@keyframes spin{to{rotate:360deg}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.site-burger{border:1px solid var(--border);background:var(--surface);width:2.2rem;height:2.2rem;color:var(--ink);cursor:pointer;border-radius:999px;padding:0;display:none}.site-burger svg{width:1.1rem;height:1.1rem}.site-scrim{z-index:40;cursor:pointer;background:light-dark(#1d2a2352,#00000094);border:0;position:fixed;inset:0}.site-menu{z-index:41;border-bottom:1px solid var(--border);background:var(--bg);box-shadow:var(--shadow);flex-direction:column;gap:.9rem;padding:1.1rem 1.4rem 1.3rem;display:flex;position:absolute;top:100%;left:0;right:0}.site-menu a:not(.btn),.site-menu .link-btn{color:var(--ink);text-align:left;font-size:.98rem}.site-menu a[aria-current=page]{color:var(--accent)}.site-menu .btn{text-align:center}.site-menu .btn-primary{color:var(--accent-contrast)}.site-menu-phone{font-weight:600}@media (width<=1020px){.site-header{gap:.8rem}.site-nav,.site-actions .site-phone{display:none}.site-burger{place-items:center;display:grid}}@media (width<=620px){.site-actions .btn-primary,.site-actions .site-name{display:none}}.grounds{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.6rem 2.4rem;display:grid}.ground h3{border-top:2px solid var(--accent);margin:0 0 .4rem;padding-top:.9rem}.ground p{margin:0;font-size:.95rem}.demo-logins{border-top:1px solid var(--border);margin-top:1.2rem;padding-top:1rem}.demo-logins p{margin:0 0 .6rem;font-size:.85rem}.demo-login{text-align:left;white-space:normal;flex-direction:column;gap:.1rem;margin-bottom:.4rem;display:flex}.demo-login .cell-sub{font-size:.78rem}._toggle_11ska_1{width:32px;height:32px;color:inherit;cursor:pointer;opacity:.8;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background-color .15s,opacity .15s;display:inline-flex}._toggle_11ska_1:hover{opacity:1;background:light-dark(#0000000f,#ffffff1f)}._toggle_11ska_1:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
