@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#233037;background:#faf9f7;--ink:#233037;--muted:#7c8587;--line:#e5e8e5;--accent:#126c63;--cream:#f3f0e9}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.container{width:min(1120px,calc(100% - 40px));margin:auto}.nav{height:80px;display:flex;justify-content:space-between;align-items:center}.logo{font-family:Manrope,sans-serif;font-size:18px;font-weight:800;letter-spacing:.12em}.logo small{display:block;font-size:9px;font-weight:600;letter-spacing:.25em;color:var(--muted);margin-top:3px}.navlinks{display:flex;gap:28px;align-items:center;font-size:13px}.navlinks a:hover{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--ink);border-radius:13px;padding:13px 20px;background:var(--ink);color:#fff;font-weight:700;font-size:13px;transition:.2s}.btn:hover{opacity:.88;transform:translateY(-1px)}.btn.outline{background:#fff;color:var(--ink);border-color:var(--line)}.btn.green{background:var(--accent);border-color:var(--accent)}.btn:disabled{opacity:.55;cursor:not-allowed}.hero{display:grid;grid-template-columns:1fr 1.05fr;min-height:590px;align-items:center;gap:45px;padding-bottom:40px}.eyebrow{text-transform:uppercase;letter-spacing:.21em;font-size:11px;font-weight:800;color:var(--accent)}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.18;letter-spacing:-.05em}h1{font-size:clamp(40px,5vw,74px);margin:24px 0}h2{font-size:clamp(28px,3vw,43px);margin:12px 0 20px}h3{font-size:21px}p{line-height:1.75;color:#677274}.lead{font-size:17px;max-width:480px}.heroimg{min-height:525px;border-radius:28px;background:linear-gradient(135deg,#dee6e1,#f0e8d9);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.placeholder{border:1px dashed #a6b5b5;border-radius:20px;margin:25px;padding:25px;color:#56706d;text-align:center;max-width:370px}.placeholder svg{width:64px;height:64px}.pill{display:inline-flex;gap:7px;border:1px solid var(--line);padding:9px 13px;border-radius:99px;font-size:12px;background:#fff}.features{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.section{padding:84px 0}.section.alt{background:#f2f4f0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.featurecard{padding:25px;border-radius:20px;background:white;border:1px solid var(--line)}.featurecard b{display:block;margin-top:10px}.featurecard span{font-size:13px;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.garden{min-height:350px;border-radius:25px;background:linear-gradient(130deg,#cbd8cb,#e8e1d0);display:flex;align-items:center;justify-content:center}.card{background:#fff;border:1px solid var(--line);border-radius:23px;padding:28px;box-shadow:0 18px 45px #21302d0c}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;font-weight:700;color:#566365}.field input,.field select,.field textarea{border:1px solid #dce1df;border-radius:12px;padding:12px;background:white;min-width:0;width:100%;color:var(--ink)}.field input:focus,.field select:focus{outline:2px solid #7dbeb4}.full{grid-column:1/-1}.notice{padding:12px 15px;border-radius:10px;background:#eef6f2;color:#38695e;font-size:13px}.error{background:#fff1ee;color:#a54d40}.price{background:#f3f7f5;padding:20px;border-radius:16px;margin-top:20px}.price strong{font-size:31px;font-family:Manrope}.price .detail{font-size:12px;color:#66736d}.photo-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:13px;min-height:240px}.photo-grid>div{background:#e8ede9;border:1px dashed #becbc3;border-radius:16px;display:grid;place-items:center;color:#7c9287;text-align:center;padding:15px;font-size:13px}.photo-grid img{width:100%;height:100%;object-fit:cover;border-radius:16px}.footer{background:#1d3033;color:white;padding:55px 0}.footer p{color:#b5c2bf}.admin-shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{background:#1d3033;color:#fff;padding:30px 16px}.sidebar .logo{padding:15px 14px 30px}.sidebar button{background:transparent;border:0;color:#b7c6c3;display:block;width:100%;text-align:left;padding:12px 16px;border-radius:10px;margin:3px 0}.sidebar button.active,.sidebar button:hover{background:#30494b;color:#fff}.admin-main{padding:30px;max-width:1300px;width:100%;min-width:0}.admin-section{display:none}.admin-section.active{display:block}.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%;font-size:13px;background:#fff}th,td{padding:13px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{background:#f5f7f6;color:#66716d}.topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.statgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat{padding:22px;background:#fff;border:1px solid var(--line);border-radius:15px}.stat strong{font:800 28px Manrope}.stat p{margin:4px 0 0;font-size:12px}.formrow{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.formrow .field{min-width:140px;flex:1}.tag{border-radius:7px;padding:4px 8px;font-size:11px;font-weight:700;background:#eee}.tag.confirmed{background:#e2f4e9;color:#27734f}.tag.pending{background:#fff4d7;color:#9b711b}.tag.rejected,.tag.cancelled{background:#f3e7e5;color:#975448}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.weekday{font-size:11px;color:#7e8b87;text-align:center;padding:10px 0}.day{background:#fff;border:1px solid var(--line);border-radius:8px;min-height:65px;padding:8px;font-size:12px}.day.booked{background:#dff0e8;border-color:#9cc9b2}.day.blocked{background:#f9e7dd;border-color:#e4baaa}.day .tiny{font-size:10px;color:#657875;margin-top:5px}.muted{color:var(--muted)}.hide{display:none!important}.inline-actions{display:flex;gap:6px}.smallbtn{padding:7px 9px;border-radius:8px;border:1px solid #cbd7d3;background:#fff;color:#274c46;font-size:11px}.smallbtn.danger{color:#a34838;border-color:#efceca}.switcher{border:1px solid #dbe5df;border-radius:10px;padding:7px 10px;background:#fff}.mobile-cta{display:none}@media(max-width:790px){.container{width:min(100% - 28px,620px)}.nav{height:70px}.navlinks a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;gap:24px;padding-top:40px}.heroimg{min-height:330px;order:-1}h1{font-size:44px}.split{grid-template-columns:1fr;gap:24px}.section{padding:55px 0}.grid3{grid-template-columns:1fr 1fr}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid>div:first-child{grid-column:1/-1}.admin-shell{display:block}.sidebar{padding:10px;display:flex;overflow-x:auto;gap:6px;align-items:center}.sidebar .logo{display:none}.sidebar button{width:auto;white-space:nowrap}.admin-main{padding:18px}.statgrid{grid-template-columns:1fr 1fr}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;background:#fff;padding:10px 16px;box-shadow:0 -5px 20px #0002;z-index:10}.footer{padding-bottom:110px}}@media(max-width:440px){.grid3{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.statgrid{grid-template-columns:1fr}.card{padding:18px}.heroimg{min-height:270px}.hero{padding-top:18px}.section{padding:42px 0}}

/* V2 refinements: responsive management / accessible touch targets */
:root{--premium-shadow:0 14px 48px rgba(17,48,43,.06)}.card,.stat{box-shadow:var(--premium-shadow)}.sidebar{position:sticky;top:0;align-self:start;min-height:100vh}.sidebar button{font-weight:600}.topline{background:#faf9f7;position:sticky;top:0;z-index:5;padding:9px 0}.day{display:block;width:100%;text-align:left;color:var(--ink);cursor:pointer}.day:hover{outline:2px solid #126c63}.day:focus-visible,.btn:focus-visible,.smallbtn:focus-visible{outline:3px solid #7bc9b9;outline-offset:2px}.calendar{gap:7px}.day.booked{background:#dcefe8}.day.blocked{background:#f9e9de}.edit-dialog{border:1px solid var(--line);border-radius:22px;padding:28px;width:min(560px,calc(100% - 24px));box-shadow:0 30px 100px #112c2a33}.edit-dialog::backdrop{background:#10272799}.edit-dialog input,.edit-dialog select{border:1px solid #dce1df;border-radius:11px;padding:12px;width:100%}.compact-form{margin-bottom:4px}.photo-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:9px}.admin-photo{border:1px solid var(--line);padding:5px;border-radius:12px}.admin-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.admin-photo small{display:block;text-align:center;margin-top:6px}.statgrid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.inline-actions{flex-wrap:wrap}.tablewrap{max-width:100%}.mobile-cta{padding-bottom:max(10px,env(safe-area-inset-bottom))}@media(max-width:790px){.sidebar{position:sticky;top:0;z-index:30;min-height:0}.sidebar button{padding:12px}.admin-main{padding:18px 13px}.calendar{gap:3px}.day{min-height:55px;padding:5px;font-size:12px;overflow:hidden}.day .tiny{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-head h3{font-size:17px;margin:0}.smallbtn{min-height:36px}.topline{top:55px}.topline .btn{padding:9px;font-size:11px}}
