@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;1,400&display=swap";:root{--paper:#f6f5ef;--ink:#253d35;--muted:#6b766b;--line:#dce1d7;--green:#406b50;--soft:#edf0e5;--white:#fffef9}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif;font-size:15px;line-height:1.6}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:9px;padding:11px 15px;transition:background .15s}button:hover:not(:disabled){background:var(--soft)}button:disabled{cursor:not-allowed}:is(button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible){outline-offset:3px;outline:3px solid #a3b79c}a{color:inherit}.top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1200px;margin:auto;padding:25px 34px;display:flex}.brand{align-items:center;gap:11px;font-weight:600;text-decoration:none;display:flex}.brand-mark{border:1px solid #a9b9a2;border-radius:50%;place-items:center;width:35px;height:35px;display:grid}.brand-role{color:var(--muted);border-left:1px solid var(--line);padding-left:12px;font-size:12px;font-weight:400}.top-note{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}main{max-width:1132px;margin:auto;padding:52px 32px 20px}.eyebrow{letter-spacing:.16em;color:var(--green);font-size:11px;font-weight:600}h1{letter-spacing:-.045em;margin:16px 0 19px;font-family:Lora,Georgia,serif;font-size:clamp(38px,5.5vw,65px);font-weight:400;line-height:1.14}h1 em{color:#6b805a;font-weight:400}.intro{max-width:560px;color:var(--muted);margin:0 0 38px;font-size:16px}.form-columns{grid-template-columns:minmax(0,1.25fr) minmax(320px,.9fr);align-items:start;gap:26px;display:grid}.panel{background:var(--white);border:1px solid var(--line);border-radius:17px;margin-bottom:22px;padding:28px}.section-heading{align-items:flex-start;gap:13px;margin-bottom:25px;display:flex}.number{color:var(--green);border:1px solid var(--line);border-radius:50%;place-items:center;min-width:31px;height:31px;margin-top:3px;font-size:12px;display:grid}h2{margin:0 0 5px;font-family:Lora,Georgia,serif;font-size:24px;font-weight:400;line-height:1.3}.section-heading p{color:var(--muted);margin:0;font-size:12px}.panel>label{margin:20px 0;font-size:13px;font-weight:500;display:block}input:not([type=checkbox]):not([type=radio]),textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;min-width:0;margin-top:8px;padding:12px 13px;font-weight:400}input::placeholder,textarea::placeholder{color:#92998f}textarea{resize:vertical}fieldset{border:0;margin:22px 0;padding:0}legend{margin-bottom:12px;padding:0;font-size:13px;font-weight:500}legend>span,.panel>label>span{color:var(--green)}.attendees{flex-wrap:wrap;gap:7px;display:flex}.choice{border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:9px 12px;font-size:13px;display:flex}.choice:has(:checked){background:var(--soft);border-color:var(--green)}input[type=radio],input[type=checkbox]{accent-color:var(--green);flex-shrink:0;width:16px;height:16px;margin:0}.topics{gap:0;display:grid}.topic{cursor:pointer;border-bottom:1px solid #edf0e8;align-items:flex-start;gap:11px;padding:11px 0;font-size:13px;line-height:1.5;display:flex}.topic input{margin-top:3px}.topic:last-child{border:0}.schedule{border-top:4px solid #789164;position:relative}.schedule-meta{color:var(--muted);align-items:center;gap:8px;margin:-4px 0 23px;font-size:12px;display:flex}.dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.date{text-align:left;flex-direction:column;padding:10px 13px;display:flex}.date>span:first-child{letter-spacing:.12em;color:var(--muted);font-size:10px}.date strong{font-size:14px;font-weight:500}.date>span:last-child{color:var(--muted);font-size:11px}button.selected{border-color:var(--green);background:var(--soft);box-shadow:inset 0 0 0 1px var(--green)}.times{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.time{flex-direction:column;align-items:center;gap:2px;padding:11px 6px;display:flex}.time strong{font-size:13px;font-weight:500}.time span{color:var(--muted);font-size:11px}.time:disabled{color:#92968d;background:#edece7;border-style:dashed}.time:disabled strong{text-decoration:line-through}.timezone{color:var(--muted);align-items:center;gap:7px;font-size:11px;display:flex}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.selection{align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.booking-note{color:var(--muted);margin:14px 0 20px;font-size:12px}.primary{background:var(--green);color:#fff;border-color:var(--green);justify-content:center;align-items:center;gap:10px;font-size:13px;font-weight:500;display:inline-flex}.primary:hover:not(:disabled){background:#31523e}.primary:disabled{opacity:.6}.reserve{justify-content:space-between;width:100%;padding:15px 10px}.privacy{color:var(--muted);justify-content:center;align-items:center;gap:5px;margin-bottom:0;font-size:11px;display:flex}.aside-note{max-width:280px;color:var(--muted);text-align:center;margin:8px auto 30px;font-family:Lora,Georgia,serif;font-size:15px;font-style:italic}.footnote{max-width:680px;color:var(--muted);padding:8px 0 25px;font-size:12px}.footnote strong{color:var(--ink);font-weight:500}.footnote p{margin:6px 0}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding:22px 0;font-size:11px;display:flex}.error{color:#a23c30;background:#fff0ea;border-radius:7px;padding:12px;font-size:13px}.load-error{color:var(--muted);margin-top:12px;font-size:12px}.link{background:0 0;border:0;padding:0;text-decoration:underline}.honey{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.success{border:1px solid var(--line);background:var(--white);border-radius:18px;max-width:720px;margin:25px 0 45px;padding:36px}.icon-circle{background:var(--soft);width:50px;height:50px;color:var(--green);border-radius:50%;place-items:center;margin-bottom:24px;display:grid}.success h2{margin-top:12px;font-size:31px}.success p{color:var(--muted)}.success .appointment{color:var(--ink);font-size:20px;font-weight:500}.actions{flex-wrap:wrap;gap:10px;margin:25px 0 15px;display:flex}.small{font-size:12px}.cancel-link{font-size:11px!important}.notice{background:var(--soft);border-radius:10px;margin:20px 0;padding:15px 20px}.danger{color:#a23c30}.admin-card{background:var(--white);border:1px solid var(--line);border-radius:14px;margin:16px 0;padding:22px}.admin-card h2{font-size:21px}.admin-card p{white-space:pre-wrap}.admin-summary{flex-wrap:wrap;gap:15px;display:flex}.admin-label{color:var(--muted);font-size:12px;font-weight:600}@media (min-width:900px){aside{position:sticky;top:22px}}@media (max-width:760px){.form-columns{grid-template-columns:1fr}.top{padding:18px 20px}.top-note{display:none}.brand{grid-template-columns:35px minmax(0,1fr);gap:1px 11px;line-height:1.5;display:grid}.brand-mark{grid-area:1/1/3}.brand-role{border-left:0;grid-area:2/2;padding-left:0;display:block}main{padding:32px 18px 10px}.intro{font-size:15px}.panel{padding:22px}.schedule{margin-top:0}.dates{grid-template-columns:repeat(2,minmax(0,1fr))}.success{padding:24px}.success .appointment{font-size:17px}.privacy{font-size:11px}.topic{min-height:44px}.time{min-height:56px}footer{gap:10px}input:not([type=checkbox]):not([type=radio]),textarea{font-size:16px}}
