@font-face{font-family:Rebond;src:url(/brand-regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Rebond;src:url(/brand-bold.woff2)format("woff2");font-weight:600 800;font-display:swap}:root{--paper:#f8f5ef;--ink:#4d272c;--wine:#913841;--brand:#ae454e;--muted:#816d6c;--line:#ded4ce;--soft:#eee5dc;--white:#fffdf8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Rebond,Arial,sans-serif;font-size:14px}h1,h2,h3,p{margin:0}a{color:inherit}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:default}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}:is(button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible){outline:2px solid var(--brand);outline-offset:4px}h2:focus{outline:none}svg{flex-shrink:0;display:block}.appointment-page{width:min(100%,550px);margin:0 auto;padding:60px 30px 30px}.brand{text-align:center}.brand>a{display:inline-block}.brand img{width:180px;height:auto;display:block}.brand>p{color:var(--brand);letter-spacing:.015em;margin-top:18px;font-size:14px;line-height:1.6}.event-details{text-align:center;border-bottom:1px solid var(--line);padding:35px 0 30px}h1{letter-spacing:-.025em;font-size:26px;font-weight:400;line-height:1.3}.event-venue{white-space:pre-line;color:var(--muted);margin-top:17px;font-size:12px;line-height:1.7}.booking{padding-top:28px;scroll-margin-top:25px}.booking-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px;display:flex}.booking-heading h2,.confirmation h2{letter-spacing:-.03em;font-size:23px;font-weight:400;line-height:1.3}.booking-heading>span{color:var(--muted);font-size:10px}.preview-note{color:var(--muted);margin-bottom:18px;font-size:10px;line-height:1.5}.section-title{margin-bottom:12px;font-size:12px;font-weight:400;line-height:1.5}.date-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.date-option{border:1px solid var(--line);background:0 0;flex-direction:column;align-items:center;gap:3px;padding:12px 8px;display:flex;position:relative}.date-option:hover:not(:disabled){background:var(--soft)}.date-option.selected{background:var(--soft);border-color:var(--wine)}.date-weekday{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:10px}.date-number{letter-spacing:-.04em;font-size:29px;line-height:1.3}.date-month{color:var(--muted);font-size:10px}.selected-tick{color:var(--wine);position:absolute;top:8px;right:8px}.time-title{justify-content:space-between;align-items:center;margin:24px 0 12px;display:flex}.time-title h3{margin:0}.time-title>span{color:var(--muted);font-size:10px}.time-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.time-option,.time-skeleton{border:1px solid var(--line);background:0 0;min-height:60px}.time-option{flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:13px;display:flex}.time-option small{color:var(--muted);font-size:9px;line-height:1.3}.time-option:hover:not(:disabled){background:var(--soft);border-color:var(--wine)}.time-option.selected{background:var(--wine);color:var(--white);border-color:var(--wine)}.time-option.selected small{color:#fff9f0cc}.time-option:disabled{opacity:.4}.time-option:disabled>span{text-decoration:line-through}.time-skeleton{background:var(--soft)}.timezone{color:var(--muted);margin:14px 0 23px;font-size:10px;line-height:1.6}.primary-button{border:1px solid var(--wine);background:var(--wine);width:100%;min-height:51px;color:var(--white);justify-content:space-between;align-items:center;padding:14px 18px;font-size:12px;text-decoration:none;display:flex}.primary-button:hover:not(:disabled){background:#752b33}.primary-button:disabled{background:#bda8a5;border-color:#bda8a5}.button-caption{text-align:center;color:var(--muted);margin-top:11px;font-size:10px;line-height:1.6}.text-link{color:inherit;background:0 0;border:0;border-bottom:1px solid;align-items:center;gap:12px;padding:0;font-size:11px;line-height:1.5;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--brand)}.subtle{color:var(--muted);font-size:12px;line-height:1.65}.empty-times{margin-top:15px}.page-footer{border-top:1px solid var(--line);margin-top:33px;padding-top:22px}.privacy{color:var(--muted);margin-top:18px;font-size:10px;line-height:1.7}.privacy summary{cursor:pointer;width:fit-content}.privacy p{margin-top:12px}.copyright{color:var(--muted);margin-top:24px;font-size:10px}.error-message{border-left:2px solid var(--brand);background:#f2e1da;margin-bottom:20px;padding:13px 15px;font-size:12px;line-height:1.6}.error-message button{margin-top:9px;display:block}.appointment-summary{background:var(--soft);justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px;padding:17px;display:flex}.appointment-summary p{font-size:13px;line-height:1.5}.appointment-summary span{color:var(--muted);margin-top:4px;font-size:10px;display:block}.preview-form-note{margin-bottom:23px}.field{margin-bottom:22px;font-size:11px;line-height:1.5;display:block}.field input,.field textarea{-webkit-appearance:none;appearance:none;width:100%;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #cbbdb5;border-radius:0;padding:9px 0;font-size:14px;line-height:1.5;display:block}.field input::placeholder,.field textarea::placeholder{color:#a58d85;opacity:1}.field textarea{resize:vertical;min-height:66px}.field input:focus,.field textarea:focus{border-bottom-color:var(--brand);outline:none}.field:focus-within{color:var(--brand)}.field-hint{color:var(--muted);margin-top:6px;font-size:9px;display:block}.optional{color:var(--muted);margin-left:3px;font-size:10px}.consent{color:var(--muted);cursor:pointer;align-items:flex-start;gap:10px;margin:6px 0 25px;font-size:10px;line-height:1.6;display:flex}.consent input{accent-color:var(--wine);flex-shrink:0;width:15px;height:15px;margin:0}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.confirmation-mark{width:50px;height:50px;color:var(--wine);border:1px solid #c7a09a;border-radius:50%;justify-content:center;align-items:center;margin-bottom:24px;display:flex}.confirmation-intro{margin-top:13px}.confirmation-card{background:var(--soft);margin:24px 0;padding:23px}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:10px;line-height:1.5}.confirmation-date{letter-spacing:-.025em;margin-top:9px;font-size:18px;line-height:1.5}.confirmation-time{margin-top:7px;font-size:18px;line-height:1.5}.confirmation-time>span{color:var(--muted);font-size:11px;display:block}.confirmation-venue{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.confirmation-venue>p:last-child{white-space:pre-line;margin-top:8px;font-size:12px;line-height:1.7}.booking-reference{color:var(--muted);margin-top:20px;font-size:10px}.calendar-label{margin-bottom:12px;font-size:12px}.calendar-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.calendar-options>a,.calendar-options>button{border:1px solid var(--wine);background:0 0;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:15px 12px;font-size:11px;text-decoration:none;display:flex}.calendar-options>a:hover{background:var(--soft)}.calendar-options>button:disabled{border-color:var(--line);color:var(--muted);opacity:.65}.secondary-button{background:0 0;border:0;justify-content:center;align-items:center;gap:12px;width:100%;min-height:48px;margin-top:9px;padding:15px 0;font-size:11px;text-decoration:none;display:flex}.preview-calendar-note,.sms-caption{margin-top:14px;font-size:10px}.confirmation-page .brand{margin-bottom:45px}.not-found{max-width:550px;margin:0 auto;padding:70px 25px}.not-found h1{margin:25px 0 17px}.not-found p{color:var(--muted);margin-bottom:25px;line-height:1.7}.studio{max-width:1200px;margin:0 auto;padding:45px 28px}.studio-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.studio-logo{width:126px;height:auto;display:block}.studio h1{margin:22px 0 13px;font-size:32px}.studio-description{color:var(--muted);max-width:650px;font-size:13px;line-height:1.7}.studio-signin{max-width:400px;margin-top:30px}.studio-actions{gap:22px;margin-top:25px;display:flex}.studio-empty{border:1px solid var(--line);color:var(--muted);margin-top:20px;padding:40px 24px;font-size:12px}.studio-table-wrap{margin-top:25px;overflow-x:auto}.studio table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.studio th{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:10px;font-weight:400}.studio th,.studio td{border-bottom:1px solid var(--line);vertical-align:top;padding:14px 12px}.studio td small{color:var(--muted);font-size:10px;line-height:1.6;display:block}.studio-notes{white-space:pre-line;min-width:170px;max-width:280px}.slot-controls{border-top:1px solid var(--line);margin-top:32px;padding-top:28px}.slot-controls-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.slot-controls-heading h2,.guest-list-heading{letter-spacing:-.03em;font-size:23px;font-weight:400}.slot-controls-heading p{color:var(--muted);margin-top:8px;font-size:11px;line-height:1.6}.studio-status{border:1px solid var(--line);white-space:nowrap;padding:8px 12px;font-size:10px}.slot-help{color:var(--muted);max-width:650px;margin-top:17px;font-size:12px;line-height:1.7}.studio-date-tabs{gap:10px;margin-top:23px;display:flex}.studio-date-tabs button{border:1px solid var(--line);background:0 0;min-height:45px;padding:12px 17px;font-size:12px}.studio-date-tabs button.active{background:var(--soft);border-color:var(--wine)}.slot-reason{max-width:400px;margin-top:23px}.studio-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.studio-slot{text-align:left;background:var(--white);border:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:9px;min-width:0;min-height:150px;padding:18px;display:flex}.studio-slot:hover:not(:disabled){border-color:var(--wine)}.studio-slot:disabled{opacity:.6}.studio-slot.blocked{background:#e8dcd4;border-color:#a9857c}.studio-slot-time{letter-spacing:-.04em;font-size:24px}.studio-slot-count{font-size:11px}.studio-slot-note{color:var(--muted);overflow-wrap:anywhere;font-size:10px;line-height:1.5}.studio-slot-action{width:100%;color:var(--brand);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:10px;font-size:10px;display:flex}.slot-feedback{background:var(--soft);margin-top:17px;padding:14px 17px;font-size:12px}.slot-feedback.failed{color:var(--wine);background:#f2e1da}.guest-list-heading{margin-top:43px}@media (max-width:600px){.appointment-page{padding:39px 23px 27px}.brand img{width:157px}.brand>p{margin-top:15px;font-size:13px}.event-details{padding:29px 0 25px}h1{font-size:24px}.booking{padding-top:25px}.booking-heading h2,.confirmation h2{font-size:21px}.booking-heading{margin-bottom:22px}.event-venue{margin-top:15px;font-size:11px}.time-grid{gap:7px}.time-option{min-height:59px;font-size:12px}.time-option small{font-size:8px}.date-number{font-size:29px}.field input,.field textarea{font-size:16px}.consent input{width:16px;height:16px}.calendar-options{gap:8px}.calendar-options>a{padding:13px 11px;font-size:10px}.studio{padding:30px 20px}.studio h1{font-size:28px}.studio-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-slot{min-height:145px;padding:15px}.studio-date-tabs{gap:7px}.studio-date-tabs button{flex:1;padding:10px;font-size:10px}.slot-controls-heading h2,.guest-list-heading{font-size:21px}.studio-status{padding:6px 8px;font-size:9px}.studio table{min-width:850px}}@media (max-width:350px){.appointment-page{padding-left:18px;padding-right:18px}.time-grid{grid-template-columns:repeat(3,1fr)}.calendar-options{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.required-mark{color:var(--brand);font-size:1em}.mandatory-note{color:var(--muted);margin:0 0 23px;font-size:10px;line-height:1.6}.booking-closed{margin-bottom:20px}.contact-heading{margin-bottom:13px;font-size:12px}.contact-options{grid-template-columns:1fr;gap:9px;display:grid}.contact-button{border:1px solid var(--line);background:0 0;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:14px 15px;text-decoration:none;display:flex}.contact-button:hover{background:var(--soft);border-color:var(--wine)}.contact-button>span{min-width:0}.contact-channel{font-size:12px;line-height:1.5;display:block}.contact-destination{color:var(--muted);overflow-wrap:anywhere;font-size:10px;line-height:1.6;display:block}.appointment-changes{border-top:1px solid var(--line);margin-top:27px;padding-top:23px}.appointment-changes>p{margin-bottom:15px;font-size:12px;line-height:1.7}.appointment-changes strong{font-weight:600}@media (min-width:580px){.contact-options{grid-template-columns:1fr 1fr}}.studio-slot-actions{gap:0;width:100%;margin-top:auto;display:grid}.studio-slot-actions .studio-slot-action{border:0;border-top:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;min-height:38px;margin-top:0;padding:11px 0}.studio-slot-actions .studio-slot-action:disabled{opacity:.4;cursor:default}.studio-slot{min-height:200px}.manual-appointment{border:1px solid var(--line);background:var(--white);max-width:580px;margin-top:25px;padding:25px}.manual-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.manual-heading h3{letter-spacing:-.03em;font-size:23px;font-weight:400}.manual-summary{margin-top:12px;font-size:12px}.manual-appointment .slot-help{margin:14px 0 25px;font-size:11px}.guest-list-heading-row{justify-content:space-between;align-items:center;gap:20px;margin-top:43px;display:flex}.guest-list-heading-row .guest-list-heading{margin:0}.guest-list-heading-row>span{color:var(--muted);font-size:11px}.show-cancelled{color:var(--muted);align-items:center;gap:9px;width:fit-content;margin-top:18px;font-size:11px;display:flex}.show-cancelled input{accent-color:var(--wine)}.cancel-appointment{border:1px solid var(--line);color:var(--wine);white-space:nowrap;background:0 0;min-height:38px;padding:9px 11px;font-size:10px}.cancel-appointment:hover:not(:disabled){border-color:var(--wine)}.cancel-appointment:disabled{opacity:.5}.cancelled-row{opacity:.6}.cancelled-label{color:var(--muted);font-size:10px}@media (max-width:600px){.manual-appointment{padding:20px 16px}.manual-appointment input,.manual-appointment textarea{font-size:16px}.studio-slot{min-height:190px}.studio-slot-action{font-size:9px}}.studio-header-actions{flex-wrap:wrap;gap:15px;display:flex}.guest-list-heading-row,.manual-heading h3{scroll-margin-top:24px}.manual-heading h3:focus{outline:none}.footer-end{justify-content:space-between;align-items:center;gap:20px;margin-top:24px;display:flex}.footer-end .copyright{margin:0}.admin-navigation .text-link{color:var(--muted);font-size:10px}
