.form-labels{font-family:Golos Text,Roboto,sans-serif;font-size:.9rem;font-weight:700;letter-spacing:-.01em;color:#0f172a}.field{display:flex;flex-direction:column;gap:.4rem}input,textarea,select{width:100%;padding:.8rem 1rem;border:1.5px solid rgba(15,23,42,.14);border-radius:10px;background-color:#ffffffeb;color:#0f172a;font-family:Roboto,sans-serif;font-size:1rem;transition:border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1)}input::placeholder,textarea::placeholder,select::placeholder{color:#94a3b8}input:hover,textarea:hover,select:hover{border-color:#2563eb59}input:focus,textarea:focus,select:focus{outline:none;border-color:#2563eb;background-color:#fff;box-shadow:0 0 0 4px #2563eb24}textarea{resize:vertical;min-height:140px}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233f4c63' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .85rem center;background-size:1rem;padding-right:2.5rem}.submit-button{align-self:flex-start;margin-top:.35rem;padding:.9rem 2.1rem;border:none;border-radius:999px;background:linear-gradient(135deg,#2563eb,#38bdf8);color:#fff;font-family:Golos Text,Roboto,sans-serif;font-size:1.05rem;font-weight:700;cursor:pointer;box-shadow:0 12px 28px -8px #2563eb73;transition:transform .26s cubic-bezier(.4,0,.2,1),box-shadow .26s cubic-bezier(.4,0,.2,1)}.submit-button:hover{transform:translateY(-2px);box-shadow:0 18px 36px -8px #2563eb8c}.submit-button:active{transform:translateY(0)}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.error-text{color:#dc2626;font-size:.85rem;font-weight:500;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.contact-page{width:100%;max-width:1080px;margin:0 auto;padding:clamp(2.5rem,6vw,4.5rem) 1.25rem clamp(3rem,7vw,5rem);display:grid;gap:1.5rem}@media screen and (min-width:880px){.contact-page{grid-template-columns:.95fr 1.05fr;align-items:start;gap:2rem}}.contact-panel{position:relative;overflow:hidden;border-radius:24px;padding:clamp(2rem,4vw,2.75rem);background:linear-gradient(135deg,#2563eb,#38bdf8);color:#fff;box-shadow:0 22px 40px -14px #0f172a38,0 6px 12px -6px #0f172a1a,0 30px 60px -20px #2563eb73}.contact-panel:before,.contact-panel:after{content:"";position:absolute;border-radius:50%;background:#ffffff24;pointer-events:none}.contact-panel:before{width:200px;height:200px;top:-80px;right:-50px}.contact-panel:after{width:280px;height:280px;bottom:-130px;left:-70px;background:#ffffff1a}.contact-panel__title{position:relative;margin:0 0 .75rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;letter-spacing:-.035em}.contact-panel__lead{position:relative;margin:0 0 1.75rem;max-width:34ch;font-size:1.05rem;line-height:1.6;color:#ffffffeb}.contact-panel__phone{position:relative;display:inline-flex;align-items:center;gap:.7rem;padding:.85rem 1.5rem;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.28);color:#fff;font-family:Golos Text,Roboto,sans-serif;font-size:1.05rem;font-weight:700;text-decoration:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background-color .15s cubic-bezier(.4,0,.2,1),transform .26s cubic-bezier(.4,0,.2,1)}.contact-panel__phone svg{flex-shrink:0}.contact-panel__phone:hover{background:#ffffff3d;transform:translateY(-2px)}.contact-form-card{padding:clamp(1.75rem,3.5vw,2.5rem);border-radius:24px;background:#ffffffad;border:1px solid rgba(255,255,255,.75);box-shadow:0 22px 40px -14px #0f172a38,0 6px 12px -6px #0f172a1a;backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4)}.contact-form-card #contact-form{display:flex;flex-direction:column;gap:1.15rem}.booking-page{width:100%;max-width:760px;margin:0 auto;padding:clamp(2.5rem,6vw,4rem) 1.25rem clamp(3rem,7vw,5rem)}.booking-page h2{margin:0 0 .5rem;font-size:clamp(1.9rem,4vw,2.6rem);font-weight:800;letter-spacing:-.03em;text-align:center;color:#0f172a}.booking-page .description{margin:0 auto 2.25rem;max-width:52ch;text-align:center;line-height:1.6;color:#3f4c63}#booking-form{display:flex;flex-direction:column;gap:1.15rem;padding:clamp(1.75rem,3.5vw,2.5rem);border-radius:24px;background:#ffffffad;border:1px solid rgba(255,255,255,.75);box-shadow:0 22px 40px -14px #0f172a38,0 6px 12px -6px #0f172a1a;backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4)}#booking-form .submit-button{align-self:stretch;margin-top:.5rem}@media screen and (min-width:600px){#booking-form .submit-button{align-self:flex-start}}
