/* The booking page and the booking form. Brand colours, one column, large
   touch targets, because most of these are filled in on a phone. The same
   file styles the standalone page and the form inside a theme page. */

.alb-page{--brand:var(--terracotta,#B4522E);--deep:var(--terracotta-deep,#9E4526);
  --ink:var(--al-ink,#1A120B);--dim:var(--clay,#6B4A32);
  --faint:color-mix(in srgb, var(--clay,#6B4A32) 68%, var(--cream,#F7F0E3));
  --line:rgba(26,18,11,.18);--mist:var(--sand,#E7D8BE);
  margin:0;background:var(--cream,#F7F0E3);color:var(--ink);
  font:400 17px/1.55 "Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  min-height:100%}
.alb-page *{box-sizing:border-box}

.alb-top{padding:26px 16px 10px;text-align:center}
.alb-top img{height:86px;width:auto;display:inline-block}
.alb-main{padding:10px 16px 40px}
.alb-bottom{padding:0 16px 40px;text-align:center}
.alb-bottom a{color:var(--deep);font-size:14px;letter-spacing:.14em;text-transform:uppercase;
  text-decoration:none;font-weight:600}

.alb-card{max-width:620px;margin:0 auto;background:var(--cream,#F7F0E3);border:1px solid var(--line);
  border-top:4px solid var(--brand);border-radius:10px;padding:30px 26px 34px}
.alb-eyebrow{margin:0 0 6px;font-family:"Cormorant Garamond",Georgia,serif;font-size:15px;
  font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--deep)}
.alb-card h1{margin:0 0 10px;font-size:clamp(26px,5vw,34px);line-height:1.12;font-weight:800;
  letter-spacing:-.015em}
.alb-lede{margin:0 0 22px;color:var(--dim);font-size:17px}
.alb-note{margin:14px 0 0;color:var(--faint);font-size:14.5px;line-height:1.5}
.alb-help{margin:0 0 10px;color:var(--faint);font-size:14px}
.alb-lab{margin:0;font-weight:700;font-size:15px}
.alb-error{margin:0 0 18px;padding:12px 14px;border-radius:8px;background:#fcebe8;
  border:1px solid #f0c3bb;color:#8d2416;font-size:15.5px}

.alb-form{display:flex;flex-direction:column;gap:16px;margin-top:4px}
.alb-row{display:grid;gap:16px}
@media(min-width:560px){.alb-row{grid-template-columns:1fr 1fr}}
.alb-f{display:flex;flex-direction:column;gap:6px;min-width:0}
.alb-f label{font-size:14px;font-weight:700;color:var(--dim)}
.alb-f input,.alb-f select,.alb-f textarea{
  min-height:52px;padding:13px 14px;border:1px solid var(--line);border-radius:8px;
  background:#fff;color:var(--ink);font:inherit;font-size:16.5px;width:100%}
.alb-f textarea{min-height:96px;resize:vertical}
.alb-f input:focus-visible,.alb-f select:focus-visible,.alb-f textarea:focus-visible,
.alb-btn:focus-visible{outline:3px solid #2AC5F6;outline-offset:1px}

.alb-party{border:1px solid var(--line);background:var(--mist);border-radius:10px;padding:16px}
.alb-party[hidden]{display:none}
.alb-party-list{display:grid;gap:14px}
@media(min-width:560px){.alb-party-list{grid-template-columns:1fr 1fr}}

/* the honeypot is for robots, never for people */
.alb-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.alb-btn{min-height:56px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--brand);color:#fff;border:1px solid var(--brand);border-radius:8px;
  font-size:17px;font-weight:800;letter-spacing:.01em;padding:0 26px;cursor:pointer;
  text-decoration:none}
.alb-btn:hover{background:var(--deep);border-color:var(--deep);color:#fff}
.alb-btn.g{background:transparent;color:var(--ink);border-color:var(--line);font-weight:700;margin-top:22px}
.alb-btn.g:hover{background:var(--mist);color:var(--ink)}

/* the thank you */
.alb-done .alb-ref{margin:22px 0 6px;font-size:34px;font-weight:800;letter-spacing:.16em;
  color:var(--deep);text-align:center;padding:18px;border:1px solid var(--line);border-radius:10px}
.alb-sum{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;margin:22px 0 0}
.alb-sum dt{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--faint);margin:0}
.alb-sum dd{margin:0;font-size:16.5px}

@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
