.reservation-section[hidden]{display:none!important}.reservation-banner>div{padding:40px 9%}.reservation-banner .eyebrow{font-size:8px;margin-bottom:15px}.reservation-banner h2{font:50px/1 var(--serif);letter-spacing:-1px;margin-bottom:15px}.reservation-banner p:not(.eyebrow){font-size:12px;line-height:1.7;max-width:450px;margin-bottom:18px}.reservation-heading{text-align:center;padding:30px 5% 22px}.reservation-heading .eyebrow{font-size:9px;letter-spacing:3px;margin-bottom:10px}.reservation-heading h2,.booking-how h2{font:42px/1 var(--serif);margin-bottom:12px;letter-spacing:-.7px}.reservation-heading>p:last-child{font-size:12px;color:#777c6f}.reservation-grid{display:grid;grid-template-columns:1.15fr .9fr 1fr;gap:16px;padding:0 3%;align-items:start}.reservation-card{padding:20px;background:linear-gradient(140deg,#fff,#f8f8f4);border:1px solid #dedfd7;border-radius:16px;box-shadow:0 5px 12px #454a3512;min-width:0}.reservation-card>h3{font:23px var(--serif);display:flex;gap:10px;align-items:center;margin:0 0 18px;letter-spacing:-.4px}.step-number{flex-shrink:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:white;background:linear-gradient(#829454,#4c632a);font:21px var(--serif)}.booking-filters{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:15px}.booking-filters button{font-size:9px;border:1px solid #d8dbd0;border-radius:20px;padding:6px 9px;background:#f4f5f0;cursor:pointer}.booking-filters button[aria-pressed=true],.booking-time-slots button[aria-pressed=true],.booking-calendar button[aria-pressed=true]{background:linear-gradient(#7e914d,#4e6728);color:white;border-color:#6b8342}.service-picker>input{font-size:10px;padding:9px;margin-bottom:12px}.reservation-card label{font-size:10px;gap:5px;margin-bottom:12px}.reservation-card input,.reservation-card select{padding:9px 10px;border-radius:8px;font-size:11px;background:#fff!important}.booking-service-options{display:grid;gap:10px;max-height:430px;overflow:auto;padding:2px 4px 4px 0}.booking-service{display:flex;gap:10px;align-items:center;border:1px solid #dcded4;background:#fff;border-radius:12px;padding:8px;min-height:88px;text-align:left;cursor:pointer;width:100%;color:var(--ink);box-shadow:0 2px 5px #30361e0b}.booking-service[aria-pressed=true]{border:1.5px solid #78914b;background:#f7faef}.booking-service>img{height:62px;width:58px;object-fit:cover;border-radius:7px}.booking-service-info{flex:1;min-width:0}.booking-service-info strong{display:block;font:17px/1.08 var(--serif)}.booking-service-info small{display:block;font-size:8px;color:#8b8f7d;margin-top:6px}.booking-service-meta{text-align:right;max-width:75px;flex-shrink:0}.booking-service-meta strong{display:block;font:18px var(--serif);color:#536d2d}.booking-service-meta small{display:block;font-size:8px;color:#8c9082;margin-top:6px}.reservation-middle{display:grid;gap:16px}.booking-month-nav{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}.booking-month-nav h4{font-size:12px;font-weight:500;margin:0;text-transform:capitalize}.booking-month-nav button{background:none;border:0;font-size:25px;cursor:pointer;color:var(--ink);padding:0 7px}.booking-month-nav button:disabled{opacity:.25;cursor:default}.booking-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:15px}.booking-calendar .weekday{font-size:10px;text-align:center;padding:5px 0}.booking-calendar button{border:1px solid transparent;border-radius:8px;min-height:28px;padding:5px 0;background:transparent;font-size:11px;cursor:pointer}.booking-calendar button:disabled{color:#b9bcb1;cursor:default}.booking-calendar button[aria-current=date]:not([aria-pressed=true]){border-color:#a8b18e}.booking-time-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:14px}.booking-time-slots button{font-size:11px;border:1px solid #dbddd1;background:#fff;padding:9px 4px;border-radius:10px;cursor:pointer}.booking-time-slots button:disabled{opacity:.35;cursor:default}.booking-fine{font-size:9px;line-height:1.6;color:#8a8f7d;margin:8px 0 0}.booking-summary{background:linear-gradient(120deg,#edf0e4,#f3f4eb);border-radius:12px;padding:16px;margin:18px 0}.booking-summary h3{font:20px var(--serif);margin-bottom:12px}.booking-summary dl{margin:0}.booking-summary dl>div{display:flex;justify-content:space-between;gap:12px;font-size:10px;margin:9px 0}.booking-summary dd{margin:0;text-align:right;max-width:65%}.booking-summary dl>div:nth-last-child(2){font-size:13px;color:var(--green);padding-top:9px;border-top:1px solid #d6dcc9}.booking-summary dl>div:last-child{font-size:9px;color:#788168}.client-details>.button{width:100%;font-size:11px;justify-content:center;padding:12px}.client-details #booking-status{font-size:11px;line-height:1.7;margin-top:12px;color:#566b39}.reservation-approval{background:#e9eddf;border-radius:14px;padding:20px;text-align:center;margin:22px 3%}.reservation-approval h3{font:25px var(--serif);margin-bottom:8px}.reservation-approval p{font-size:11px;margin:0;line-height:1.7}.booking-how{text-align:center;padding:15px 5% 40px}.booking-how>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:25px}.booking-how article+article{border-left:1px solid #d8dacd;padding-left:25px}.booking-how h3{font:23px var(--serif);margin-bottom:10px}.booking-how p{font-size:11px;line-height:1.8;color:#7b816f;max-width:260px;margin:auto}@media(max-width:1000px){.reservation-grid{grid-template-columns:1fr 1fr}.client-details{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.client-details>h3,.client-details>.button,.client-details>#booking-status{grid-column:1/-1}.client-details .booking-summary{grid-column:2;grid-row:2/span 4;margin:0}.reservation-banner>div{padding:30px 9%}.reservation-banner h2{font-size:44px}}@media(max-width:600px){.reservation-banner>div{padding:30px 7%}.reservation-banner h2{font-size:35px}.reservation-banner p:not(.eyebrow){font-size:11px}.reservation-banner .eyebrow{font-size:7px}.reservation-banner .button{font-size:10px;padding:10px 15px}.reservation-heading{padding:28px 6% 15px}.reservation-heading h2,.booking-how h2{font-size:35px}.reservation-grid{grid-template-columns:1fr;padding:0 5%;gap:15px}.client-details{grid-column:auto;display:block}.booking-service-options{max-height:340px}.booking-service-info strong{font-size:20px}.reservation-card>h3{font-size:25px}.booking-calendar button{min-height:35px;font-size:12px}.booking-time-slots button{padding:12px}.reservation-approval{margin:20px 5%;padding:20px 15px}.reservation-approval h3{font-size:24px}.booking-how>div{grid-template-columns:1fr;gap:22px}.booking-how article+article{border:0;padding:0}.booking-how p{max-width:300px}}

.reservation-banner {
  display: grid;
  grid-template-columns: minmax(0, 57%) 1fr;
  align-items: center;
  min-height: clamp(290px, 33.33vw, 460px);
  background: #e3e1c9 url("assets/agenda-iedspa.png") right center / cover no-repeat;
  border-bottom: 1px solid #d6c6a8;
}
@media (max-width: 600px) {
  .reservation-banner {
    grid-template-columns: 1fr;
    padding-top: 46%;
    background-position: right top;
    background-size: auto 58%;
  }
  .reservation-banner > div {
    background: #e3e1c9;
  }
}
