body{background-color:var(--cream);background-image:radial-gradient(circle at 15% 18%,rgba(104,169,145,.09),transparent 28%),radial-gradient(circle at 90% 62%,rgba(220,244,117,.11),transparent 24%)}
.site-header{position:sticky;top:0;z-index:100;box-shadow:0 4px 25px rgba(9,39,44,.08);transition:min-height .25s,box-shadow .25s}
.site-header.is-scrolled{box-shadow:0 8px 30px rgba(9,39,44,.16)}
.site-header.is-scrolled .header-inner{min-height:72px}
.floating-phone{position:fixed;left:18px;top:50%;z-index:90;transform:translateY(-50%);display:flex;align-items:center;gap:8px;padding:10px 13px;background:var(--deep);color:#fff;border-radius:100px;box-shadow:0 8px 25px rgba(9,39,44,.28);font-weight:800}
.floating-phone span{display:grid;place-items:center;width:34px;height:34px;background:var(--lime);color:var(--deep);border-radius:50%;font-size:18px}
.floating-phone small{font-size:11px;letter-spacing:.3px}
.back-to-top{position:fixed;right:22px;bottom:24px;z-index:90;width:48px;height:48px;border:0;border-radius:50%;background:var(--deep);color:var(--lime);font-size:25px;cursor:pointer;box-shadow:0 8px 25px rgba(9,39,44,.25);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s}
.back-to-top.visible{opacity:1;visibility:visible;transform:none}
.booking-section{background:linear-gradient(135deg,rgba(232,238,231,.92),rgba(247,246,239,.96))}
.booking-shell{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.6fr);background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 24px 70px rgba(9,39,44,.12)}
.booking-side{padding:48px 36px;background:linear-gradient(155deg,var(--deep),#175155);color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.booking-side img{width:130px;height:130px;object-fit:contain;margin-bottom:26px}.booking-side h3{font:600 31px/1.1 Manrope,sans-serif;letter-spacing:-1.6px;margin:0 0 14px}.booking-side p{color:#cfe0d8;line-height:1.65}.booking-side>span{margin-top:25px;background:var(--lime);color:var(--deep);padding:9px 14px;border-radius:100px;font-size:11px;font-weight:800}
.booking-form-wrap{padding:44px}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-form label{display:flex;flex-direction:column;gap:8px}.booking-form label>span{font-size:11px;font-weight:800;letter-spacing:.7px}.booking-form input,.booking-form select,.booking-form textarea{width:100%;border:1px solid #ccd9d1;border-radius:5px;background:#f9faf7;padding:14px 15px;color:var(--ink);font:inherit}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:2px solid #9bc6af;outline-offset:1px}.booking-wide{grid-column:1/-1}.booking-consent{flex-direction:row!important;align-items:flex-start}.booking-consent input{width:18px;height:18px;margin-top:2px}.booking-consent span{font-weight:500!important;line-height:1.5}.booking-submit{border:0;cursor:pointer;background:var(--deep);color:#fff}.booking-honeypot{position:absolute;left:-9999px}.booking-message{padding:14px 16px;margin-bottom:20px;border-radius:5px;font-weight:700}.booking-message.success{background:#dff3df;color:#1f5b2c}.booking-message.error{background:#ffe1df;color:#8a211b}
.procedure-hero{position:relative;background-image:linear-gradient(90deg,rgba(9,39,44,.95),rgba(9,39,44,.48)),url('../images/hero-clinic-v2.jpg')!important;background-size:cover!important;background-position:center 42%!important;min-height:430px;display:flex;align-items:center}.procedure-hero .wrap{position:relative;z-index:1}.procedure-hero h1{text-shadow:0 2px 18px rgba(0,0,0,.2)}
@media(max-width:760px){.floating-phone{left:10px;top:auto;bottom:18px;transform:none;padding:7px}.floating-phone small{display:none}.floating-phone span{width:43px;height:43px}.back-to-top{right:14px;bottom:18px}.booking-shell{grid-template-columns:1fr}.booking-side{padding:35px 25px}.booking-side img{width:95px;height:95px}.booking-form-wrap{padding:28px 20px}.booking-form{grid-template-columns:1fr}.booking-wide{grid-column:auto}.procedure-hero{min-height:350px}.site-header.is-scrolled .header-inner{min-height:64px}}
