.aj-booking-page{background:#faf8f5;color:#303b71}
.aj-booking-page .aj-legal-sidebar,.aj-booking-page .aj-legal-updated{display:none!important}
.aj-booking-page .aj-legal-layout{display:block!important;max-width:1120px!important;margin-left:auto;margin-right:auto}
.aj-booking-page .aj-legal-content{max-width:none!important;min-width:0}
.aj-booking-page .aj-legal-content>h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.1;margin-bottom:24px}
.ajb-intro{max-width:650px;margin-bottom:42px}.ajb-intro p:first-child{font-family:'Playfair Display',Georgia,serif;font-size:24px;color:#303b71}.ajb-intro p{line-height:1.8;color:#687080}
.ajb-flow{font-family:'Plus Jakarta Sans',sans-serif}.ajb-flow [hidden]{display:none!important}
.ajb-card{background:white;border:1px solid #e8e3d9;padding:clamp(24px,4vw,44px);margin:24px 0;box-shadow:0 12px 40px #303b7105}
.ajb-kicker{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#98763a;margin-bottom:12px}
.ajb-flow h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(26px,3vw,34px);font-weight:400;margin:0 0 26px;color:#303b71}.ajb-flow h3{font-family:'Playfair Display',Georgia,serif;font-size:25px;font-weight:400;margin:0 0 10px}
.ajb-grid{display:grid;grid-template-columns:1fr 1fr .7fr 1.3fr;align-items:end;gap:18px}.ajb-grid.ajb-two{grid-template-columns:1fr 1fr}
.ajb-flow label:not(.ajb-choice){font-size:12px;letter-spacing:.02em;color:#303b71}.ajb-flow input:not([type=checkbox]):not([type=radio]),.ajb-flow textarea{display:block;background:#faf8f5;border:1px solid #e4e0d7;border-radius:0;width:100%;min-width:0;padding:14px;margin-top:9px;font:inherit;font-size:16px;color:#303b71;box-sizing:border-box;min-height:50px}
.ajb-flow input:focus-visible,.ajb-flow textarea:focus-visible,.ajb-flow button:focus-visible,.ajb-choice:has(:focus-visible){outline:2px solid #c5a059;outline-offset:3px}
.ajb-button{display:flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:14px 20px;background:#303b71;color:white;font-family:inherit;font-size:13px;border:0;cursor:pointer;transition:background .2s}.ajb-button:hover{background:#202952}.ajb-button:disabled{opacity:.55;cursor:wait}.ajb-button span{color:#d9bd87;font-size:20px}
.ajb-small{font-size:12px!important;color:#737886!important;line-height:1.8!important;margin:16px 0 0}.ajb-muted{color:#818693}.ajb-notice,.ajb-error{padding:16px 20px;background:#eeedf4;font-size:14px;line-height:1.7}.ajb-error{background:#f9ece8;color:#8a3527}#ajb-feedback:empty{display:none}
#ajb-results{margin:40px 0}.ajb-apartments{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ajb-choice{display:flex;align-items:flex-start;gap:16px;background:white;border:1px solid #e4e0d7;padding:26px;cursor:pointer;transition:border-color .2s,background .2s}.ajb-choice:has(input:checked){border-color:#c5a059;background:#f7f4ee}.ajb-choice input{margin-top:8px;accent-color:#303b71;width:17px;height:17px;flex-shrink:0}.ajb-price{font-size:18px;font-family:'Playfair Display',Georgia,serif;color:#303b71;margin:18px 0 0}.ajb-summary{background:#faf8f5;padding:18px;line-height:1.8;font-size:14px;margin-bottom:28px}
.ajb-message{display:block;margin-top:24px}.ajb-flow textarea::placeholder{color:#969aa3}.ajb-consent{display:flex;align-items:flex-start;gap:12px;margin:24px 0;line-height:1.8}.ajb-consent input{accent-color:#303b71;margin-top:5px;flex-shrink:0}.ajb-consent a{color:#98763a;text-decoration:underline}.ajb-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.ajb-success{border-top:3px solid #c5a059}.ajb-success p{line-height:1.8}
.ajb-fallback-main{max-width:1120px;margin:0 auto;padding:150px 24px 80px}.ajb-fallback-header{background:#303b71;color:white;padding:24px;display:flex;justify-content:space-between;gap:20px}.ajb-fallback-header a{color:inherit}.ajb-fallback-footer{background:#1d2446;color:white;padding:40px 24px}
@media(max-width:800px){.ajb-grid{grid-template-columns:1fr 1fr}.ajb-apartments{grid-template-columns:1fr}.ajb-card{margin:20px 0}.ajb-intro{margin-bottom:30px}}
@media(max-width:500px){.ajb-grid,.ajb-grid.ajb-two{grid-template-columns:1fr}.ajb-choice{padding:22px}.ajb-button{width:100%}.ajb-flow input,.ajb-flow textarea{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){.ajb-flow *{transition:none!important}}
