/* Buscador fijo Centrotel · Cityexpress Hotel Fernando III Nájera · v8 */
:root{--booking-gold:#deb666;--booking-gold-dark:#c89d49;--booking-text:#252525;--booking-line:#e3e3e3}
body{padding-bottom:96px}.booking-search-section{position:fixed;left:0;right:0;bottom:0;z-index:10000;padding:10px 18px;background:rgba(255,255,255,.98);box-shadow:0 -8px 28px rgba(0,0,0,.16);overflow:visible!important}.booking-search-box{max-width:1170px;margin:0 auto;background:transparent;padding:0}.booking-search-title{display:none;margin:0 0 12px;font-size:20px;font-weight:700;color:var(--booking-text)}.booking-search-grid{display:grid;grid-template-columns:2fr 1fr auto;gap:12px;align-items:end}.booking-field{min-width:0}.booking-field label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#555;margin-bottom:5px}.booking-input{width:100%;height:44px;border:1px solid #d7d7d7;border-radius:4px;background:#fff;padding:0 13px;font-size:14px;color:#333;box-shadow:none}.booking-input:focus{border-color:var(--booking-gold);outline:2px solid rgba(222,182,102,.18)}.booking-input[readonly]{cursor:pointer}.booking-submit{height:44px;border:0;border-radius:4px;padding:0 22px;background:var(--booking-gold);color:#fff;font-size:13px;font-weight:700;text-transform:uppercase;white-space:nowrap;transition:.2s}.booking-submit:hover,.booking-submit:focus{background:var(--booking-gold-dark);color:#fff;transform:translateY(-1px)}
.booking-calendar-wrap{position:relative}.booking-calendar{display:none;position:absolute;left:0;bottom:57px;width:920px;max-width:calc(100vw - 32px);height:520px;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:7px;box-shadow:0 18px 55px rgba(0,0,0,.34);padding:20px;z-index:10030;overflow:hidden}.booking-calendar.is-open{display:block}.booking-calendar.is-portal{position:fixed!important;top:auto!important;right:auto!important;z-index:12000!important;margin:0!important;visibility:visible}.calendar-toolbar{position:absolute;left:20px;right:20px;top:18px;display:flex;justify-content:space-between;pointer-events:none;z-index:2}.calendar-toolbar button{pointer-events:auto;width:38px;height:32px;border:1px solid #dedede;border-radius:3px;background:#fff;color:#777;font-size:19px;line-height:1}.calendar-toolbar button:hover:not(:disabled){border-color:var(--booking-gold);color:#333;background:#fbf8f1}.calendar-toolbar button:disabled{opacity:.35;cursor:not-allowed}.calendar-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;height:430px}.calendar-panel{min-width:0}.calendar-panel h3{height:38px;margin:0 40px 8px;text-align:center;font-size:20px;line-height:32px;font-weight:700;color:#28303b;text-transform:lowercase}.calendar-panel h3::first-letter{text-transform:uppercase}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-week span{text-align:center;font-size:12px;color:#777;height:30px;line-height:30px}.calendar-days{border-top:1px solid var(--booking-line);border-left:1px solid var(--booking-line)}.calendar-day,.calendar-blank{height:59px;border:0;border-right:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);box-sizing:border-box}.calendar-blank{background:#fff}.calendar-day{position:relative;background:#fff;color:#333;font-size:14px;transition:.15s}.calendar-day span{display:block}.calendar-day:hover:not(:disabled){background:#f8f1e3;box-shadow:inset 0 0 0 2px var(--booking-gold)}.calendar-day:disabled{color:#c9cdd1;background:#fcfcfc;cursor:not-allowed}.calendar-day.is-selected{background:#fff;color:#222;font-weight:700;box-shadow:inset 0 0 0 2px #222}.calendar-day.is-range{background:#f4ead6}.calendar-day.is-potential:hover{background:#f4ead6}.calendar-footer{position:absolute;left:20px;right:20px;bottom:0;height:68px;border-top:1px solid #eee;display:flex;align-items:center;justify-content:space-between;gap:20px}.calendar-help{margin:0;color:#999;font-size:13px}.calendar-clear{border:0;background:transparent;color:#999;font-size:13px;padding:10px 0}.calendar-clear:hover{color:#333}.booking-error{display:none;color:#b3261e;font-size:12px;margin-top:5px}.booking-error.is-visible{display:block}.booking-mobile-toggle,.booking-close{display:none}
@media(max-width:899px) and (min-width:768px){.booking-calendar{width:480px;height:520px}.calendar-panels{grid-template-columns:1fr;gap:0}.calendar-panel:nth-child(n+2){display:none}}
@media(max-width:767px){body{padding-bottom:66px}.booking-search-section{padding:0;background:transparent;box-shadow:none;pointer-events:none;overflow:visible!important}.booking-mobile-toggle{display:flex;pointer-events:auto;width:calc(100% - 24px);height:50px;margin:8px 12px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:5px;background:var(--booking-gold);color:#fff;font-size:15px;font-weight:700;text-transform:uppercase;box-shadow:0 7px 20px rgba(0,0,0,.25)}.booking-search-box{position:fixed;left:0;right:0;bottom:0;max-height:94vh;overflow-y:auto;background:#fff;padding:22px 18px 20px;border-radius:16px 16px 0 0;box-shadow:0 -12px 40px rgba(0,0,0,.28);transform:translateY(110%);transition:transform .28s ease;pointer-events:auto}.booking-search-section.is-open:before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.48);pointer-events:auto}.booking-search-section.is-open .booking-search-box{transform:translateY(0)}.booking-search-title{display:block;padding-right:36px}.booking-close{display:block;position:absolute;right:13px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:#f3f3f3;color:#333;font-size:24px;line-height:34px}.booking-search-grid{grid-template-columns:1fr;gap:13px}.booking-submit{width:100%;height:48px}.booking-input{height:48px}.booking-calendar{position:relative;left:auto;bottom:auto;top:auto;width:100%!important;max-width:none;height:430px;margin-top:8px;padding:14px 8px 0;box-shadow:none;border-radius:6px;overflow:hidden}.booking-calendar.is-portal{position:relative!important}.calendar-toolbar{left:8px;right:8px;top:10px}.calendar-panels{grid-template-columns:1fr;height:354px;gap:0}.calendar-panel:nth-child(n+2){display:none}.calendar-panel h3{font-size:18px;margin-bottom:4px}.calendar-week span{height:25px;line-height:25px}.calendar-day,.calendar-blank{height:45px}.calendar-footer{left:8px;right:8px;height:58px}.calendar-help{font-size:11px;max-width:68%}.calendar-clear{font-size:12px}.booking-search-section.is-open{pointer-events:auto}}
@media(max-width:390px){.booking-calendar{height:405px}.calendar-panels{height:330px}.calendar-day,.calendar-blank{height:41px}}

/* En móvil, los controles flotantes auxiliares no deben cubrir el panel de reserva. */
@media(max-width:767px){
  body.booking-mobile-open .cookie-settings-link,
  body.booking-mobile-open [id^="gb-widget"],
  body.booking-mobile-open [id*="getbutton"],
  body.booking-mobile-open [class*="getbutton"],
  body.booking-mobile-open [class*="gb-widget"],
  body.booking-mobile-open a[href*="wa.me"],
  body.booking-mobile-open a[href*="api.whatsapp"],
  body.booking-mobile-open a[href*="whatsapp"]{display:none!important}
  body.booking-mobile-open .booking-search-box{z-index:2}
}
