:root{--ink:#16372f;--muted:#60716b;--paper:#faf8f2;--line:#dbe2da;--accent:#c46243;--white:#fff;--green:#123c34}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;line-height:1.1;font-weight:700}h1{font-size:clamp(2.6rem,6vw,5.8rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,3vw,3.1rem);letter-spacing:-.03em}a{color:inherit}button,input,select{font:inherit}.wrap{width:min(1120px,calc(100% - 40px));margin-inline:auto}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between}.brand{text-decoration:none;font-family:Georgia,serif;font-size:1.75rem;font-weight:700;letter-spacing:-.05em}.brand-dot{color:var(--accent)}.header-link{text-decoration:none;font-size:.92rem;font-weight:650}.hero{padding:clamp(76px,11vw,148px) 0 110px;max-width:790px}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.16em;color:var(--accent);margin-bottom:21px}.hero h1{margin-bottom:26px}.hero p,.booking-intro>p,.owner-heading p{font-size:1.16rem;color:var(--muted);max-width:590px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:54px;padding:14px 21px;border:1px solid var(--green);border-radius:7px;background:var(--green);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.button:hover,.button:focus-visible{background:#1d584c}.hero .button{margin-top:22px}.section{padding:38px 0 110px;border-top:1px solid var(--line)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}.section-head .eyebrow{margin-bottom:12px}.section-head h2{margin:0}.section-head p{color:var(--muted);margin:0 0 4px}.service-list{border-top:1px solid var(--line)}.service-item{display:grid;grid-template-columns:72px 1fr auto;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.service-mark{height:62px;width:62px;display:grid;place-items:center;border-radius:5px;background:#e6ebe1;color:var(--green);font-family:Georgia,serif;font-size:1.55rem}.service-copy h3{margin-bottom:4px;font-size:1.18rem}.service-copy p{color:var(--muted);margin-bottom:8px}.service-copy strong{font-size:.91rem}.text-link{font-weight:750;text-decoration:none;white-space:nowrap}.text-link:hover{text-decoration:underline}.empty{padding:60px 24px;background:#f0f2eb;text-align:center}.empty h3{font-size:1.2rem}.empty p{color:var(--muted);margin-bottom:0}.site-footer{display:flex;justify-content:space-between;gap:20px;padding:26px 0 35px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.site-footer span:first-child{font-family:Georgia,serif;font-size:1.1rem;color:var(--ink);font-weight:700}.booking-layout{display:grid;grid-template-columns:1fr minmax(340px,470px);gap:clamp(36px,8vw,120px);padding:72px 0 110px}.back{display:inline-block;margin-bottom:58px;text-decoration:none;color:var(--muted);font-weight:650}.back:hover{text-decoration:underline}.booking-intro h1{font-size:clamp(2.8rem,5vw,4.7rem);margin-bottom:22px}.selected-service{display:flex;flex-direction:column;gap:3px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:70px}.selected-service span{color:var(--muted);font-size:.9rem}.selected-service strong{font-size:1.13rem}.booking-form{background:var(--white);border:1px solid var(--line);border-radius:9px;padding:34px;box-shadow:0 15px 40px #173b2b0a}.booking-form h2{font-family:inherit;font-size:1.35rem;letter-spacing:0;margin-bottom:6px}.form-note,.privacy-note{color:var(--muted);font-size:.9rem}.form-note{margin-bottom:28px}.field{margin-bottom:21px}.field label{display:block;margin-bottom:8px;font-weight:700;font-size:.92rem}.field input,.field select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #b8c7be;border-radius:5px;background:#fff;color:var(--ink)}.field input:focus-visible,.field select:focus-visible{outline:3px solid #a9d2bc;outline-offset:2px}.field small{display:block;margin-top:6px;color:var(--muted)}.errorlist{color:#a83224;font-size:.85rem;padding-left:18px;margin:7px 0}.error-summary{padding:12px;background:#fff2ec;color:#8d2619;margin-bottom:18px}.full{width:100%;margin-top:8px}.privacy-note{margin:15px 0 0}.done{max-width:650px;padding:120px 0 160px}.done-icon{display:grid;place-items:center;width:62px;height:62px;background:#dfebe3;color:var(--green);border-radius:50%;font-size:1.6rem;margin-bottom:33px}.done h1{font-size:clamp(2.6rem,5vw,4.7rem)}.done p{font-size:1.13rem;color:var(--muted);margin-bottom:32px}.owner-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:70px 0 36px}.owner-heading h1{font-size:clamp(2.6rem,5vw,4.3rem);margin-bottom:14px}.owner-heading p{margin-bottom:0}.outline-button{border:1px solid var(--green);padding:12px 18px;text-decoration:none;border-radius:5px;font-weight:700;white-space:nowrap}.booking-list{border-top:1px solid var(--line);margin-bottom:110px}.booking-row{display:grid;grid-template-columns:70px 1fr auto;gap:24px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}.booking-date{display:flex;flex-direction:column;border-right:1px solid var(--line)}.booking-date strong{font-family:Georgia,serif;font-size:2rem;line-height:1}.booking-date span{font-size:.75rem;color:var(--muted)}.booking-data h2{font-family:inherit;font-size:1.05rem;letter-spacing:0;margin-bottom:3px}.booking-data p{margin-bottom:7px;color:var(--muted);font-size:.9rem}.status{font-size:.75rem;font-weight:700}.status-pending{color:#a75d0e}.status-confirmed{color:#24724b}.status-rejected{color:#a83224}.actions{display:flex;gap:8px}.actions form{margin:0}.small-button,.quiet-button{padding:9px 11px;border-radius:5px;cursor:pointer;font-weight:700;font-size:.82rem}.small-button{background:var(--green);color:white;border:1px solid var(--green)}.quiet-button{background:transparent;color:var(--ink);border:1px solid var(--line)}.messages{margin-bottom:20px}.messages p{padding:12px;background:#e5f1e7}.messages p.error{background:#fff1eb}
@media(max-width:720px){.wrap{width:min(100% - 32px,1120px)}.header-inner{min-height:67px}.hero{padding:82px 0 85px}.section{padding-bottom:85px}.section-head{display:block}.section-head p{margin-top:12px}.service-item{grid-template-columns:52px 1fr;gap:14px}.service-mark{height:48px;width:48px;font-size:1.2rem}.text-link{grid-column:2}.site-footer{flex-direction:column;gap:6px}.booking-layout{grid-template-columns:1fr;padding:35px 0 90px;gap:25px}.back{margin-bottom:35px}.selected-service{margin-top:35px}.booking-form{padding:22px}.owner-heading{display:block;padding-top:45px}.outline-button{display:inline-block;margin-top:22px}.booking-row{grid-template-columns:55px 1fr;gap:12px}.booking-date strong{font-size:1.6rem}.actions{grid-column:2}.booking-data p{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.date-picker{margin-top:28px}.date-picker label,.slot-field legend{display:block;font-size:.92rem;font-weight:700;margin-bottom:8px}.date-picker>div{display:flex;gap:10px;flex-wrap:wrap}.date-picker input{min-height:48px;padding:10px 12px;border:1px solid #b8c7be;border-radius:5px;background:#fff;color:var(--ink)}.date-picker .outline-button{background:transparent;cursor:pointer}.slot-field{border:0;padding:0;margin:0 0 22px}.slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.slot-option{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:10px;border:1px solid #b8c7be;border-radius:5px;cursor:pointer}.slot-option:has(input:checked){background:#e6f0e8;border-color:var(--green)}.slot-option.unavailable{color:var(--muted);background:#f4f5f1;cursor:not-allowed}.slot-option span{font-weight:700;font-size:.88rem}.slot-option small{font-size:.72rem}.status-tip{margin-top:16px!important}.status-page{max-width:770px;padding:60px 0 120px}.status-page>.back{margin-bottom:42px}.status-page>p{color:var(--muted)}.status-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:30px;margin:32px 0}.status-card h2{font-size:1.7rem;margin:16px 0}.status-card dl{margin:0 0 22px}.status-card dl>div{display:flex;gap:20px;border-top:1px solid var(--line);padding:11px 0}.status-card dt{min-width:90px;color:var(--muted)}.status-card dd{margin:0;font-weight:700}.status-card p{color:var(--muted)}.status-cancelled{color:#686868}.owner-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.owner-filters a{padding:9px 13px;border:1px solid var(--line);border-radius:5px;text-decoration:none;font-size:.88rem;font-weight:700}.owner-filters a[aria-current=page]{background:var(--green);border-color:var(--green);color:#fff}.actions{flex-wrap:wrap}.actions a.quiet-button{text-decoration:none}.pagination{display:flex;gap:18px;justify-content:center;align-items:center;margin:0 0 80px}.pagination a{font-weight:700}@media(max-width:720px){.slot-grid{grid-template-columns:1fr 1fr}.slot-option{display:block}.slot-option input{margin-right:5px}.slot-option small{display:block;margin-left:22px}.status-page{padding:35px 0 90px}.status-card{padding:22px}.owner-filters a{font-size:.8rem}.date-picker>div>*{flex:1}}
