.gbs-app{--ink:#213b60;--line:#d9e1ea;max-width:900px;margin:30px auto;padding:32px;background:#fff;color:#24364c;font:16px/1.6 system-ui,sans-serif;border:1px solid var(--line);border-radius:16px;box-sizing:border-box}.gbs-app *{box-sizing:border-box}.gbs-app [hidden]{display:none!important}.gbs-app h2{font-size:32px;line-height:1.25;color:var(--ink);margin:0 0 16px}.gbs-app h3{font-size:19px;color:var(--ink);margin:0 0 12px}.gbs-eyebrow{font-size:12px;font-weight:700;letter-spacing:.13em;color:#477183}.gbs-app fieldset{border:0;border-top:1px solid var(--line);padding:24px 0;margin:28px 0 0;min-width:0}.gbs-app legend{font-size:22px;font-weight:650;padding-right:12px}.gbs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gbs-app label{display:block;font-weight:550;margin-bottom:18px}.gbs-app input:not([type=checkbox]),.gbs-app select,.gbs-app textarea{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #99aabe;border-radius:6px;font:inherit;background:#fff;color:#172b43}.gbs-app input:focus,.gbs-app textarea:focus,.gbs-app select:focus,.gbs-app button:focus{outline:3px solid #70bdd6;outline-offset:2px}.gbs-app input[type=checkbox]{width:20px;height:20px;flex-shrink:0;margin-top:4px}.gbs-app button{border:0;border-radius:7px;background:var(--ink);color:#fff;padding:14px 22px;cursor:pointer;font:600 16px system-ui;min-height:48px;margin:8px 8px 8px 0}.gbs-app button:disabled{opacity:.6;cursor:wait}.gbs-app .gbs-secondary{background:#e9eef3;color:var(--ink)}.gbs-preference{background:#f6f8fb;border:1px solid var(--line);padding:20px;border-radius:8px;margin:14px 0}.gbs-preference label{margin-bottom:0}.gbs-app .gbs-terms{display:flex;align-items:flex-start;gap:12px;font-weight:400}.gbs-overlap,.gbs-overlap-summary,.gbs-recovery{padding:12px;background:#fff4d9;border-radius:6px}.gbs-muted{color:#5d6c7d;font-size:14px}.gbs-total{font-size:21px;font-weight:650;padding:20px;background:#eef5f6;border-radius:8px;margin-bottom:20px}.gbs-card{padding:18px;border:1px solid #99aabe;border-radius:6px;margin:20px 0}.gbs-message{padding:20px;background:#eef5f6;border-left:4px solid #33869b;overflow-wrap:anywhere}.gbs-payment{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}@media(max-width:600px){.gbs-app{padding:20px 16px;margin:16px 0}.gbs-grid{grid-template-columns:1fr}.gbs-app h2{font-size:27px}.gbs-app button{width:100%}.gbs-preference{padding:14px}}
.gbs-progress{font-size:14px;font-weight:650;color:#477183;border-bottom:1px solid var(--line);padding-bottom:12px}.gbs-question{min-height:155px;padding:20px 0}.gbs-question>label{font-size:21px}.gbs-question input,.gbs-question textarea,.gbs-question select{font-size:17px!important}.gbs-navigation{display:flex;justify-content:space-between;gap:12px}.gbs-navigation .gbs-continue{margin-left:auto}.gbs-review-details{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;gap:8px 20px;overflow-wrap:anywhere}.gbs-review-details dt{font-weight:650}.gbs-review-details dd{margin:0;white-space:pre-wrap}.gbs-review fieldset{margin-top:20px}.gbs-question .gbs-terms{font-size:17px}@media(max-width:600px){.gbs-review-details{grid-template-columns:1fr;gap:4px}.gbs-review-details dd{margin-bottom:12px}.gbs-navigation button{width:auto;flex:1}.gbs-question>label{font-size:19px}}
.gbs-address-panel{border:1px solid #99aabe;border-radius:6px;background:#fff;overflow:hidden;margin-top:4px;font-size:16px;font-weight:400}.gbs-address-panel ul{list-style:none;padding:0;margin:0}.gbs-address-panel li{padding:12px 14px;cursor:pointer;border-bottom:1px solid #e1e7ef}.gbs-address-panel li:hover,.gbs-address-panel li[aria-selected=true]{background:#e9f3f7;color:#213b60}.gbs-app .gbs-google-credit{width:120px;height:auto;margin:8px 12px 8px auto}.gbs-address-status{font-size:13px;font-weight:400;line-height:1.5;color:#526579;margin:8px 0}
.gbs-choice-heading{text-align:center;font-size:30px!important;line-height:1.3;margin:12px 0 18px!important}.gbs-choice-help{text-align:center;font-size:18px;margin:0 0 30px}.gbs-choices{display:grid;gap:16px}.gbs-app .gbs-choice{display:flex;align-items:center;gap:24px;width:100%;margin:0;padding:20px;border:2px solid #d1d5db;border-radius:12px;background:#fff;color:#273747;text-align:left;font-size:20px;font-weight:600}.gbs-app .gbs-choice img{width:90px;height:90px;object-fit:cover;flex-shrink:0}.gbs-app .gbs-choice[aria-checked=true]{border-color:#233d60;background:#eef4fa;box-shadow:0 0 0 1px #233d60}.gbs-choice-arrow{margin-left:auto;color:#98a2b1;font-size:30px}.gbs-choices-property_type{grid-template-columns:repeat(3,minmax(0,1fr))}.gbs-app .gbs-choices-property_type .gbs-choice{flex-direction:column;text-align:center;font-size:16px;padding:15px;gap:12px}.gbs-app .gbs-choices-property_type img{width:100%;height:110px}.gbs-choices-bedrooms{grid-template-columns:repeat(3,minmax(0,1fr))}.gbs-app .gbs-choices-bedrooms .gbs-choice{justify-content:center}.gbs-choices-construction_stage .gbs-choice{font-size:18px}@media(max-width:600px){.gbs-choice-heading{font-size:25px!important}.gbs-app .gbs-choice{gap:16px;padding:14px;font-size:18px}.gbs-app .gbs-choice img{width:65px;height:65px}.gbs-choices-property_type{grid-template-columns:repeat(2,minmax(0,1fr))}.gbs-app .gbs-choices-property_type img{width:100%;height:95px}.gbs-choice-help{font-size:16px}}

.gbs-app{max-width:1180px}.gbs-booking-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:32px;align-items:start}.gbs-booking-layout form{min-width:0}.gbs-booking-summary{padding:26px;border-radius:12px;box-shadow:0 4px 22px #172b4310;overflow-wrap:anywhere;background:#fff;border:1px solid var(--line)}.gbs-booking-summary h3{font-size:26px}.gbs-booking-summary hr{border:0;border-top:1px solid var(--line);margin:22px 0}.gbs-booking-summary b{float:right}.gbs-summary-total{font-size:23px}.gbs-summary-total b{color:#215d91}.gbs-choices-agent_confirmed,.gbs-choices-builder_confirmed{grid-template-columns:1fr 1fr}.gbs-terms-dialog{width:min(700px,calc(100% - 24px));max-height:90vh;padding:30px;border:0;border-radius:12px;color:#24364c}.gbs-terms-dialog::backdrop{background:#0008}.gbs-terms-body{max-height:55vh;overflow:auto;background:#f8f9fa;padding:20px;line-height:1.65}.gbs-dialog-actions{display:flex;justify-content:flex-end;gap:12px}.gbs-dialog-actions button{width:auto}.gbs-booking-summary small{color:#647084}@media(max-width:800px){.gbs-booking-layout{grid-template-columns:1fr}.gbs-booking-summary{padding:20px}.gbs-terms-dialog{padding:18px}}

.gbs-question[data-question=customer_name]>label,.gbs-subquestion>label{font-size:17px}.gbs-subquestion{margin-top:20px}.gbs-subquestion[data-question=agent_name],.gbs-subquestion[data-question=builder_name]{border-top:1px solid var(--line);padding-top:24px}.gbs-subquestion .gbs-choice-heading{font-size:21px!important;text-align:left}.gbs-subquestion .gbs-choice-help{text-align:left;font-size:15px;margin-bottom:18px}.gbs-app .gbs-choices-bedrooms .gbs-choice{font-size:15px;padding:12px 8px;min-width:0;text-align:center}.gbs-review .gbs-preference{border:0;background:none;padding:0;margin:0}

.gbs-question[data-question=date1]>:not(.gbs-preference-picker){display:none!important}.gbs-preference-picker h3{text-align:center;font-size:24px}.gbs-preference-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.gbs-app .gbs-preference-picker button{margin:0;padding:12px 6px;background:white;border:2px solid #d1d5db;color:var(--ink);font-size:14px;width:100%}.gbs-calendar-nav{display:grid;grid-template-columns:100px 1fr 100px;gap:12px;align-items:center;text-align:center;margin:24px 0}.gbs-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:26px;text-align:center}.gbs-app .gbs-calendar-days button{min-height:60px}.gbs-app .gbs-preference-picker button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.gbs-app .gbs-preference-picker button:disabled{background:#f3f4f6;color:#98a2b1;cursor:default}.gbs-periods{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.gbs-period-note{font-size:14px;color:#5d6c7d}@media(max-width:600px){.gbs-preference-tabs{grid-template-columns:1fr}.gbs-calendar-days{gap:4px}.gbs-app .gbs-calendar-days button{min-height:42px;padding:6px 0}.gbs-calendar-nav{grid-template-columns:80px 1fr 80px;gap:4px}.gbs-periods{grid-template-columns:1fr 1fr}}
.gbs-app .gbs-preference-picker .gbs-calendar-days button.gbs-date-selected{background:#15803d;border-color:#15803d;color:#fff;opacity:1}
.gbs-save-progress{border-top:1px solid #d9e1ea;margin-top:28px;padding-top:24px}.gbs-save-progress p{font-size:14px}.gbs-progress-status{overflow-wrap:anywhere}
.gbs-app .gbs-complete{background:#effaf2;border:1px solid #a6d9b5;border-left:6px solid #15803d;border-radius:12px;padding:32px;text-align:center}.gbs-app .gbs-complete h2{color:#166534}.gbs-app .gbs-home-link{display:inline-block;background:#166534;color:#fff;border-radius:7px;padding:12px 22px;text-decoration:none}
