/* Tasting enquiry page. Scoped to .tasting-* and .booking-* only.
   Uses the existing brand tokens from site.css: --cream --ink --wine --gold --grey --serif --sans */

.tasting-lead{font-family:var(--serif);font-size:1.15rem;font-style:italic;color:var(--ink);max-width:56ch}

.tasting-h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;margin:3rem 0 1rem}

.tasting-wines{list-style:none;margin:1.2rem 0 0;padding:0;max-width:560px}
.tasting-wines li{border-bottom:1px solid rgba(30,27,24,.12)}
.tasting-wines li:first-child{border-top:1px solid rgba(30,27,24,.12)}
.tasting-wines a{display:block;padding:.75rem .2rem;font-family:var(--serif);font-size:1.15rem;color:var(--ink);transition:.2s}
.tasting-wines a:hover,.tasting-wines a:focus-visible{color:var(--wine);padding-left:.6rem}

.tasting-faq h3{font-family:var(--serif);font-weight:500;font-size:1.2rem;margin:2rem 0 .4rem}
.tasting-faq p{color:var(--grey);max-width:62ch}

.booking-trap[hidden]{display:none}
.booking-form input[type=date],.booking-form input[type=number]{
  width:100%;max-width:260px;padding:.8rem;border:1px solid rgba(30,27,24,.25);
  background:#fff;font-family:inherit;font-size:.9rem;color:var(--ink)}
.booking-form input:focus-visible,.booking-form textarea:focus-visible,
.booking-form button:focus-visible,.booking-form a:focus-visible,
.booking-status:focus-visible{outline:2px solid var(--wine);outline-offset:2px}
.booking-form input:user-invalid{border-color:var(--wine)}

.booking-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-top:1.8rem}
.booking-actions .submit{margin-top:0}

.booking-status{margin-top:1.2rem;font-size:.85rem;color:var(--ink);max-width:62ch}
.booking-status:empty{margin-top:0}

.booking-direct{margin-top:2rem;font-size:.9rem;color:var(--ink)}
.booking-direct a{color:var(--wine);border-bottom:1px solid rgba(164,19,60,.4)}
.booking-direct a:hover{border-bottom-color:var(--wine)}

/* Homepage CTA block, safe to drop into any section */
.tasting-cta{margin:3rem 0;padding:2rem;background:var(--cream-dark);max-width:640px}
.tasting-cta p{margin:0 0 1.2rem;color:var(--ink);max-width:50ch}
.tasting-cta .tasting-cta-link{display:inline-block;background:var(--wine);color:#fff;
  padding:.9rem 2.2rem;font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;transition:.3s}
.tasting-cta .tasting-cta-link:hover{background:#571020;color:#fff}
.tasting-cta .tasting-cta-link:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

@media(max-width:820px){
  .tasting-h2{margin:2.2rem 0 .8rem}
  .booking-form input[type=date],.booking-form input[type=number]{max-width:100%}
  .booking-actions{flex-direction:column;align-items:stretch;gap:.7rem}
  .booking-actions .submit{width:100%;text-align:center;padding:1rem 1rem}
  .tasting-cta{padding:1.4rem}
  .tasting-cta .tasting-cta-link{display:block;text-align:center}
}

.booking-submit:disabled{opacity:.65;cursor:wait}
.booking-status[data-state="error"]{color:var(--wine)}
.booking-form input[type="tel"]{width:100%;padding:.8rem;border:1px solid rgba(30,27,24,.25);background:#fff;font-family:inherit;font-size:.9rem;color:var(--ink)}
@media(max-width:820px){.booking-form input,.booking-form textarea{font-size:1rem!important}}
