:root{--bg:#f4f2ed;--ink:#18201d;--green:#173f35;--muted:#707873;--line:#deddd7;--white:#fff;--red:#8b302b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}main{max-width:760px;margin:auto;min-height:100vh;padding-bottom:90px}header{background:var(--green);color:white;padding:26px 20px 22px}header small{opacity:.75;letter-spacing:.08em}header h1{margin:8px 0 2px;font-size:29px}header p{margin:0;opacity:.7}.content{padding:18px}.content h2{font-size:22px;margin:4px 0 16px}.metrics{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:14px}.card,.loginCard,.panel{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:16px}.card small{display:block;color:var(--muted);font-size:12px}.card strong{display:block;margin-top:8px;font-size:21px}.panel{margin-bottom:12px}.panel h3{margin:0 0 13px;font-size:16px}.panel p{line-height:1.45}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}label{display:block;margin:0 0 12px}label span{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}input,select{width:100%;font-size:16px;padding:12px;border:1px solid #cbcfc9;border-radius:12px;background:white;color:var(--ink)}button{border:0;border-radius:12px;background:var(--green);color:white;padding:12px 15px;font-weight:700;font-size:14px}.secondary{background:#e9eee9;color:var(--green)}.danger{background:#f6e9e7;color:var(--red)}.actions{display:flex;gap:8px;margin-top:14px}.badge{display:inline-block;padding:5px 9px;border-radius:99px;background:#edf1ed;font-size:12px}.line{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #eee;padding:11px 0}.line:first-of-type{border-top:0}.line span{flex:1 1}.line span small{display:block;color:var(--muted);margin-top:3px}.line em{font-size:11px;font-style:normal}.line em,.muted,.note{color:var(--muted)}.note{font-size:12px;line-height:1.45;padding:0 4px}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(760px,100%);display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.96);border-top:1px solid var(--line);padding:8px 5px calc(8px + env(safe-area-inset-bottom));z-index:10}nav button{background:transparent;color:#858b87;padding:10px 2px;font-size:11px}nav button.active{color:var(--green);font-weight:800}.login{display:grid;place-items:center;padding:24px;min-height:100vh}.loginCard{width:min(420px,100%);padding:26px}.loginCard>small{color:var(--green);font-weight:800;letter-spacing:.08em}.loginCard h1{margin:8px 0}.loginCard>p{color:var(--muted);margin-top:0;margin-bottom:24px}.loginCard button{width:100%;font-size:16px}@media(max-width:430px){.grid{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.line{align-items:flex-start;flex-wrap:wrap}}.referralCard{max-width:560px}.referralBadge{background:#e8f2ec;color:#204936;border-radius:8px;padding:12px}.buttonLink{display:inline-block;background:#264d3b;color:white;text-decoration:none;border-radius:8px;padding:14px 20px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.enquiryItem{border-top:1px solid #ddd;padding:18px 0;overflow-wrap:anywhere}.enquiryFocused{outline:2px solid #967744;outline-offset:5px}.enquiryItem small{font-size:12px}.referralCard h1{font-size:32px}.enquiryItem .actions,.line .actions{flex-wrap:wrap}button:disabled{opacity:.55;cursor:wait}.partnerApplyCard{max-width:560px}.partnerApplyCard h1{font-size:30px}.partnerSteps{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.partnerSteps span{padding:8px 10px;background:#edf2ed;color:var(--green);border-radius:8px;font-size:12px;font-weight:700}textarea{width:100%;font:inherit;padding:12px;border:1px solid #cbcfc9;border-radius:12px;resize:vertical}.consentCheck{display:flex;align-items:flex-start;gap:10px}.consentCheck input{width:20px;height:20px;flex-shrink:0;margin:0}.consentCheck span{font-size:13px;line-height:1.5}.applicationReference{overflow-wrap:anywhere;font-size:13px}.applicationActions{flex-wrap:wrap;align-items:center;margin-bottom:20px}.applicationResult{padding:14px;background:#edf2ed;border-radius:12px;margin:20px 0}.applicationDetails{white-space:pre-wrap}.applicationDetails,.enquiryItem p{overflow-wrap:anywhere}.partnerRegistryEntry{border-top:1px solid var(--line);padding:12px 0}.partnerPayout{margin:10px 0;padding:12px;background:#f7f7f4;border-radius:10px}.partnerPayout summary{cursor:pointer;font-size:13px;font-weight:600}.partnerPayout p{overflow-wrap:anywhere}.calendarIntro{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 20px}.calendarIntro h2{margin:6px 0!important;font-size:26px}.calendarIntro p{font-size:13px;color:var(--muted);margin:0}.calendarEyebrow{font-size:10px;letter-spacing:.14em;color:var(--green);font-weight:700}.calendarMode{display:flex;background:#e7e9e2;padding:4px;border-radius:14px;margin-bottom:16px}.calendarMode button{flex:1 1;background:transparent;color:#657268;padding:11px 7px}.calendarMode button[aria-pressed=true]{background:#fff;color:var(--green);box-shadow:0 2px 5px #173f3510}.calendarNotice{background:#eee8d8;border:1px solid #d7c8a5;border-radius:12px;padding:12px;font-size:12px;line-height:1.5}.calendarWarning{color:#6b441c}.calendarSurface{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden}.calendarToolbar{display:flex;align-items:center;gap:6px;padding:15px 12px}.calendarToolbar h3{flex:1 1;margin:0;font-size:18px;white-space:nowrap}.calendarArrow{background:transparent;color:var(--green);font-size:26px;padding:3px 10px;min-width:36px;min-height:40px}.calendarToday{background:#edf1eb;color:var(--green);padding:10px;font-size:12px}.calendarDays,.calendarWeekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendarWeekdays{background:#fafaf7;color:#7b827c;text-align:center;font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:10px 0}.calendarDay{min-width:0;min-height:75px;border-radius:0;border-top:1px solid #eeeee7;border-right:1px solid #eeeee7;padding:8px 2px 5px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:#fff;color:#244638;position:relative;font-weight:500}.calendarDay:nth-child(7n){border-right:0}.calendarNumber{display:grid;place-items:center;width:28px;height:28px;font-size:14px;border-radius:50%}.calendarDay.isToday .calendarNumber{background:var(--green);color:white;font-weight:800}.calendarDay.selected{box-shadow:inset 0 0 0 2px #173f35;z-index:1}.calendarDay.outside{opacity:.42}.calendarMark{height:4px;width:22px;background:var(--cal-color,#cdd9cf);border-radius:4px}.calendarTurn{font-size:9px;font-weight:700;min-height:11px;color:#485b51}.cal-open{--cal-color:#d8e4d9}.cal-reserved{--cal-color:#d1a34b;background:#fbf5e6}.cal-paid{--cal-color:#65a99a;background:#edf6f2}.cal-inhouse{--cal-color:#173f35;background:#dcebe2}.cal-blocked{--cal-color:#8c8582;background:repeating-linear-gradient(135deg,#efedeb,#efedeb 5px,#e7e4e1 0,#e7e4e1 6px)}.cal-unknown{--cal-color:#bbb;background:#f1f1ee}.calendarLegend{display:flex;gap:10px 16px;flex-wrap:wrap;padding:14px 12px;font-size:10px;color:#58695e;border-top:1px solid #eee}.calendarLegend span{display:flex;align-items:center;gap:5px}.calendarLegend i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--cal-color)}.calendarSummary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0;grid-gap:8px;gap:8px}.calendarSummary>div{border:1px solid var(--line);border-radius:14px;background:#ffffff99;padding:13px 9px}.calendarSummary strong{display:block;font-size:23px;color:var(--green);margin-bottom:3px}.calendarSummary span{font-size:10px;color:#737d73}.calendarDetailHeading{display:flex;justify-content:space-between;align-items:center;gap:8px}.calendarDetailHeading small{font-size:9px;letter-spacing:.13em;color:#7b827c;font-weight:700}.calendarDetailHeading h3{margin:6px 0 12px!important;font-size:17px}.calendarStatus{padding:7px 9px;border-radius:8px;font-size:10px;font-weight:700;white-space:nowrap}.calendarEvent{font-size:12px;font-weight:600;color:var(--green);padding:10px;background:#f0f4ed;border-radius:8px}.calendarBlock,.calendarBooking{border-top:1px solid var(--line);padding:16px 0 4px}.calendarBooking>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.calendarBooking b{font-size:14px}.calendarBlock p,.calendarBooking p{font-size:12px;margin:10px 0 5px}.calendarBlock small,.calendarBooking small{display:block;color:var(--muted);font-size:11px}.calendarBooking button{margin-top:12px;font-size:12px}.calendarEmpty{font-size:13px;color:var(--muted);padding:10px 0}.bookingFocused{outline:2px solid #a98547;outline-offset:3px;scroll-margin-top:18px}button:focus-visible{outline:3px solid #a98547;outline-offset:2px}@media(min-width:560px){.calendarDay{min-height:90px}.calendarNumber{font-size:16px}.calendarWeekdays{font-size:12px}.calendarTurn{font-size:11px}.calendarLegend,.calendarSummary span{font-size:12px}}@media(max-width:360px){.calendarToolbar h3{font-size:15px}.calendarToolbar{padding:12px 5px}.calendarArrow{min-width:30px;padding:3px 6px}.calendarIntro h2{font-size:23px}}.cal-past{--cal-color:#8c9fac;background:#edf0f3}