/* Rates next to booking controls and in the central overview. */
.hero .treatment-price,.treatment-price { font-size:1.125rem; font-weight:500; line-height:1.6; color:#495045; margin:1.25rem 0 .8rem; }
.treatment-price strong { font-size:1.35rem; font-weight:700; }
.treatment-price span { margin:0 .4rem; }
.experience-cta .treatment-price { color:inherit; margin:.5rem 0 0; }
.rates-intro { max-width:1120px; padding:3rem 2rem 2rem; margin:auto; }
.rates-intro h1 { font-size:clamp(2.5rem,5vw,4rem); color:#495045; margin-bottom:1rem; }
.rates-intro > p:last-child { max-width:100%; font-size:1rem; line-height:1.8; }
.rates-content { max-width:1120px; margin:0 auto; padding:0 2rem 3rem; }
.rates-table-wrap { overflow-x:auto; border:1px solid #d8d9cf; border-radius:14px; background:#fbf7ef; }
.rates-table { width:100%; border-collapse:collapse; font-size:1rem; text-align:left; }
.rates-table caption { text-align:left; padding:1.25rem; color:#495045; font-weight:600; }
.rates-table th,.rates-table td { padding:1.25rem; border-top:1px solid #d8d9cf; }
.rates-table thead { background:#eee8df; }
.rates-table tbody th { font-weight:500; }
.rates-table td { white-space:nowrap; }
.rates-table a { color:#765773; text-underline-offset:4px; }
.rates-note { font-size:1rem; line-height:1.8; margin:1.5rem 0 2rem; }
.rates-booking { padding:2rem; background:#eee8df; border-radius:14px; }
.rates-booking h2 { font-size:2rem; margin-bottom:1rem; }
.rates-booking p { line-height:1.8; margin-bottom:1.25rem; }
@media(max-width:600px) { .rates-intro { padding:2rem 1rem 1.5rem; } .rates-content { padding:0 1rem 2rem; } .rates-table th,.rates-table td { padding:.85rem .6rem; font-size:.9rem; } .rates-booking { padding:1.25rem; } }

/* Tarieven: overzicht, bezoekduur en cadeaubon. */
.rates-detail{display:block;font-size:.78rem;font-weight:400;line-height:1.6;color:#666a61;margin-top:.35rem;max-width:360px}
.rates-section{margin:2.5rem 0;color:#495045}.rates-section h2{font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.3;margin-bottom:1rem;letter-spacing:.02em}.rates-section p{line-height:1.85}.rates-section p+p{margin-top:.8rem}.rates-section a{color:#765773;text-underline-offset:4px}
.rates-timing{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:1.3rem 0}.rates-timing p{background:#eee8df;border-radius:10px;padding:1rem;text-align:center;margin:0!important}.rates-timing strong,.rates-timing span{display:block}.rates-timing span{font-size:.8rem;margin-top:.2rem}
.rates-gift{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding:2rem;border:1px solid #d7cbd7;border-radius:14px;background:linear-gradient(120deg,#eee5ef,#fbf7ef);scroll-margin-top:2rem}.rates-kicker{text-transform:uppercase;font-size:.7rem;letter-spacing:.13em;color:#765773;margin-bottom:.6rem}.rates-gift .rates-small{font-size:.8rem}.rates-gift-action{text-align:center}.rates-gift-action .button{color:#fff;background:#765773;min-width:0}.rates-gift-action p{font-size:.78rem;margin-top:.8rem}
.rates-practical{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;border-top:1px solid #d8d9cf;border-bottom:1px solid #d8d9cf}.rates-practical .rates-section{margin:2rem 0}.rates-content a:focus-visible{outline:2px solid #765773;outline-offset:4px}
@media(max-width:700px){.rates-gift{grid-template-columns:1fr;padding:1.3rem;gap:1.2rem}.rates-practical{grid-template-columns:1fr;gap:0}.rates-practical .rates-section{margin:1.4rem 0}.rates-timing{grid-template-columns:1fr}.rates-timing p{display:flex;justify-content:space-between;gap:.5rem;text-align:left}.rates-timing span{margin-top:0}.rates-table th,.rates-table td{padding:.85rem .5rem}.rates-table thead th{font-size:.75rem}.rates-table tbody td{font-size:.8rem}.rates-detail{font-size:.72rem}}

/* Green closing CTA, matching Signature Body Treatment. */
.rates-booking{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:1.7rem;padding:1.5rem 2rem;background:linear-gradient(120deg,#e4eadc 0%,#f1f3e9 100%);border:1px solid #d1dac7;border-radius:14px}
.rates-booking>img{display:block;width:150px;max-width:100%;mix-blend-mode:multiply;justify-self:center}
.rates-booking h2{font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.3;color:#495c40;margin:0 0 .65rem;text-transform:uppercase;letter-spacing:.025em}
.rates-booking p{font-size:.93rem;line-height:1.8;margin:0;color:#3b4436}
.rates-booking .button{width:auto;min-width:0;background:linear-gradient(135deg,#536b46,#405336);color:#fff8eb;border-color:#536b46;text-align:center;white-space:nowrap}
.rates-booking .button:hover{background:linear-gradient(135deg,#405336,#35462d)}
@media(max-width:980px){.rates-booking{grid-template-columns:120px minmax(0,1fr)}.rates-booking>img{width:120px;grid-row:1 / 3}.rates-booking .button{grid-column:2;justify-self:start}}
@media(max-width:600px){.rates-booking{grid-template-columns:1fr;text-align:center;padding:1.5rem;gap:1.2rem}.rates-booking>img{width:140px;grid-row:auto}.rates-booking .button{grid-column:auto;justify-self:stretch;width:100%;white-space:normal}.rates-booking h2{font-size:1.5rem}}
