@import url("booking-icons.css");

html{overflow-x:hidden;overflow-x:clip}
body.booking-page{max-width:100%;overflow-x:hidden;overflow-x:clip}
.booking-page-main,.booking-page-hero,.booking-page-section{max-width:100%;overflow-x:clip}
.booking-page .container,.booking-page .booking-grid,.booking-page .booking-form,.booking-page .form-grid,.booking-page .form-grid>*{min-width:0}

.booking-page-main{padding-top:0;min-height:70vh}
.booking-page-hero{position:relative;padding:12px 0 8px;background:linear-gradient(180deg,rgba(22,196,207,.08),transparent)}
.booking-page-hero .container{position:relative;max-width:1180px;padding-top:24px;text-align:center}
.booking-back{position:absolute;top:0;left:0;display:flex;align-items:center;gap:7px;width:max-content;margin:0;color:var(--teal-dark);font-size:12px;font-weight:800;text-decoration:none}
.booking-back:hover{text-decoration:underline}
.booking-page-heading{max-width:680px;margin:0 auto}
.booking-page-heading h1{margin:0 0 8px;font-family:Montserrat,Inter,sans-serif;font-size:clamp(30px,4vw,44px);line-height:1.02;letter-spacing:-.04em;color:var(--ink)}
.booking-page-heading h1 span{color:var(--teal-dark)}
.booking-page-heading p{max-width:620px;margin:0 auto;color:var(--muted);font-size:13px;line-height:1.5}
.booking-steps{display:none!important}
.booking-page-section{padding:12px 0 64px}
.booking-page .booking-grid{display:grid;grid-template-columns:minmax(0,820px);justify-content:center;align-items:start;gap:0;max-width:900px;margin:0 auto}
.booking-page-aside{display:none!important}
.booking-page .booking-form{width:100%;margin:0 auto;box-shadow:0 22px 60px rgba(0,35,40,.09)}
.booking-source-selection{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;padding:15px 16px;border:1px solid rgba(22,196,207,.32);border-radius:15px;background:rgba(22,196,207,.08)}
.booking-source-selection[hidden]{display:none!important}
.booking-source-selection__copy{display:grid;gap:3px;min-width:0}
.booking-source-selection__copy span{color:var(--teal-dark);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.booking-source-selection__copy strong{color:var(--ink);font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.booking-source-selection__copy small{color:var(--muted);font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.booking-source-selection__remove{flex:none;appearance:none;border:0;background:transparent;color:var(--muted);font-size:20px;line-height:1;cursor:pointer;padding:2px}
.booking-source-selection__remove:hover{color:var(--ink)}
.booking-submit{width:100%;margin-top:16px;min-height:50px}
.booking-submit-note{display:block;margin-top:10px;text-align:center;color:var(--muted);font-size:10px;line-height:1.5}
.booking-page .nav-links a[aria-current="page"]{color:var(--teal);font-weight:850}
.booking-page .temperament-picker::after{content:"ℹ️ O temperamento não interfere no preço. Essa informação serve apenas para prepararmos o atendimento com mais segurança.";display:block;margin-top:12px;padding:10px 12px;border-radius:12px;background:rgba(22,196,207,.08);color:var(--muted);font-size:11px;font-weight:650;line-height:1.45}
/* A dica correta já está no HTML do seletor. O script legado ainda tenta inserir a dica antiga 08h–17h30. */
.booking-page .business-hours-help{display:none!important}

/* Rodapé igual ao da home */
.footer-location-map{margin:14px 0 10px;overflow:hidden;border-radius:16px;border:1px solid rgba(255,255,255,.13);background:#0a3237;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.footer-location-map iframe{display:block;width:100%;height:150px;border:0;filter:saturate(.9) contrast(.98)}
.footer-location .footer-link{display:inline-flex;align-items:center;gap:6px}
.footer-location .footer-link::after{content:"↗";font-size:12px}
.footer-bottom{align-items:flex-end}
.footer-bottom-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
html[data-theme="dark"] .booking-page-hero{background:linear-gradient(180deg,rgba(32,208,219,.07),transparent)}
html[data-theme="dark"] .booking-source-selection{background:rgba(32,208,219,.08);border-color:rgba(32,208,219,.26)}

@media(max-width:980px){.footer-location-map iframe{height:175px}}
@media(max-width:900px){.booking-page .booking-grid{grid-template-columns:minmax(0,760px);max-width:100%}}
@media(max-width:650px){
  .booking-page-main{padding-top:0}
  .booking-page-hero{padding:9px 0 5px}
  .booking-page-hero .container{width:calc(100% - 24px);max-width:none;padding-top:23px}
  .booking-back{top:0;left:0;font-size:11px}
  .booking-page-heading h1{font-size:clamp(27px,8vw,34px);margin:0 0 6px}
  .booking-page-heading p{font-size:12px;line-height:1.45;max-width:440px}
  .booking-page-section{padding:8px 0 46px}
  .booking-page .booking-grid{gap:0}
  .booking-page .booking-form{padding:16px;border-radius:20px}
  .booking-page .form-grid{gap:12px}
  .booking-page .form-grid label{gap:5px;font-size:11px}
  .booking-page #bookingForm input:not([type="checkbox"]):not([type="radio"]),
  .booking-page #bookingForm select,
  .booking-page #bookingForm textarea{font-size:16px!important;padding:11px 12px;border-radius:10px;max-width:100%}
  .booking-source-selection{padding:13px 14px;margin-bottom:14px}
  .booking-source-selection__copy strong{font-size:13px}
  .footer-location-map{max-width:100%;margin-top:12px}
  .footer-location-map iframe{height:190px}
  .footer-bottom{align-items:center}
  .footer-bottom-right{width:100%;align-items:center;gap:8px}
}
