.booking{position:relative;background:var(--ink);color:var(--base);overflow:hidden}.booking__texture{position:absolute;left:0;right:0;bottom:0;height:60%;pointer-events:none;background-image:url(/assets/textura-puntos.webp);background-size:cover;background-position:center bottom;opacity:.06;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,1));mask-image:linear-gradient(180deg,#0000,#000)}.booking__inner{position:relative;max-width:1320px;margin:0 auto;padding:130px 44px 140px;display:grid;grid-template-columns:1fr 1.18fr;gap:88px;align-items:center}.booking__kicker{font-size:10.5px;letter-spacing:.22em}.booking__title{margin:26px 0 0;font-weight:200;letter-spacing:-.035em;font-size:56px;line-height:1;text-wrap:balance}.booking__title em{font-style:italic;font-weight:200}.booking__p{margin:26px 0 0;max-width:340px;font-size:16px;line-height:1.7;color:#ffffffad;text-wrap:pretty}.booking__p strong{font-weight:500}.booking__perks{display:flex;flex-direction:column;margin-top:40px;border-top:1px solid rgba(255,255,255,.16)}.booking__perks span{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.09);font-size:14px;font-weight:300;color:#ffffffd1}.booking__perks span:last-child{border-bottom:none}.booking__alt{display:block;margin-top:34px;font-size:11.5px;letter-spacing:.02em;line-height:1.6;color:#ffffff80}.booking__alt a{color:#fff;border-bottom:1px solid rgba(255,255,255,.3)}.booking__form{box-sizing:border-box;background:var(--base);color:var(--ink);padding:52px 52px 54px;box-shadow:0 30px 70px #00000047}.booking__form-kicker{display:block;font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);padding-bottom:22px;border-bottom:1px solid rgba(44,46,53,.12);margin-bottom:32px}.booking__fields{display:grid;grid-template-columns:1fr 1fr;gap:28px 36px}.booking__form label{display:block}.booking__form label>span{display:block;font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--text-label-2);margin-bottom:7px}.booking__form input,.booking__form select,.booking__form textarea{box-sizing:border-box;width:100%;background:transparent;border:none;border-bottom:1px solid var(--hairline-3);color:var(--ink);font-family:Poppins,sans-serif;font-size:16px;font-weight:300;padding:11px 0;outline:none;transition:border-color .3s ease}.booking__form select{cursor:pointer}.booking__form textarea{resize:none;line-height:1.6}.booking__form input:focus,.booking__form select:focus,.booking__form textarea:focus{border-color:var(--navy)}.booking__msg{margin-top:28px}.booking__form-foot{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:38px;padding-top:26px;border-top:1px solid rgba(44,46,53,.12);flex-wrap:wrap}.booking__privacy{font-size:11.5px;line-height:1.6;color:var(--text-label);max-width:250px}.booking__privacy a{color:var(--ink);border-bottom:1px solid rgba(44,46,53,.3)}.booking__form button{background:var(--ink);color:#fff;border:none;border-radius:999px;padding:17px 36px;font-family:Poppins,sans-serif;font-size:11.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background .3s ease}.booking__form button:hover{background:var(--navy)}.booking__ok{display:block;margin-top:18px;font-size:13.5px;line-height:1.55;color:var(--navy)}.booking__ok[hidden]{display:none}.booking__err{display:block;margin-top:18px;font-size:13.5px;line-height:1.55;color:#b3261e}.booking__err[hidden]{display:none}.booking__consent{display:flex;align-items:flex-start;gap:11px;margin-top:26px;cursor:pointer}.booking__consent input{width:15px;height:15px;flex:none;margin-top:2px;accent-color:var(--navy);cursor:pointer}.booking__form .booking__consent>span{display:inline;font-size:12px;line-height:1.55;color:var(--text-label);letter-spacing:0;text-transform:none;font-weight:400;margin:0}.booking__consent a{color:var(--ink);border-bottom:1px solid rgba(44,46,53,.3)}.booking__trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}@media(max-width:1199px){.booking__inner{grid-template-columns:1fr;gap:48px;padding:72px 24px 80px}.booking__title{font-size:36px}.booking__form{padding:32px 22px 36px}.booking__fields{grid-template-columns:1fr;gap:22px}.booking__form-foot{flex-direction:column-reverse;align-items:stretch;gap:16px}.booking__form button{text-align:center}.booking__privacy{max-width:none}}
