/* FAROBYTE_VILL_CALENDAR_BOOKING_V7: booking CTA design — affects only V7 elements */
.booking-section .booking-grid{display:none!important}
.vill-v7-card{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,.7fr);align-items:center;gap:clamp(22px,4vw,64px);margin:0 auto;padding:clamp(28px,5vw,70px) 0;color:#f2f8ff}
.vill-v7-copy{min-width:0}
.vill-v7-eyebrow{display:block;letter-spacing:.18em;color:#6ab9ff;font-size:12px;font-weight:800;margin-bottom:16px}
.vill-v7-copy h2{font:900 clamp(30px,4.2vw,57px)/1.07 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:-.035em;color:#fff;margin:0 0 20px}
.vill-v7-copy h2 span{color:#59b4ff}
.vill-v7-copy>p{max-width:610px;font-size:clamp(15px,1.4vw,17px);color:#bdd0e5;line-height:1.65;margin:0 0 24px}
.vill-v7-buttons{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap}
.vill-v7-primary,.vill-v7-secondary{display:inline-flex;gap:11px;align-items:center;justify-content:center;min-height:55px;border-radius:10px;padding:14px 20px;text-decoration:none;font:800 14px/1.2 system-ui,-apple-system,Segoe UI,sans-serif;transition:transform .15s,filter .15s}
.vill-v7-primary{background:#267eff;color:white;box-shadow:0 8px 30px #006cfa40}
.vill-v7-secondary{border:1px solid #4a6379;color:#e8f3ff;background:#14283b}
.vill-v7-primary:hover,.vill-v7-secondary:hover{filter:brightness(1.13);transform:translateY(-1px)}
.vill-v7-primary:focus-visible,.vill-v7-secondary:focus-visible{outline:3px solid #79c2ff;outline-offset:3px}
.vill-v7-buttons .icon{width:19px;height:19px;flex:none}
.vill-v7-copy p.vill-v7-note{color:#9db5cc;font-size:12px;line-height:1.6;margin:17px 0 0;max-width:670px}
.vill-v7-aside{border:1px solid #274563;border-radius:15px;background:linear-gradient(140deg,#142b42,#091725);padding:25px 22px;box-shadow:0 20px 55px #0004}
.vill-v7-aside-title{font:800 15px system-ui,-apple-system,Segoe UI,sans-serif;color:#fff;margin-bottom:18px}
.vill-v7-aside>div:not(.vill-v7-aside-title){display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid #26435d;font-size:13px;color:#bfd3e5}
.vill-v7-aside strong{white-space:nowrap;color:#edf7ff;font-weight:700}
.vill-v7-aside p{font:12px/1.65 system-ui,-apple-system,Segoe UI,sans-serif;color:#92b4d0;margin:17px 0 0}
@media(max-width:790px){.vill-v7-card{grid-template-columns:minmax(0,1fr);padding:34px 0}.vill-v7-aside{max-width:none}.vill-v7-buttons{flex-direction:column}.vill-v7-primary,.vill-v7-secondary{width:100%;box-sizing:border-box}}
@media(prefers-reduced-motion:reduce){.vill-v7-primary,.vill-v7-secondary{transition:none}}
