*{box-sizing:border-box}.lis-head{background:#192945;color:#fff;padding:20px max(20px,calc((100vw - 1060px)/2));display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.lis-head a{color:#f5d48b;font-weight:800;text-decoration:none}.lis-shell{min-height:75vh;background:#faf7f0;padding:40px 16px}.lis-panel{max-width:1000px;margin:auto;background:#fff;border-radius:24px;box-shadow:0 12px 42px #1c2b4020;padding:clamp(20px,4vw,46px);color:#1a2943}.lis-panel h1,.lis-panel h2{color:#192945;margin:12px 0}.lis-panel h1{font-size:clamp(28px,4vw,44px)}.lis-panel h2{margin-top:30px}.lis-kicker{color:#a57a2c;letter-spacing:2px;font-weight:800;font-size:12px}.lis-form{display:grid;gap:14px;margin-top:18px}.lis-form label{display:grid;gap:6px;font-weight:600}.lis-form input,.lis-form select,.lis-scroll input,.lis-scroll select{padding:12px;border:1px solid #d7dce5;border-radius:10px;width:100%;max-width:100%;background:#fff;color:#192945}.lis-button{background:#b48a3d;color:#fff;border:0;border-radius:12px;padding:14px 22px;font-weight:800;cursor:pointer}.lis-button:disabled{opacity:.5}.lis-times{display:flex;gap:10px;flex-wrap:wrap}.lis-times label input{position:absolute;opacity:0;width:1px}.lis-times label span{display:block;padding:12px 18px;border:1px solid #c7a25d;border-radius:12px;cursor:pointer}.lis-times label input:checked+span{background:#192945;color:white}.lis-times label input:focus-visible+span{outline:3px solid #c7a25d}.lis-alert{padding:16px;border-radius:12px;background:#fff0e8;border:1px solid #e7b7a3}.lis-alert.good{background:#e8f6ee;border-color:#a9d2b9}.lis-note,.lis-foot{font-size:13px;color:#6d7687}.lis-foot{text-align:center;padding:22px}.lis-scroll{overflow-x:auto}.lis-scroll table{border-collapse:collapse;width:100%;min-width:660px}.lis-scroll td,.lis-scroll th{border-bottom:1px solid #e5e7eb;padding:10px;text-align:left;vertical-align:top}.lis-inline{display:flex;gap:12px;align-items:center;margin:10px 0}.lis-inline button,.lis-scroll button{padding:9px 12px;cursor:pointer}
/* Cabeçalho e rodapé compartilhando a identidade da Home */
.lis-home-brand{text-decoration:none;display:inline-flex;align-items:center;cursor:pointer;min-height:44px}
.lis-home-brand:focus-visible{outline:3px solid #c9a227;outline-offset:4px;border-radius:5px}
main.lis-shell{padding-top:calc(clamp(70px, 8vw, 90px) + 28px);padding-bottom:40px}
@media(max-width:600px){main.lis-shell{padding-top:calc(clamp(70px, 8vw, 90px) + 20px)}}

/* LIS Premium: respiro visual entre cabecalho e conteudo da agenda */
main.lis-shell > .lis-panel { margin-top: 44px !important; }
@media (max-width: 600px) { main.lis-shell > .lis-panel { margin-top: 24px !important; } }

/* LIS Agenda Premium V4: escopo isolado para não afetar o admin */
.lis-booking-page{max-width:1000px!important;padding:clamp(22px,4vw,48px)!important}
.lis-booking-page .lis-hero{background:linear-gradient(125deg,#142745,#233b60);color:#fff;border-radius:20px;padding:clamp(24px,4vw,44px);margin-bottom:26px;position:relative;overflow:hidden}
.lis-booking-page .lis-hero:after{content:"";position:absolute;width:200px;height:200px;border:1px solid #d9b65d60;border-radius:50%;right:-85px;top:-110px}
.lis-booking-page .lis-hero .lis-kicker{color:#e7c572}.lis-booking-page .lis-hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(34px,5vw,54px);line-height:1.05;color:#fff;margin:18px 0 12px;max-width:690px}
.lis-booking-page .lis-hero p{color:#e2e8f1;line-height:1.65;max-width:650px;margin:0}
.lis-booking-page .lis-steps{display:flex;flex-wrap:wrap;gap:14px 28px;margin:0 0 26px;color:#34445f;font-size:14px;font-weight:600}
.lis-booking-page .lis-steps span{display:flex;align-items:center;gap:9px}.lis-booking-page .lis-steps b{display:grid;place-items:center;background:#f4e8cd;color:#8b681e;border-radius:50%;width:27px;height:27px}
.lis-booking-page .lis-filter{grid-template-columns:1fr 1fr auto;align-items:end;gap:14px;margin:0 0 28px;padding:22px;background:#f8f6f1;border:1px solid #eee2cb;border-radius:16px}
.lis-booking-page .lis-filter label{font-size:13px}.lis-booking-page .lis-filter .lis-button{min-height:47px;white-space:nowrap}
.lis-booking-page .lis-section-heading h2{font-size:22px;margin:0 0 6px}.lis-booking-page .lis-section-heading p{color:#647087;margin:0 0 18px;font-size:14px}
.lis-booking-page .lis-availability{margin:0 0 30px}.lis-booking-page .lis-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.lis-booking-page .lis-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:13px 5px;border:1px solid #e1d7c5;border-radius:14px;text-decoration:none;color:#20344f;background:#fff;min-height:114px;transition:background .15s,border-color .15s,transform .15s}
.lis-booking-page .lis-day:hover{border-color:#c39636;transform:translateY(-2px)}.lis-booking-page .lis-day.is-selected{border:2px solid #c29534;background:#fff8e8}
.lis-booking-page .lis-day.is-unavailable{opacity:.5}.lis-booking-page .lis-day strong{font-size:24px;line-height:1}.lis-booking-page .lis-day-name,.lis-booking-page .lis-day-month{font-size:12px}.lis-booking-page .lis-day small{font-size:10px;color:#9b7426;text-align:center}
.lis-booking-page .lis-booking-form{margin-top:0;gap:12px}.lis-booking-page .lis-times{gap:12px;margin-bottom:16px}.lis-booking-page .lis-times label span{min-width:100px;text-align:center;font-weight:700;background:#fffaf1;border-color:#d9b56a}
.lis-booking-page .lis-times label input:checked+span{background:#192945;border-color:#192945}.lis-booking-page .lis-empty{padding:15px;border:1px dashed #dbcaa7;border-radius:12px;color:#6c6070;background:#fffaf2}
.lis-booking-page .lis-client-heading{border-top:1px solid #eae4d8;padding-top:24px;margin-top:10px}.lis-booking-page .lis-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lis-booking-page .lis-fields .lis-wide{grid-column:1/-1}
.lis-booking-page .lis-fields input{min-height:48px}.lis-booking-page .lis-submit{min-height:54px;background:linear-gradient(100deg,#b7831c,#dfb938);font-size:15px}.lis-booking-page .lis-submit span{margin-left:8px}
.lis-booking-page .lis-booking-disclaimer{text-align:center;font-size:12px;color:#657085;line-height:1.5;margin:0}.lis-booking-page .lis-note{line-height:1.6}
@media(max-width:820px){.lis-booking-page .lis-filter{grid-template-columns:1fr 1fr}.lis-booking-page .lis-filter .lis-button{grid-column:1/-1}.lis-booking-page .lis-day-grid{grid-template-columns:repeat(7,minmax(75px,1fr));overflow-x:auto;padding-bottom:8px}}
@media(max-width:560px){.lis-booking-page .lis-filter,.lis-booking-page .lis-fields{grid-template-columns:1fr}.lis-booking-page .lis-fields .lis-wide{grid-column:auto}.lis-booking-page .lis-steps{gap:10px}.lis-booking-page .lis-day-grid{grid-template-columns:repeat(7,80px)}.lis-booking-page .lis-hero{border-radius:15px}}

/* LIS Premium - alinhamento dos campos de contato (V6) */
.lis-booking-page .lis-fields{align-items:start}
.lis-booking-page .lis-fields > label{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;margin:0}
.lis-booking-page .lis-fields > label > input{height:52px;min-height:52px;max-height:52px;line-height:normal;margin:0;box-sizing:border-box}
.lis-booking-page .lis-fields #lis-whatsapp-help{display:block;margin:0;color:#657085;font-size:12px;font-weight:400;line-height:1.45}
@media(max-width:560px){.lis-booking-page .lis-fields{grid-template-columns:minmax(0,1fr);gap:18px}}

/* LIS Premium - mensagens e etapas com respiro e contraste */
.lis-booking-page .lis-alert {
  margin: 0 0 24px !important;
  padding: 18px 22px !important;
  line-height: 1.65;
  border-radius: 14px;
}
.lis-booking-page .lis-steps {
  background: #f8f6f1 !important;
  color: #253b58 !important;
  border: 1px solid #eee2cb;
  border-radius: 16px;
  padding: 20px 22px !important;
  margin: 0 0 28px !important;
  display: flex;
  align-items: center;
  gap: 16px 26px;
}
.lis-booking-page .lis-steps span {
  color: #253b58 !important;
  opacity: 1 !important;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  line-height: 1.5;
}
.lis-booking-page .lis-steps b {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
}
@media (max-width: 560px) {
  .lis-booking-page .lis-alert {padding: 16px !important; margin-bottom: 20px !important;}
  .lis-booking-page .lis-steps {padding: 16px !important; gap: 12px 18px;}
}
