/* Amara Booking: self-contained styles (works with any theme).
   Tokens mirror the Amara theme so it looks native there. */
.amara-booking{
  --ab-ink:#121214; --ab-cream:#F9F5F1; --ab-orange:#C9A24A; --ab-orange-2:#B3892F; --ab-wine:#7C1D2C; --ab-wine-2:#5F1621;
  --ab-grey-d:#A6A6AB; --ab-grey-dd:#77777D; --ab-grey-l:#5E5E60;
  --ab-line-d:rgba(255,255,255,.11);
  --ab-serif:Optima,"Iowan Old Style",Georgia,"Times New Roman",serif;
  --ab-sans:"Work Sans","Segoe UI",system-ui,Arial,sans-serif;
  font-family:var(--ab-sans);font-size:16px;line-height:1.65;
}
.amara-booking *{box-sizing:border-box}
.amara-booking .booking{display:grid;grid-template-columns:1.4fr .9fr;border-radius:22px;overflow:hidden;
  box-shadow:0 26px 60px -28px rgba(0,0,0,.65);background:var(--ab-ink)}
.amara-booking h3{margin:0;font-family:var(--ab-serif);font-weight:500;line-height:1.2}
.amara-booking p{margin:0}
.amara-booking :focus-visible{outline:2px solid var(--ab-orange);outline-offset:3px;border-radius:2px}
.amara-booking .ab-eyebrow{display:inline-block;color:var(--ab-orange);text-transform:uppercase;font-size:14px;font-weight:500;letter-spacing:.08em}

.amara-booking .bk-form{background:var(--ab-cream);padding:clamp(24px,3.4vw,42px)}
.amara-booking .bk-form h3{color:var(--ab-ink);font-size:26px;margin-bottom:6px}
.amara-booking .bk-form .bk-sub{color:var(--ab-grey-l);font-size:13.5px;margin-bottom:24px}
.amara-booking .fld{margin-bottom:18px}
.amara-booking .fld label{display:block;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ab-ink);margin-bottom:8px}
.amara-booking .fld .hint{display:block;margin-top:6px;font-size:12px;color:var(--ab-grey-l)}
.amara-booking .row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.amara-booking select,.amara-booking input,.amara-booking textarea{
  width:100%;font-family:var(--ab-sans);font-size:15px;color:var(--ab-ink);background:#fff;
  border:1px solid #E3DBCF;border-radius:12px;padding:13px 15px;transition:border-color .25s ease,box-shadow .25s ease}
.amara-booking select:hover,.amara-booking input:hover,.amara-booking textarea:hover{border-color:var(--ab-orange)}
.amara-booking select:focus,.amara-booking input:focus,.amara-booking textarea:focus{outline:none;border-color:var(--ab-orange);box-shadow:0 0 0 3px rgba(201,162,74,.25)}
.amara-booking select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ab-orange) 50%),linear-gradient(135deg,var(--ab-orange) 50%,transparent 50%);background-position:calc(100% - 20px) center,calc(100% - 14px) center;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:40px}
.amara-booking textarea{resize:vertical;min-height:64px}
.amara-booking .chips{display:flex;flex-wrap:wrap;gap:10px}
.amara-booking .chip{font-family:var(--ab-sans);font-size:14px;color:var(--ab-ink);background:#fff;border:1px solid #E3DBCF;border-radius:56px;padding:10px 18px;cursor:pointer;transition:all .22s ease;font-variant-numeric:tabular-nums}
.amara-booking .chip:hover{border-color:var(--ab-orange);color:var(--ab-orange)}
.amara-booking .chip[aria-pressed="true"]{background:var(--ab-orange);color:#fff;border-color:var(--ab-orange);font-weight:600}
.amara-booking .ab-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;margin-top:8px;
  font-family:var(--ab-sans);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  padding:17px 32px;border-radius:56px;border:0;cursor:pointer;background:var(--ab-orange);color:#fff;transition:background .3s ease,transform .3s ease}
.amara-booking .ab-btn:hover{background:var(--ab-orange-2);transform:translateY(-2px)}
.amara-booking .ab-btn:disabled{opacity:.6;cursor:wait;transform:none}
.amara-booking .ab-btn-dark{width:auto;background:var(--ab-ink)}
.amara-booking .ab-btn-dark:hover{background:#000}
.amara-booking .form-note{font-size:12.5px;color:var(--ab-grey-l);margin-top:14px;text-align:center}

.amara-booking .bk-sum{background:var(--ab-ink);color:var(--ab-grey-d);padding:clamp(24px,3.4vw,42px);border-left:1px solid var(--ab-line-d)}
.amara-booking .bk-sum h3{color:#fff;font-size:24px}
.amara-booking .sum-list{list-style:none;padding:0;margin:20px 0 0}
.amara-booking .sum-list li{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--ab-line-d);font-size:14.5px}
.amara-booking .sum-list .k{color:var(--ab-grey-d)}
.amara-booking .sum-list .v{color:#fff;font-weight:500;text-align:right}
.amara-booking .sum-list .v.empty{color:var(--ab-grey-dd);font-weight:400;font-style:italic}
.amara-booking .sum-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:22px}
.amara-booking .sum-total .k{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ab-grey-d)}
.amara-booking .sum-total .v{font-family:var(--ab-serif);font-size:36px;color:var(--ab-orange)}

.amara-booking .booking.done .bk-form,.amara-booking .booking.done .bk-sum{display:none}
.amara-booking .success{display:none;grid-column:1/-1;background:var(--ab-cream);padding:clamp(34px,5vw,60px);text-align:center}
.amara-booking .booking.done .success{display:block}
.amara-booking .success .tick{width:76px;height:76px;border-radius:50%;margin:0 auto 20px;display:grid;place-items:center;background:var(--ab-orange);color:#fff}
.amara-booking .success .tick svg{width:36px;height:36px}
.amara-booking .success h3{color:var(--ab-ink);font-size:clamp(26px,3.2vw,36px)}
.amara-booking .success p{color:var(--ab-grey-l);margin:14px auto 0;max-width:46ch}
.amara-booking .success .recap{margin:24px auto 0;max-width:430px;text-align:left;background:#fff;border:1px solid #E3DBCF;border-radius:14px;padding:18px 22px}
.amara-booking .success .recap div{display:flex;justify-content:space-between;gap:14px;padding:7px 0;font-size:14.5px;color:var(--ab-ink)}
.amara-booking .success .recap .k{color:var(--ab-grey-l)}
.amara-booking .success .ab-btn{margin-top:24px;width:auto;padding-inline:28px}

@media(max-width:1120px){
  .amara-booking .booking{grid-template-columns:1fr}
  .amara-booking .bk-sum{border-left:0;border-top:1px solid var(--ab-line-d)}
}
@media(max-width:700px){
  .amara-booking .row-2{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .amara-booking *{transition-duration:.001ms!important}
}

/* brand re-skin: burgundy fills (keep the dark "Book Another" button dark) */
.amara-booking .chip[aria-pressed="true"]{background:var(--ab-wine);border-color:var(--ab-wine)}
.amara-booking .ab-btn:not(.ab-btn-dark){background:var(--ab-wine)}
.amara-booking .ab-btn:not(.ab-btn-dark):hover{background:var(--ab-wine-2)}
.amara-booking .success .tick{background:var(--ab-wine)}

/* WhatsApp hand-off button on the success screen (must stay after the
   burgundy re-skin rules so the green wins at equal specificity) */
.amara-booking .success .ab-btn-wa{background:#1FAF54;color:#fff;gap:10px;text-decoration:none}
.amara-booking .success .ab-btn-wa:hover{background:#178A42}
.amara-booking .ab-btn-wa svg{width:20px;height:20px;flex:none}
.amara-booking .success .ab-btn-wa[hidden]{display:none}
.amara-booking .success .wa-note{margin-top:10px;font-size:12.5px;color:var(--ab-grey-l)}
