
.pricing-hero{padding:100px 0;background:linear-gradient(135deg,#03284a,#0a477a);color:#fff}
.pricing-hero-inner{max-width:850px;text-align:center}.pricing-hero h1{font-size:clamp(2.8rem,7vw,5.5rem);line-height:1;margin:12px 0}.pricing-hero p{font-size:1.12rem}.pricing-hero .hero-cta{justify-content:center}
.btn-light{background:#fff;color:var(--navy)}.btn-light:hover{background:#edf4f8}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.price-card{padding:26px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.price-card>span{font-size:2rem}.price-card h3{color:var(--navy);margin:10px 0 4px}.price-card strong{display:block;color:var(--green-dark);font-size:2rem;margin:4px 0}.price-card p{color:var(--muted)}.price-card.featured{border-top:5px solid var(--green)}
.discount-box{margin-top:28px;padding:24px;border-radius:var(--radius);background:#eef7e9;border:1px solid #cfe6c3}.discount-box h3{color:var(--navy);margin-top:0}
.calculator-section{padding:84px 0;background:linear-gradient(135deg,#062f56,#0a477a);color:#fff}.calculator-layout{display:grid;grid-template-columns:.9fr 1.3fr;gap:34px;align-items:start}.calculator-copy h2{font-size:clamp(2.2rem,4vw,3.5rem);margin:8px 0}.calculator-copy li::marker{color:var(--green)}
.price-calculator,.booking-form{padding:28px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink)}.price-calculator label,.booking-form label{display:block;color:var(--navy);font-weight:800;font-size:.87rem}.price-calculator input,.price-calculator select,.booking-form input,.booking-form textarea{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #cfdbe6;border-radius:9px;background:#fff;color:var(--ink)}.calculator-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:15px 0}.check-row{display:flex!important;align-items:flex-start;gap:10px;margin:16px 0}.check-row input{width:auto!important;margin-top:4px!important}
.estimate-result,.deposit-result{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;border-radius:12px;margin:14px 0}.estimate-result{background:#edf5fb;color:var(--navy)}.deposit-result{background:#eef8e9;color:var(--navy)}.estimate-result strong,.deposit-result strong{font-size:2rem}.estimate-result small{display:block;max-width:220px;color:var(--muted)}
.price-calculator .btn{width:100%;margin-top:8px}
.booking-section{background:var(--light)}.booking-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:start}.booking-grid h2{color:var(--navy);font-size:clamp(2.2rem,4vw,3.5rem)}.policy-card{padding:22px;border-radius:var(--radius);background:#fff;border:1px solid var(--border)}.policy-card h3{color:var(--navy);margin-top:0}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-form .full{grid-column:1/-1}.booking-status{color:var(--navy);font-weight:800}
.payment-note{padding:20px 0;background:#fff6d9;color:#604b00;border-top:1px solid #ead78b;border-bottom:1px solid #ead78b}.payment-note strong{margin-right:6px}
@media(max-width:900px){.price-grid{grid-template-columns:repeat(2,1fr)}.calculator-layout,.booking-grid{grid-template-columns:1fr}}
@media(max-width:620px){.price-grid,.calculator-fields,.booking-form{grid-template-columns:1fr}.booking-form .full{grid-column:auto}.estimate-result,.deposit-result{align-items:flex-start;flex-direction:column}.pricing-hero{padding:72px 0}}

.terms-gate{padding:18px;border-radius:12px;background:#fff7d9;border:1px solid #e7d47d;color:#5c4900}.terms-gate p{margin:4px 0 10px}.terms-gate .btn-secondary{background:#fff;color:var(--navy);border-color:#d4c36d}.terms-accepted-message{color:#1d6f28;font-weight:800}
