.booking-hero{background:var(--charcoal);padding:clamp(60px,8vw,90px) 0 clamp(48px,6vw,72px);position:relative;overflow:hidden}.booking-hero:before{content:"";background:radial-gradient(50% 60% at 80%,#6ba3e01a 0%,#0000 60%),radial-gradient(40% 50% at 5% 80%,#1e8b3c12 0%,#0000 60%);position:absolute;inset:0}.booking-hero-inner{z-index:1;max-width:660px;position:relative}.breadcrumb{color:#fff6;align-items:center;gap:8px;margin-bottom:24px;font-size:13px;display:flex}.breadcrumb a{color:#fff6;transition:color .2s}.breadcrumb a:hover{color:#fffc}.breadcrumb span{color:#ffffff40}.booking-hero h1{color:var(--white);margin-bottom:18px;font-size:clamp(36px,5vw,62px);font-weight:600;line-height:1.1}.booking-hero h1 em{color:var(--blue);font-style:italic}.booking-hero p{color:#ffffffa6;font-size:clamp(15px,1.5vw,17px);line-height:1.75}.booking-hero-trust{flex-wrap:wrap;gap:16px;margin-top:28px;display:flex}.bht-item{color:#fff9;align-items:center;gap:7px;font-size:13px;display:flex}.bht-icon{background:#6ba3e033;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;display:flex}.plans-overview{padding:var(--section-pad) 0;background:var(--cream)}.plans-group{margin-bottom:48px}.plans-group:last-child{margin-bottom:0}.plans-group-label{letter-spacing:.14em;text-transform:uppercase;color:var(--grey);align-items:center;gap:12px;margin-bottom:18px;font-size:12px;font-weight:700;display:flex}.plans-group-label:after{content:"";background:var(--border);flex:1;height:1px}.plans-row{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.plan-pill{background:var(--white);border:2px solid var(--border-light);cursor:pointer;border-radius:14px;padding:18px 20px;transition:border-color .2s,box-shadow .2s,background .2s;position:relative}.plan-pill:hover{border-color:var(--blue);box-shadow:0 4px 16px #6ba3e026}.plan-pill.selected{border-color:var(--blue);background:var(--blue-light);box-shadow:0 4px 20px #6ba3e033}.plan-pill.selected:after{content:"✓";background:var(--blue);width:22px;height:22px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;top:-10px;right:-10px}.pp-name{letter-spacing:.1em;text-transform:uppercase;color:var(--grey);margin-bottom:8px;font-size:11px;font-weight:700}.plan-pill.selected .pp-name{color:var(--blue-dark)}.pp-price{color:var(--charcoal);margin-bottom:4px;font-family:Nunito,sans-serif;font-size:26px;font-weight:700;line-height:1}.pp-period{color:var(--grey);margin-bottom:8px;font-size:12px}.pp-desc{color:var(--charcoal-mid);font-size:13px;line-height:1.5}.booking-form-section{padding:var(--section-pad) 0;background:var(--white)}.booking-layout{grid-template-columns:1fr 360px;align-items:start;gap:40px;display:grid}.booking-form-card{background:var(--cream);border:1px solid var(--border-light);border-radius:20px;padding:clamp(28px,4vw,44px)}.booking-form-card h3{color:var(--charcoal);margin-bottom:6px;font-size:26px;font-weight:600}.booking-form-card .form-intro{color:var(--grey);margin-bottom:28px;font-size:14px;line-height:1.6}.form-section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--grey);align-items:center;gap:10px;margin-top:24px;margin-bottom:14px;font-size:11px;font-weight:700;display:flex}.form-section-label:after{content:"";background:var(--border);flex:1;height:1px}.form-section-label:first-child{margin-top:0}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-group label{color:var(--charcoal);letter-spacing:.03em;font-size:13px;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--border);color:var(--charcoal);background:var(--white);appearance:none;resize:vertical;border-radius:8px;outline:none;padding:12px 14px;font-family:Nunito Sans,sans-serif;font-size:14.5px;transition:border-color .2s}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue)}.order-summary{position:sticky;top:90px}.order-summary-card{background:var(--charcoal);color:var(--white);border-radius:18px;margin-bottom:16px;padding:28px}.os-title{letter-spacing:.12em;text-transform:uppercase;color:#fff6;margin-bottom:20px;font-size:12px;font-weight:700}.os-row{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;font-size:13.5px;display:flex}.os-row:last-of-type{border-bottom:none}.os-label{color:#ffffff80;flex-shrink:0}.os-value{color:var(--white);text-align:right;font-weight:500}.os-total{border-top:1px solid #ffffff26;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;display:flex}.os-total-label{color:#fff9;font-size:13px}.os-total-amount{color:var(--white);font-family:Nunito,sans-serif;font-size:34px;font-weight:700;line-height:1}.os-total-amount span{color:var(--blue);font-size:20px}.os-empty{color:#ffffff59;text-align:center;padding:8px 0;font-size:13px;font-style:italic}.btn-pay{background:var(--blue);width:100%;color:var(--white);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:15px;font-family:Nunito Sans,sans-serif;font-size:15px;font-weight:600;transition:background .2s,transform .15s;display:flex}.btn-pay:hover{background:var(--blue-dark);transform:translateY(-1px)}.btn-pay:disabled{opacity:.5;cursor:not-allowed;transform:none}.pay-note{color:var(--grey);text-align:center;margin-top:10px;font-size:12px;line-height:1.6}.whatsapp-alt{background:var(--green-light);text-align:center;border:1px solid #1e8b3c33;border-radius:12px;padding:16px}.whatsapp-alt p{color:var(--grey);margin-bottom:10px;font-size:13px;line-height:1.55}.btn-whatsapp{background:var(--green);color:var(--white);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:7px;width:100%;padding:10px 20px;font-family:Nunito Sans,sans-serif;font-size:13.5px;font-weight:600;transition:background .2s;display:inline-flex}.btn-whatsapp:hover{background:var(--green-dark)}.modal-overlay{z-index:9998;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2e2e2ebf;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.modal-overlay.open{display:flex}.modal-box{background:var(--white);text-align:center;border-radius:20px;width:100%;max-width:500px;max-height:90vh;padding:clamp(28px,4vw,44px);position:relative;overflow-y:auto;box-shadow:0 24px 80px #2e2e2e40}.success-icon{background:var(--green-light);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 20px;font-size:32px;display:flex}.modal-box h3{color:var(--charcoal);margin-bottom:8px;font-size:28px;font-weight:600}.modal-box .modal-sub{color:var(--grey);margin-bottom:24px;font-size:14.5px;line-height:1.7}.receipt-details{background:var(--cream);text-align:left;border-radius:12px;margin-bottom:24px;padding:18px 20px}.receipt-row{border-bottom:1px solid var(--border-light);justify-content:space-between;padding:6px 0;font-size:13.5px;display:flex}.receipt-row:last-child{border-bottom:none}.receipt-row .rl{color:var(--grey)}.receipt-row .rv{color:var(--charcoal);text-align:right;max-width:60%;font-weight:600}.email-status{color:var(--green);margin-bottom:16px;font-size:12.5px}.email-status.error{color:#e24b4a}.modal-actions{flex-direction:column;gap:10px;display:flex}.btn-receipt{background:var(--charcoal);color:var(--white);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:13px;font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:600;transition:background .2s;display:flex}.btn-receipt:hover{background:var(--charcoal-mid)}.btn-done{background:var(--blue-light);color:var(--blue-dark);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:13px;font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:500;transition:background .2s;display:flex}.btn-done:hover{background:var(--border)}.booking-faq{padding:var(--section-pad) 0;background:var(--cream)}.faq-grid{flex-direction:column;gap:12px;max-width:780px;margin:0 auto;display:flex}.faq-item{background:var(--white);border:1px solid var(--border-light);border-radius:12px;overflow:hidden}.faq-question{cursor:pointer;width:100%;color:var(--charcoal);text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-family:Nunito,sans-serif;font-size:18px;font-weight:600;display:flex}.faq-question:hover{background:var(--blue-light)}.faq-icon{color:var(--blue);flex-shrink:0;font-size:20px;transition:transform .3s}.faq-item.open .faq-icon{transform:rotate(45deg)}.faq-answer{max-height:0;color:var(--grey);padding:0 22px;font-size:15px;line-height:1.75;transition:max-height .35s,padding .35s;overflow:hidden}.faq-item.open .faq-answer{max-height:300px;padding:0 22px 18px}@media (max-width:960px){.booking-layout{grid-template-columns:1fr}.order-summary{position:static}.plans-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.form-row,.plans-row{grid-template-columns:1fr}.booking-hero-trust{flex-direction:column;gap:10px}}
