.bookmi-pricing { padding: 64px 0 72px; }
.bookmi-pricing .pricing-intro { max-width: 760px; margin: 0 auto 36px; text-align: center; }
.bookmi-pricing h1 { font-size: 42px; margin-bottom: 16px; }
.bookmi-pricing .pricing-intro > p { font-size: 18px; }
.bookmi-pricing .pricing-grid { max-width: 960px; margin: auto; }
.bookmi-pricing .pricing-table { border-radius: 8px; border: 1px solid #c2dfe5; padding: 32px; height: 100%; transition: transform .3s, box-shadow .3s; background: #fff; }
.bookmi-pricing .pricing-table:hover { transform: translateY(-5px); box-shadow: 0 18px 44px #1b486518; }
.bookmi-pricing .pricing-table.bg-primary-soft { background: linear-gradient(125deg,#bfe9e8,#edf8ff,#cae9fe); background-size: 240% 240%; animation: plan-tide 16s ease infinite; border-color: #61b6cb; }
.bookmi-pricing .pricing-table .amount { font-size: 48px; font-weight: 600; }
.bookmi-pricing .pricing-features { text-align: left !important; }
.bookmi-pricing .pricing-features .feature { border-bottom: 1px solid #1b486510; padding: 10px 0; }
.bookmi-pricing .tax-note { font-size: 14px; margin: 12px 0 0; }
.bookmi-pricing .plan-select { background: #1b4865; color: white; border-radius: 6px; padding: 13px; }
.bookmi-pricing .plan-select:hover { background: #09677e; color: white; }
.bookmi-pricing .billing-choice { display: inline-flex; gap: 4px; padding: 5px; border: 1px solid #61b6cb; border-radius: 8px; }
.bookmi-pricing .billing-choice label { margin: 0; padding: 10px 16px; cursor: pointer; border-radius: 5px; }
.bookmi-pricing .billing-choice label:has(input:checked) { background: #1b4865; color: white; }
.bookmi-pricing .billing-choice input { accent-color: #61b6cb; margin-right: 6px; }
.bookmi-pricing .pricing-bottom { text-align: center; margin: 36px auto 0; max-width: 680px; }
body.dark-mode .bookmi-pricing .pricing-table { background: #173947; color: #e8f8fa; }
body.dark-mode .bookmi-pricing .pricing-table.bg-primary-soft { background: linear-gradient(120deg,#164654,#205266,#16333f); background-size:240% 240%; }
body.dark-mode .bookmi-pricing .text-dark { color: #e8f8fa !important; }
@keyframes plan-tide { 0%,100% { background-position: 0 50%; } 50% { background-position: 100% 50%; } }
@media(max-width:767px) { .bookmi-pricing { padding-top:36px; } .bookmi-pricing h1 { font-size:32px; } .bookmi-pricing .pricing-grid > div { margin-bottom:24px; } .bookmi-pricing .pricing-table { padding:24px; } }
@media(prefers-reduced-motion:reduce) { .bookmi-pricing .pricing-table { animation:none !important; transition:none; transform:none !important; } }
