:root{--ink:#203832;--muted:#5d6b65;--green:#176354;--paper:#f7f8f3;--line:#dce3dc;--wash:#eaf1e9;--white:#fff;--red:#a32626}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:var(--green);text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,.button{background:var(--green);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:11px 19px;font-weight:600;line-height:1.4;text-decoration:none;display:inline-flex}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.55;cursor:wait}.secondary{color:var(--ink);border-color:var(--line);background:#fff}.danger{color:var(--red);background:#fff;border-color:#e8baba}.text-button{color:var(--green);background:0 0;border:none;padding:8px}.small{padding:7px 12px;font-size:14px}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #aabbb1;border-radius:7px;min-height:46px;padding:11px 12px}input[type=checkbox]{width:19px;min-height:19px;accent-color:var(--green)}input[type=color]{width:90px;padding:5px}textarea{resize:vertical;min-height:95px}label{gap:6px;font-size:14px;font-weight:600;display:grid}label small,.help{color:var(--muted);font-size:13px;font-weight:400}.check{align-items:flex-start;gap:10px;font-weight:400;display:flex}.check input{flex-shrink:0;margin-top:4px}:focus-visible{outline-offset:3px;outline:3px solid #d88a27}h1,h2,h3,p{margin:0 0 16px}h1,h2{letter-spacing:-.035em;line-height:1.12}h1{font-size:clamp(32px,4vw,48px)}h2{font-size:clamp(25px,3vw,36px)}h3{font-size:18px;line-height:1.3}p{color:var(--muted)}.serif{font-family:Georgia,Times New Roman,serif;font-weight:400}.wrap{width:min(1160px,100% - 48px);margin:auto}.brand{letter-spacing:-1px;color:var(--ink);align-items:center;gap:9px;font-size:25px;font-weight:750;text-decoration:none;display:flex}.mark{background:var(--green);color:#fff;letter-spacing:-2px;border-radius:7px;place-items:center;width:30px;height:32px;padding-right:2px;font-size:19px;display:inline-grid}.nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:25px 0;display:flex}.nav-links,.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.nav-links a:not(.button){color:var(--ink);font-size:14px;text-decoration:none}.hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:75px;padding:85px 0 70px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--green);margin-bottom:20px;font-size:12px;font-weight:700}.hero h1{letter-spacing:-.055em;margin-bottom:25px;font-family:Georgia,serif;font-size:clamp(48px,5.8vw,74px);font-weight:400;line-height:1.05}.hero p{max-width:460px;font-size:18px}.hero .actions{margin:28px 0 15px}.hero-art{background:#e7eee4;border-radius:18px;padding:30px;transform:rotate(1deg)}.preview{background:#fff;border:1px solid #ccd9cd;border-radius:12px;padding:28px;transform:rotate(-1deg);box-shadow:0 18px 40px #2038320e}.preview-head{justify-content:space-between;margin-bottom:24px;display:flex}.preview-row{border-top:1px solid var(--line);align-items:center;gap:18px;padding:18px 0;display:flex}.preview-row time{color:var(--muted);font-size:14px}.preview-row div{border-left:3px solid #8baf82;padding-left:15px}.preview-row p{margin:2px 0;font-size:13px}.tag{background:var(--wash);color:var(--green);border-radius:5px;padding:4px 9px;font-size:12px;font-weight:600;display:inline-block}.section{border-top:1px solid var(--line);padding:65px 0}.section-head{max-width:650px;margin-bottom:30px}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:26px}.step{color:var(--green);margin-bottom:22px;font-size:12px;font-weight:700;display:block}.price{letter-spacing:-2px;font-size:42px;font-weight:600}.price span{color:var(--muted);letter-spacing:0;font-size:15px;font-weight:400}.price-card ul{color:var(--muted);margin:20px 0 25px;padding-left:20px;line-height:2}.price-card.pro{border:2px solid var(--green)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:600}details p{max-width:750px;margin:15px 0 0}.footer{color:var(--muted);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:24px;padding:32px 0;font-size:13px;display:flex}.footer a{color:var(--muted);margin-left:18px}.auth{max-width:450px;margin:70px auto;padding:0 24px}.auth .brand{margin-bottom:45px}.stack{gap:18px;display:grid}.stack p{margin:0}.error{color:#922e24;background:#fff0ed;border:1px solid #ebbbb2;border-radius:8px;padding:12px 16px;font-size:14px}.notice{color:#315b39;background:#edf3e9;border:1px solid #c5d9c0;border-radius:8px;padding:12px 16px;font-size:14px}.muted{color:var(--muted)}.shell{grid-template-columns:225px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#eef2e9;flex-direction:column;gap:32px;padding:29px 22px;display:flex}.sidebar nav{gap:6px;display:grid}.sidebar nav a{color:var(--muted);border-radius:7px;padding:11px 13px;font-size:14px;font-weight:600;text-decoration:none}.sidebar nav a.active{color:var(--green);background:#fff;box-shadow:0 1px 4px #20383208}.sidebar-bottom{margin-top:auto;font-size:13px}.workspace{width:100%;max-width:1450px;margin:auto;padding:38px 48px}.page-head{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:30px;display:flex}.page-head h1{margin-bottom:8px;font-size:34px}.page-head p{margin:0}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px;display:grid}.stat strong{letter-spacing:-1px;margin:10px 0 0;font-size:36px;font-weight:500;display:block}.stat p{margin:0;font-size:13px}.panel-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.panel-title h2{margin:0;font-size:23px}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}th{color:var(--muted);font-size:12px;font-weight:600}td,th{border-bottom:1px solid var(--line);white-space:nowrap;padding:14px 12px}td:first-child,th:first-child{padding-left:0}td small{color:var(--muted);display:block}.filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.empty{text-align:center;color:var(--muted);padding:35px 15px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.span2{grid-column:1/-1}.resource-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:19px 0;display:flex}.resource-row:last-child{border:0}.resource-row p{margin:3px 0;font-size:14px}.colour-dot{border-radius:100%;width:10px;height:10px;margin-right:7px;display:inline-block}.hours-row{grid-template-columns:110px minmax(100px,1fr) minmax(100px,1fr) auto;align-items:center;gap:12px;margin:12px 0;display:grid}.day-label{font-size:14px;font-weight:600}.booking-wrap{max-width:760px;margin:35px auto 70px;padding:0 24px}.business-banner{border-bottom:1px solid var(--line);margin-bottom:18px;padding:25px 0}.business-banner h1{margin:12px 0;font-size:36px}.booking-step{margin:28px 0}.booking-step h2{margin-bottom:18px;font-size:23px}.service-options{gap:10px;display:grid}.choice{color:var(--ink);border:1px solid var(--line);text-align:left;background:#fff;justify-content:space-between;width:100%;min-height:70px;font-weight:400}.choice.selected,.slot.selected{border:2px solid var(--green);background:#edf4ec}.choice strong{display:block}.choice small{color:var(--muted);display:block}.calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.date-choice{color:var(--ink);border:1px solid var(--line);background:#fff;gap:2px;padding:10px 3px;font-size:14px;display:grid}.date-choice small{color:var(--muted);font-size:11px}.date-choice.selected{background:var(--green);color:#fff}.date-choice.selected small{color:#fff}.slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:20px;display:grid}.slot{border:1px solid var(--line);color:var(--ink);background:#fff;padding:10px;font-size:14px}.booking-summary{border-left:3px solid var(--green);background:var(--wash);margin:20px 0;padding:8px 20px}.booking-summary p{margin:4px 0}.legal{max-width:780px;margin:60px auto;padding:0 24px}.legal h2{margin-top:30px;font-size:24px}.skip{z-index:100;background:#fff;padding:12px;position:absolute;top:-80px;left:10px}.skip:focus{top:10px}progress{width:100%;accent-color:var(--green);height:9px}.onboard{max-width:760px;margin:45px auto;padding:0 24px}.divider{background:var(--line);height:1px;margin:25px 0}.success-icon{background:var(--wash);width:55px;height:55px;color:var(--green);border-radius:50%;place-items:center;margin-bottom:22px;font-size:30px;display:grid}.status-cancelled,.status-no-show{color:#883b32;background:#f8e9e5}.status-completed{color:#345778;background:#e9eef5}.visually-hidden{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1000px){.hero{gap:30px}.workspace{padding:30px 25px}.shell{grid-template-columns:195px minmax(0,1fr)}.sidebar{padding:25px 15px}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.wrap{width:calc(100% - 32px)}.nav{padding:20px 0}.nav-links .hide-mobile{display:none}.hero{grid-template-columns:1fr;gap:32px;padding:48px 0}.hero h1{font-size:52px}.hero-art{padding:20px}.grid3,.grid2{grid-template-columns:1fr}.section{padding:42px 0}.shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);gap:15px;padding:17px 18px}.sidebar nav{gap:3px;padding-bottom:3px;display:flex;overflow-x:auto}.sidebar nav a{white-space:nowrap;padding:8px 11px}.sidebar-bottom{display:none}.workspace{padding:25px 18px}.page-head{flex-direction:column;gap:15px}.stats{gap:8px}.stat{padding:15px 12px}.stat strong{font-size:28px}.stat p{font-size:12px}.card{padding:20px}.form-grid{grid-template-columns:1fr}.hours-row{grid-template-columns:1fr 1fr auto;gap:8px}.hours-row .day-label{grid-column:1/-1}.resource-row{flex-direction:column;align-items:flex-start;gap:10px}.booking-wrap{margin-top:25px;padding:0 16px}.calendar{gap:4px}.date-choice{font-size:12px}.slots{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-wrap .card{padding:18px}.footer{font-size:12px}.footer a{margin-left:0;margin-right:12px}.auth{margin-top:40px}}
