:root{--ink:#15342f;--forest:#0d3b35;--cream:#f5f0e6;--sun:#f2b862;--paper:#fffdf8;--muted:#687a76;--line:#d9dfda;--blue:#3478f6;--red:#ff5a5f;--shadow:0 18px 60px rgba(15,48,42,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}.topbar{height:82px;display:flex;align-items:center;gap:34px;padding:0 clamp(20px,5vw,80px);position:sticky;top:0;background:rgba(255,253,248,.94);backdrop-filter:blur(18px);z-index:20;border-bottom:1px solid rgba(21,52,47,.08)}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-family:Georgia,serif;font-size:20px;line-height:1.05;margin-right:auto}.brand small{display:block;font:10px/1.4 Inter,sans-serif;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-top:4px}.brand-mark{width:42px;height:42px;border-radius:50% 50% 48% 52%;display:grid;place-items:center;background:var(--forest);color:var(--sun);font:700 14px Inter}.public-nav{display:flex;gap:28px}.public-nav a{color:var(--ink);text-decoration:none;font-size:14px}.mode-switch,.secondary{border:1px solid var(--line);background:white;padding:10px 16px;border-radius:999px;color:var(--ink);cursor:pointer;font-weight:650}.mode-switch:hover,.secondary:hover{border-color:var(--forest)}.hero{min-height:calc(100vh - 82px);position:relative;display:flex;align-items:flex-end;padding:clamp(30px,7vw,100px);overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,34,28,.8),rgba(5,34,28,.2) 65%),linear-gradient(0deg,rgba(5,34,28,.55),transparent 55%)}.hero-copy{position:relative;color:white;max-width:650px;margin-bottom:48px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800;color:var(--sun);margin:0 0 15px}.eyebrow.dark{color:#9a651f}.hero h1{font:clamp(56px,9vw,116px)/.85 Georgia,serif;letter-spacing:-.055em;margin:0 0 28px}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:490px}.primary{display:inline-block;border:0;background:var(--sun);color:#173b34;padding:14px 22px;border-radius:6px;text-decoration:none;font-weight:800;cursor:pointer;margin-top:12px}.primary:hover{filter:brightness(.96);transform:translateY(-1px)}.quick-facts{position:absolute;right:clamp(30px,6vw,90px);bottom:44px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;color:white}.quick-facts span{display:flex;align-items:baseline;gap:7px;min-width:150px}.quick-facts b{font:30px Georgia,serif;color:var(--sun)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:100px clamp(24px,8vw,130px);align-items:end}.intro h2,.availability h2,.surroundings h2,.admin h1,.admin h2{font:clamp(34px,5vw,62px)/1 Georgia,serif;margin:0}.intro>p{font:20px/1.7 Georgia,serif;margin:0}.gallery{padding:0 clamp(18px,4vw,60px) 100px;display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:320px 320px;gap:18px}.gallery figure{margin:0;position:relative;overflow:hidden;border-radius:4px}.gallery .wide{grid-row:1/3}.gallery img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery figure:hover img{transform:scale(1.02)}.gallery figcaption{position:absolute;left:18px;bottom:16px;background:rgba(255,255,255,.88);padding:8px 12px;border-radius:3px;font-size:13px;font-weight:700}.availability{display:grid;grid-template-columns:1.5fr .65fr;gap:26px;padding:100px clamp(24px,8vw,130px);background:var(--cream)}.calendar-card,.booking-card,.agenda-panel,.sync-panel,.checklist{background:white;border-radius:12px;padding:32px;box-shadow:var(--shadow)}.calendar-head,.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.month-controls{display:flex;align-items:center;gap:16px}.month-controls button,.icon-button{border:1px solid var(--line);background:white;border-radius:50%;width:38px;height:38px;cursor:pointer}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.weekdays{margin-top:30px;color:var(--muted);font-size:12px;text-align:center}.calendar-grid button{aspect-ratio:1;border:0;background:transparent;border-radius:50%;color:var(--ink);cursor:pointer}.calendar-grid button:hover:not(:disabled){background:#e9f0ed}.calendar-grid button:disabled{color:#aab4b1;text-decoration:line-through;background:#f1f0ed;cursor:not-allowed}.calendar-grid .selected{background:var(--forest)!important;color:white}.calendar-grid .empty{pointer-events:none}.legend{display:flex;gap:20px;margin-top:25px;font-size:12px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:50%;border:1px solid var(--line)}.legend .busy{background:#e5e4e0}.legend .selected{background:var(--forest)}.booking-card{background:var(--forest);color:white}.booking-card h3{font:34px/1.1 Georgia,serif;margin:0 0 24px}.booking-card label,dialog label{display:block;font-size:12px;font-weight:700;margin:15px 0}.booking-card input,.booking-card select,dialog input,dialog textarea{display:block;width:100%;padding:12px;margin-top:6px;border-radius:5px;border:1px solid rgba(255,255,255,.2);background:white;color:var(--ink)}.full{width:100%;text-align:center}.micro{font-size:11px;color:#c4d1ce;text-align:center}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;padding:90px clamp(24px,8vw,130px)}.features article span{font-size:36px;color:#a96d22}.features h3{font:26px Georgia,serif;margin:12px 0}.features p{color:var(--muted)}.surroundings{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;background:var(--forest);color:white;padding:90px clamp(24px,8vw,130px)}.surroundings>div>p:last-child{font:19px/1.7 Georgia,serif;color:#d4dfdc}.distance-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.distance-list span{border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:20px;display:flex;flex-direction:column}.distance-list b{color:var(--sun);font-size:24px}.admin{min-height:calc(100vh - 82px);background:#f3f6f4;padding:50px clamp(22px,6vw,90px) 90px}.admin-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.admin-title p:last-child{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stats article{background:white;padding:22px;border:1px solid #e1e7e3;border-radius:10px;display:flex;flex-direction:column}.stats span,.stats small{font-size:12px;color:var(--muted)}.stats b{font:25px Georgia,serif;margin:8px 0}.stats .ok{color:#16745a}.admin-grid{display:grid;grid-template-columns:1.5fr .75fr;gap:18px;margin-top:18px}.agenda-panel h2,.sync-panel h2,.checklist h2{font-size:32px}.agenda-item{display:grid;grid-template-columns:60px 1fr 36px;gap:17px;align-items:center;padding:22px 0;border-top:1px solid var(--line)}.agenda-item:first-of-type{margin-top:20px}.date{width:54px;height:58px;border-radius:7px;background:#edf3f0;display:flex;flex-direction:column;align-items:center;justify-content:center}.date b{font-size:20px}.date span{font-size:10px;letter-spacing:.15em}.agenda-item p{margin:4px 0;color:var(--muted);font-size:13px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags em{font-style:normal;font-size:10px;background:#f3f0e8;padding:3px 7px;border-radius:20px}.check{border:1px solid var(--line);border-radius:50%;background:white;width:32px;height:32px;color:var(--muted)}.channel{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.channel i{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;color:white;font-style:normal;font-weight:900}.airbnb-dot{background:var(--red)}.booking-dot{background:var(--blue)}.direct-dot{background:var(--forest)}.channel small{display:block;color:var(--muted);font-size:10px}.channel>span{font-size:10px;color:#16745a;background:#e5f3ed;padding:4px 7px;border-radius:20px}.sync-panel .secondary{margin-top:22px}.sync-note{font-size:11px;color:var(--muted)}.checklist{margin-top:18px;display:grid;grid-template-columns:.65fr 1.35fr;gap:40px}.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checklist-grid label{border:1px solid var(--line);border-radius:6px;padding:12px;font-size:13px}.checklist-grid input{accent-color:var(--forest)}dialog{border:0;border-radius:14px;padding:0;box-shadow:var(--shadow);width:min(92vw,480px)}dialog::backdrop{background:rgba(9,36,31,.55);backdrop-filter:blur(3px)}dialog form{padding:34px;position:relative}dialog h2{font:36px Georgia,serif;margin:0 0 22px}dialog textarea{min-height:90px;resize:vertical}.close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:28px;color:var(--muted)}footer{padding:26px clamp(22px,6vw,90px);display:flex;justify-content:space-between;gap:20px;background:#092f2a;color:white}footer small{color:#a9bcb7;text-align:right}@media(max-width:900px){.public-nav{display:none}.hero{align-items:center}.quick-facts{left:24px;right:24px;bottom:22px}.intro,.availability,.surroundings,.admin-grid,.checklist{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;grid-template-rows:360px 260px 260px}.gallery .wide{grid-row:auto}.features,.stats{grid-template-columns:1fr 1fr}.admin-title{align-items:flex-start}.distance-list{margin-top:10px}}@media(max-width:600px){.topbar{height:70px;padding:0 15px}.brand{font-size:16px}.brand-mark{width:36px;height:36px}.mode-switch{padding:9px 11px;font-size:12px}.hero{min-height:720px;padding:30px 22px 180px}.hero h1{font-size:58px}.quick-facts{grid-template-columns:1fr 1fr}.quick-facts span{min-width:0;font-size:12px}.intro{padding:70px 22px}.intro>p{font-size:18px}.gallery{padding:0 12px 70px}.availability,.features,.surroundings,.admin{padding:60px 18px}.calendar-card,.booking-card,.agenda-panel,.sync-panel,.checklist{padding:22px}.calendar-head{display:block}.month-controls{margin-top:20px;justify-content:space-between}.features,.stats{grid-template-columns:1fr}.admin-title{display:block}.admin-title .secondary{margin-top:15px}.checklist-grid{grid-template-columns:1fr}.agenda-item{grid-template-columns:52px 1fr}.agenda-item .check{display:none}footer{display:block}footer small{display:block;text-align:left;margin-top:8px}}
