:root{--review-matte-black:#151515;--review-beige:#d2c1a8;--amasis:"Amasis MT Pro",Georgia,serif;--aptos:Aptos,"Segoe UI",Arial,sans-serif}.lisa-review-header{height:72px;grid-template-columns:1fr auto;background:var(--review-matte-black);padding-inline:clamp(20px,4vw,64px)}.review-label{font:500 11px/1 var(--aptos);color:#8d8a84;letter-spacing:.14em;text-transform:uppercase}.lisa-menu-button{display:block!important;justify-self:end;border:0;background:transparent;color:var(--review-beige);font:400 18px/1 var(--amasis);padding:12px 0;cursor:pointer}.lisa-review-nav{display:none!important;position:absolute;top:72px;right:clamp(20px,4vw,64px);left:auto;min-width:230px;background:var(--review-matte-black);padding:20px 24px;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid color-mix(in srgb,var(--review-beige) 36%,transparent);box-shadow:0 20px 44px #0006}.lisa-review-nav.open{display:flex!important}.lisa-review-nav a{width:100%;color:var(--review-beige);font-family:var(--sans);font-size:.72rem}.lisa-hero{min-height:calc(100svh - 72px);isolation:isolate}.lisa-hero>img{inset:-10px;width:calc(100% + 20px);height:calc(100% + 20px);filter:blur(1.4px) saturate(.9) contrast(.96);transform:scale(1.035);object-position:center 46%}.lisa-hero .hero-shade{background:linear-gradient(180deg,#0d0c0a26,#0d0c0a5c),linear-gradient(90deg,#12100c4f,#12100c24 62%,#12100c38)}.lisa-hero .hero-content{width:min(760px,calc(100% - 44px));margin:0;z-index:2;text-shadow:0 2px 22px #0009}.lisa-centered .lisa-hero{justify-content:center}.lisa-centered .lisa-hero .hero-content{text-align:center}.lisa-left .lisa-hero .hero-content{margin-left:clamp(28px,7vw,120px);text-align:left;max-width:610px}.lisa-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(54px,5vw,76px);line-height:1.1;letter-spacing:-.02em;margin-bottom:27px}.lisa-venue-line{font:400 16px/1.4 var(--amasis)!important;letter-spacing:.26em;text-transform:uppercase;margin:0 auto 25px;max-width:650px}.lisa-tagline{font:400 16px/1.65 var(--aptos)!important;letter-spacing:.01em;margin:0 auto;max-width:650px}.lisa-left .lisa-venue-line,.lisa-left .lisa-tagline{margin-left:0}.lisa-cta{margin-top:34px!important;background:var(--review-beige);color:var(--review-matte-black);font:400 16px/1 var(--amasis);letter-spacing:.02em;text-transform:none;padding:17px 32px;box-shadow:none;text-shadow:none}.lisa-cta:hover{background:color-mix(in srgb,var(--review-beige) 86%,white)}@media(max-width:760px){.review-label{display:none}.lisa-hero{min-height:720px}.lisa-hero>img{object-position:58% center}.lisa-hero .hero-shade{background:linear-gradient(180deg,#0d0c0a42,#0d0c0a70)}.lisa-left .lisa-hero{align-items:flex-end}.lisa-left .lisa-hero .hero-content{margin:0 22px;padding-bottom:80px;max-width:520px}.lisa-hero h1{font-size:clamp(40px,11vw,48px)}.lisa-venue-line{letter-spacing:.16em}.lisa-review-nav{right:20px}.lisa-menu-button{font-size:16px}}@media(max-width:420px){.lisa-hero{min-height:650px}.lisa-hero .hero-content{width:calc(100% - 36px)}.lisa-left .lisa-hero .hero-content{margin-inline:18px}.lisa-cta{width:100%;padding-inline:18px}}

/* Lisa-confirmed review palette: scoped to review pages only. */
.lisa-review{
  --gold:var(--review-beige);
}
.lisa-review .button{
  background:var(--review-beige);
  color:var(--review-matte-black);
}
.lisa-review .button:hover{
  background:color-mix(in srgb,var(--review-beige) 86%,white);
  color:var(--review-matte-black);
}
.lisa-review .button:focus-visible{
  background:var(--review-beige);
  color:var(--review-matte-black);
  outline:3px solid color-mix(in srgb,var(--review-beige) 72%,white);
  outline-offset:3px;
}

/* Lisa review content refinements: September 2026. */
.lisa-review .intro .section-copy>p:not(.eyebrow),
.lisa-about .story .section-copy>p:not(.eyebrow),
.lisa-about .owner-story p,
.lisa-about .enhance-event p{
  font-family:var(--sans);
}
.lisa-review .availability .calendar-top,
.lisa-review .availability .booking-placeholder{
  font-family:var(--amasis);
}
.review-footer{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
}
.review-footer-identity address{
  margin-top:16px;
  color:#d7d2ca;
  font:400 .9rem/1.7 var(--aptos);
  font-style:normal;
}
.review-footer .footer-brand{
  color:var(--review-beige);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,3vw,3rem);
  font-style:normal;
  letter-spacing:-.02em;
}
.facebook-qr{
  margin:0;
  text-align:center;
  justify-self:end;
}
.qr-crop{
  width:190px;
  height:143px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:white;
}
.qr-crop img{
  width:143px;
  max-width:100%;
  height:143px;
  object-fit:contain;
  transform:none;
}
.facebook-qr figcaption{
  margin-top:10px;
  color:var(--review-beige);
  font:400 14px/1 var(--amasis);
}
.lisa-about .about-hero{
  min-height:68vh;
  align-items:flex-end;
}
.lisa-about .about-hero>img{
  object-position:center;
}
.lisa-about .about-hero .hero-shade{
  background:linear-gradient(180deg,transparent 48%,#0d0c0a99);
}
.lisa-about .about-hero .hero-content{
  width:auto;
  margin-left:clamp(24px,7vw,112px);
  padding:0 0 clamp(34px,5vw,64px);
}
.about-story-label{
  margin:0;
  color:var(--review-beige);
  font:500 clamp(2.5rem,5vw,4.5rem)/1 var(--serif)!important;
}
.lisa-about .owner-story{
  border-left-color:var(--review-beige);
}
.lisa-about .owner-story p{
  color:var(--ink);
}
.lisa-about .owner-story p:last-child{
  margin-bottom:0;
}
.enhance-event{
  padding:clamp(75px,8vw,120px) clamp(24px,8vw,135px);
  background:var(--ivory);
}
.enhance-event-inner{
  width:min(760px,100%);
  margin:auto;
}
.enhance-event h2{
  text-align:center;
  font-size:clamp(2.4rem,4vw,3.7rem);
}
.enhance-event p{
  margin:32px 0 0;
  text-align:left;
  color:var(--muted);
}
.lisa-about .about-cta h2{
  color:var(--review-beige);
}
@media(max-width:680px){
  .review-footer{
    grid-template-columns:1fr;
  }
  .facebook-qr{
    justify-self:start;
    margin-top:10px;
  }
  .lisa-about .about-hero{
    min-height:560px;
  }
  .lisa-about .about-hero .hero-content{
    margin-left:24px;
  }
}

/* Lisa events, availability, and lower-branding refinement. */
.lisa-review .events-hero{
  position:relative;
  min-height:clamp(620px,72vh,780px);
  display:grid;
  place-items:center;
  overflow:hidden;
  isolation:isolate;
  padding:clamp(80px,9vw,130px) clamp(24px,7vw,110px);
  color:white;
}
.lisa-review .events-hero::before{
  content:"";
  position:absolute;
  inset:-10px;
  z-index:-2;
  background:url("assets/pic-5.jpg") center 48%/cover no-repeat;
  filter:blur(6px) saturate(.86) contrast(.94);
  transform:scale(1.07);
}
.lisa-review .events-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,#0b0a08a6,#0b0a088c);
}
.lisa-review .events-content{
  width:min(1060px,100%);
}
.lisa-review .events-content h2{
  max-width:900px;
  margin:0 auto clamp(44px,6vw,70px);
  text-align:center;
  color:white;
  text-shadow:0 2px 18px #000a;
}
.lisa-review .events-columns{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(70px,10vw,150px);
  width:min(900px,100%);
  margin:auto;
}
.lisa-review .events-columns ul{
  margin:0;
  padding-left:1.25rem;
}
.lisa-review .events-columns li{
  padding:.38rem 0 .38rem .45rem;
  font:500 clamp(.94rem,1.25vw,1.08rem)/1.55 var(--aptos);
  text-shadow:0 1px 12px #000c;
}
.lisa-review .events-columns li::marker{
  color:var(--review-beige);
}
.lisa-review .review-reasons{
  display:grid;
  place-items:center;
  min-height:330px;
  background:var(--paper);
}
.lisa-review .review-reasons .section-heading{
  margin:0;
}
.lisa-review .reason-statement{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:clamp(10px,1.5vw,22px);
  margin:0;
  color:var(--review-matte-black);
  font-size:clamp(2.2rem,4.5vw,4.4rem);
}
.lisa-review .reason-diamond{
  color:#000;
  font-family:Georgia,"Times New Roman",serif;
  font-size:.42em;
  line-height:1;
}
.lisa-review .availability{
  background:var(--review-beige);
  color:var(--review-matte-black);
}
.lisa-review .availability-copy h2,
.lisa-review .availability-copy p,
.lisa-review .calendar-card,
.lisa-review .calendar-placeholder,
.lisa-review .calendar-placeholder strong,
.lisa-review .calendar-placeholder p,
.lisa-review .calendar-icon{
  color:var(--review-matte-black);
}
.lisa-review .calendar-card{
  background:#fff;
}
.review-footer .footer-street{
  font-size:1.04rem;
  line-height:1.7;
}
.review-footer .footer-flower{
  width:clamp(170px,20vw,265px);
  aspect-ratio:1;
  justify-self:end;
  align-self:center;
  background:#fff;
  mask-image:url("assets/flower-logo-mask.png");
  mask-repeat:no-repeat;
  mask-position:center;
  mask-size:contain;
  mask-mode:luminance;
}
@media(max-width:680px){
  .lisa-review .events-hero{
    min-height:auto;
    padding-block:82px;
  }
  .lisa-review .events-content h2{
    margin-bottom:42px;
    font-size:clamp(2.45rem,12vw,3.5rem);
  }
  .lisa-review .events-columns{
    grid-template-columns:1fr;
    gap:0;
    width:min(330px,100%);
  }
  .lisa-review .events-columns ul+ul{
    margin-top:0;
  }
  .lisa-review .review-reasons{
    min-height:300px;
  }
  .lisa-review .reason-statement{
    gap:9px;
    font-size:clamp(1.85rem,9vw,2.6rem);
  }
  .review-footer .footer-flower{
    justify-self:start;
    width:min(220px,70vw);
    margin-top:8px;
  }
}

/* Lisa annotated layout refinements: Pic #5 and one-line statements. */
.lisa-review .reason-statement{
  flex-wrap:nowrap;
  white-space:nowrap;
  gap:clamp(8px,1.1vw,16px);
  font-size:clamp(2rem,3.4vw,3.6rem);
}
.lisa-review .availability-copy{
  max-width:none;
}
.lisa-review .availability-copy h2{
  white-space:nowrap;
  font-size:clamp(2.15rem,3vw,2.8rem);
}
.review-footer{
  grid-template-columns:1fr;
  justify-items:center;
  text-align:center;
}
.review-footer-identity{
  align-items:center!important;
}
.review-footer-identity address{
  text-align:center;
}
@media(min-width:1051px){
  .lisa-review .availability{
    grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
    gap:clamp(36px,5vw,72px);
  }
}
@media(max-width:680px){
  .lisa-review .reason-statement{
    gap:5px;
    font-size:clamp(1.35rem,6vw,1.6rem);
  }
  .lisa-review .availability-copy h2{
    white-space:normal;
    font-size:clamp(2rem,10vw,2.6rem);
  }
}

/* Keep the preserved Gallery code out of the visible review layout. */
.lisa-review .gallery[hidden]{
  display:none!important;
}
/* Lisa mobile color revision: color-only overrides. */
.lisa-review .booking-placeholder{
  background:var(--review-beige);
  color:var(--review-matte-black);
}
.lisa-review .booking-placeholder:hover{
  background:color-mix(in srgb,var(--review-beige) 88%,var(--review-matte-black));
  color:var(--review-matte-black);
}
.lisa-review .booking-placeholder:focus-visible{
  background:var(--review-beige);
  color:var(--review-matte-black);
  outline:3px solid color-mix(in srgb,var(--review-matte-black) 72%,transparent);
  outline-offset:3px;
}
.lisa-review .review-footer{
  background:var(--review-beige);
  color:var(--review-matte-black);
}
.lisa-review .review-footer .footer-brand,
.lisa-review .review-footer address,
.lisa-review .review-footer p,
.lisa-review .review-footer .copyright{
  color:var(--review-matte-black);
}
.lisa-review .review-footer .copyright{
  border-top-color:color-mix(in srgb,var(--review-matte-black) 28%,transparent);
}
/* Lisa Availability color correction: review previews only. */
.lisa-review .availability{
  background:var(--review-matte-black);
}
.lisa-review .availability-copy h2{
  color:var(--review-beige);
}


/* Google Calendar-backed availability preview. */
.lisa-review .calendar-card{
  display:grid;
  justify-items:stretch;
  gap:24px;
  min-width:0;
}
.availability-calendar{
  width:100%;
  min-width:0;
}
.calendar-toolbar{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 44px;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}
.calendar-month{
  margin:0;
  color:var(--review-matte-black);
  font:600 clamp(1.3rem,2.2vw,1.7rem)/1.2 var(--serif);
  text-align:center;
}
.calendar-nav{
  width:44px;
  height:44px;
  border:1px solid color-mix(in srgb,var(--review-matte-black) 24%,transparent);
  border-radius:50%;
  background:#fff;
  color:var(--review-matte-black);
  font:400 1.65rem/1 var(--aptos);
  cursor:pointer;
}
.calendar-nav:hover{
  background:color-mix(in srgb,var(--review-beige) 45%,white);
}
.calendar-nav:focus-visible{
  outline:3px solid var(--review-beige);
  outline-offset:2px;
}
.calendar-weekdays,
.calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:5px;
}
.calendar-weekdays{
  margin-bottom:7px;
  color:#625e58;
  font:600 clamp(.61rem,1.2vw,.76rem)/1 var(--aptos);
  letter-spacing:.04em;
  text-align:center;
  text-transform:uppercase;
}
.calendar-day{
  position:relative;
  display:flex;
  min-width:0;
  min-height:58px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  border:1px solid #ddd8d0;
  border-radius:6px;
  background:#fff;
  color:var(--review-matte-black);
  font-family:var(--aptos);
}
.calendar-day-empty{
  border-color:transparent;
  background:transparent;
}
.calendar-day-number{
  font-size:.92rem;
  font-weight:600;
  line-height:1;
}
.calendar-day-state{
  overflow:hidden;
  max-width:100%;
  color:#5d5852;
  font-size:.57rem;
  line-height:1;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.calendar-day.is-unavailable{
  border-color:#b8b5b0;
  background:#d2d0cc;
  color:#4d4b48;
}
.calendar-day.is-unavailable .calendar-day-number{
  text-decoration:line-through;
  text-decoration-thickness:1px;
}
.calendar-day.is-past,
.calendar-day.is-unknown,
.calendar-day.is-loading{
  border-color:#e1ded9;
  background:#efede9;
  color:#918d87;
}
.calendar-day.is-today{
  box-shadow:inset 0 0 0 3px var(--review-beige);
}
.calendar-status{
  min-height:2.8em;
  margin:13px 0 0;
  color:#5e5952;
  font:500 .78rem/1.4 var(--aptos);
  text-align:center;
}
.calendar-status.is-error{
  color:#4f332e;
}
.lisa-review .calendar-card .booking-placeholder{
  justify-self:center;
  margin-top:0;
}
@media(max-width:520px){
  .lisa-review .calendar-card{
    gap:20px;
  }
  .calendar-toolbar{
    grid-template-columns:40px minmax(0,1fr) 40px;
    gap:7px;
  }
  .calendar-nav{
    width:40px;
    height:40px;
  }
  .calendar-weekdays,
  .calendar-grid{
    gap:3px;
  }
  .calendar-weekdays{
    font-size:.57rem;
    letter-spacing:0;
  }
  .calendar-day{
    min-height:45px;
    border-radius:4px;
  }
  .calendar-day-number{
    font-size:.8rem;
  }
  .calendar-day-state{
    font-size:0;
  }
  .calendar-day.is-unavailable .calendar-day-state::after{
    content:"×";
    font-size:.72rem;
  }
  .calendar-day.is-past .calendar-day-state::after{
    content:"Past";
    font-size:.5rem;
  }
  .calendar-day.is-unknown .calendar-day-state::after,
  .calendar-day.is-loading .calendar-day-state::after{
    content:"—";
    font-size:.65rem;
  }
}


/* Calendar state refinement: date numbers stay uncluttered; status remains in aria labels. */
.calendar-day.is-past{
  border-color:#9f9a93;
  background:#aaa69f;
  color:#514d47;
  cursor:default;
}
.calendar-day.is-unavailable{
  border-color:#b6b1aa;
  background:#d0cdc8;
  color:#4d4944;
  cursor:default;
}
.calendar-day.is-unavailable .calendar-day-number{
  text-decoration:none;
}
.calendar-day[data-tooltip]::before,
.calendar-day[data-tooltip]::after{
  position:absolute;
  z-index:20;
  pointer-events:none;
  opacity:0;
  transition:opacity 140ms ease,transform 140ms ease;
}
.calendar-day[data-tooltip]::before{
  content:attr(data-tooltip);
  bottom:calc(100% + 9px);
  left:50%;
  padding:6px 9px;
  border-radius:4px;
  background:var(--review-matte-black);
  color:var(--review-beige);
  font:500 .68rem/1 var(--aptos);
  letter-spacing:.02em;
  white-space:nowrap;
  box-shadow:0 5px 16px #0003;
  transform:translate(-50%,3px);
}
.calendar-day[data-tooltip]::after{
  content:"";
  bottom:calc(100% + 4px);
  left:50%;
  border:5px solid transparent;
  border-top-color:var(--review-matte-black);
  transform:translate(-50%,3px);
}
.calendar-day[data-tooltip]:focus-visible{
  outline:3px solid var(--review-beige);
  outline-offset:2px;
}
.calendar-day[data-tooltip]:focus-visible::before,
.calendar-day[data-tooltip]:focus-visible::after{
  opacity:1;
  transform:translate(-50%,0);
}
@media(hover:hover) and (pointer:fine){
  .calendar-day[data-tooltip]:hover::before,
  .calendar-day[data-tooltip]:hover::after{
    opacity:1;
    transform:translate(-50%,0);
  }
}
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n+1)::before{
  left:0;
  transform:translate(0,3px);
}
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n+1)::after{
  left:16px;
  transform:translate(0,3px);
}
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n)::before{
  right:0;
  left:auto;
  transform:translate(0,3px);
}
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n)::after{
  right:16px;
  left:auto;
  transform:translate(0,3px);
}
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n+1):focus-visible::before,
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n+1):focus-visible::after,
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n):focus-visible::before,
.calendar-grid>.calendar-day[data-tooltip]:nth-child(7n):focus-visible::after{
  transform:translate(0,0);
}
@media(hover:hover) and (pointer:fine){
  .calendar-grid>.calendar-day[data-tooltip]:nth-child(7n+1):hover::before,
  .calendar-grid>.calendar-day[data-tooltip]:nth-child(7n+1):hover::after,
  .calendar-grid>.calendar-day[data-tooltip]:nth-child(7n):hover::before,
  .calendar-grid>.calendar-day[data-tooltip]:nth-child(7n):hover::after{
    transform:translate(0,0);
  }
}


/* Review-only booking inquiry modal and Netlify Forms states. */
body.booking-modal-open{
  overflow:hidden;
}
.booking-modal[hidden],
.booking-form-view[hidden],
.booking-success[hidden]{
  display:none!important;
}
.booking-modal{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:clamp(14px,3vw,34px);
}
.booking-modal-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:#090908c9;
  cursor:default;
}
.booking-dialog{
  position:relative;
  z-index:1;
  width:min(720px,100%);
  max-height:calc(100svh - 28px);
  overflow:auto;
  overscroll-behavior:contain;
  border:1px solid color-mix(in srgb,var(--review-beige) 58%,white);
  border-radius:12px;
  background:#fcfaf6;
  color:var(--review-matte-black);
  box-shadow:0 28px 90px #0008;
  padding:clamp(28px,5vw,52px);
}
.booking-modal-close{
  position:absolute;
  top:14px;
  right:14px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--review-matte-black) 20%,transparent);
  border-radius:50%;
  background:transparent;
  color:var(--review-matte-black);
  font:300 1.65rem/1 var(--aptos);
  cursor:pointer;
}
.booking-modal-close:hover{
  background:color-mix(in srgb,var(--review-beige) 55%,white);
}
.booking-modal-close:focus-visible{
  outline:3px solid var(--review-beige);
  outline-offset:2px;
}
.booking-eyebrow{
  margin:0 54px 10px 0;
  color:#5b544b;
  font:600 .67rem/1.2 var(--aptos);
  letter-spacing:.17em;
  text-transform:uppercase;
}
.booking-dialog h2{
  margin:0 54px 13px 0;
  color:var(--review-matte-black);
  font:600 clamp(2.55rem,6vw,4rem)/.98 var(--serif);
  letter-spacing:-.02em;
}
.booking-intro{
  max-width:590px;
  margin:0 0 30px;
  color:#5d5851;
  font:400 .96rem/1.7 var(--aptos);
}
.booking-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:21px 18px;
}
.booking-field{
  display:grid;
  align-content:start;
  gap:8px;
  min-width:0;
}
.booking-field-wide{
  grid-column:1/-1;
}
.booking-field label{
  color:var(--review-matte-black);
  font:600 .75rem/1.25 var(--aptos);
  letter-spacing:.07em;
  text-transform:uppercase;
}
.booking-field .optional{
  color:#706a62;
  font-weight:400;
  letter-spacing:0;
  text-transform:none;
}
.booking-field input,
.booking-field textarea{
  width:100%;
  min-width:0;
  border:1px solid #bbb2a6;
  border-radius:5px;
  background:white;
  color:var(--review-matte-black);
  font:400 1rem/1.35 var(--aptos);
  padding:13px 14px;
  transition:border-color 140ms ease,box-shadow 140ms ease;
}
.booking-field textarea{
  min-height:116px;
  resize:vertical;
}
.booking-field input:focus,
.booking-field textarea:focus{
  border-color:var(--review-matte-black);
  outline:0;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--review-beige) 70%,transparent);
}
.booking-field [aria-invalid="true"]{
  border-color:#8a3933;
  box-shadow:0 0 0 2px #8a393326;
}
.field-error{
  min-height:1.3em;
  margin:0;
  color:#7a302c;
  font:500 .78rem/1.35 var(--aptos);
}
.booking-form-status{
  min-height:1.45em;
  margin:18px 0 0;
  color:#7a302c;
  font:600 .82rem/1.45 var(--aptos);
}
.booking-submit{
  width:100%;
  margin-top:18px;
  border:1px solid var(--review-beige);
  background:var(--review-beige)!important;
  color:var(--review-matte-black)!important;
  font:600 .82rem/1 var(--aptos);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.booking-submit:hover{
  background:color-mix(in srgb,var(--review-beige) 88%,white)!important;
}
.booking-submit:disabled{
  cursor:wait;
  opacity:.68;
}
.booking-submit:focus-visible,
.booking-success-close:focus-visible{
  outline:3px solid var(--review-matte-black)!important;
  outline-offset:3px;
}
.netlify-honeypot{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(1px,1px,1px,1px)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
.booking-success{
  position:relative;
  isolation:isolate;
  min-height:440px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:7px;
  text-align:center;
}
.booking-success::before{
  content:"";
  position:absolute;
  inset:3% 6%;
  z-index:-1;
  background:var(--review-matte-black);
  opacity:.14;
  -webkit-mask:url("assets/flower-logo-mask.png") center/contain no-repeat;
  mask:url("assets/flower-logo-mask.png") center/contain no-repeat;
}
.booking-success-content{
  width:min(500px,100%);
  padding:clamp(26px,5vw,48px);
}
.booking-success h2{
  margin:0 0 18px;
}
.booking-success p{
  margin:0 auto 13px;
  color:#39352f;
  font:400 1rem/1.7 var(--aptos);
}
.booking-success-note{
  font-size:.86rem!important;
}
.booking-success-note a{
  color:var(--review-matte-black);
  font-weight:600;
}
.booking-success-close{
  margin-top:16px;
  min-width:150px;
}
@media(max-width:600px){
  .booking-modal{
    align-items:end;
    padding:0;
  }
  .booking-dialog{
    width:100%;
    max-height:min(92svh,820px);
    border-radius:14px 14px 0 0;
    padding:32px 20px calc(26px + env(safe-area-inset-bottom));
  }
  .booking-modal-close{
    top:10px;
    right:10px;
  }
  .booking-dialog h2{
    font-size:clamp(2.4rem,12vw,3.25rem);
  }
  .booking-fields{
    grid-template-columns:1fr;
    gap:17px;
  }
  .booking-field-wide{
    grid-column:auto;
  }
  .booking-success{
    min-height:470px;
  }
}
@media(prefers-reduced-motion:reduce){
  .booking-field input,
  .booking-field textarea{
    transition:none;
  }
}


/* Approved left-aligned production hero refinements. */
/* Lisa refinement: left-aligned review only. Shared and centered styles remain untouched. */
.lisa-left .lisa-hero{align-items:flex-start}
.lisa-left .lisa-hero>img{
  inset:0;
  width:100%;
  height:100%;
  transform:none;
  object-position:54% 46%;
}
.lisa-left .lisa-hero .hero-content{
  padding-top:clamp(72px,11vh,126px);
  padding-bottom:44px;
}
.lisa-left .lisa-cta{
  background:var(--review-beige);
  color:var(--ink);
}
.lisa-left .lisa-cta:hover{
  background:color-mix(in srgb,var(--review-beige) 86%,white);
  color:var(--ink);
}
@media (max-width:1050px){
  .lisa-left .lisa-hero>img{object-position:59% center}
  .lisa-left .lisa-hero .hero-content{padding-top:clamp(68px,9vh,96px)}
}
@media (max-width:760px){
  .lisa-left .lisa-hero{align-items:flex-start}
  .lisa-left .lisa-hero>img{object-position:68% center}
  .lisa-left .lisa-hero .hero-content{
    margin:0 22px;
    padding-top:64px;
    padding-bottom:40px;
  }
}
@media (max-width:420px){
  .lisa-left .lisa-hero>img{object-position:70% center}
  .lisa-left .lisa-hero .hero-content{
    margin-inline:18px;
    padding-top:54px;
  }
}

/* Desktop/laptop refinement only; mobile rules below remain unchanged. */
@media (min-width:761px){
  .lisa-left .lisa-hero h1{
    font-size:clamp(64px,6vw,92px);
    margin-bottom:30px;
  }
  .lisa-left .lisa-venue-line{margin-bottom:27px}
  .lisa-left .lisa-tagline{line-height:1.7!important}
  .lisa-left .lisa-cta{margin-top:38px!important}
}
