/* Customer planner refinements. Scoped here so office and itinerary pages keep their layout. */
:root{--ink:#102c50;--blue:#1254ac;--muted:#52677e;--border:#dbe4ee}
body{background:#f1f5f9}main{padding-top:38px}header{margin-bottom:26px}header .eyebrow{font-size:11px;color:var(--blue);letter-spacing:.16em;font-weight:700;margin-bottom:14px}header h1{font-size:clamp(32px,4vw,46px)}header p{max-width:660px}.confidence-line{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 24px;margin:22px 0 0;font-size:12px;color:var(--muted)}.confidence-line span:before{content:'✓';color:#28735a;font-weight:700;margin-right:7px}.planner-switch{display:grid;grid-template-columns:1fr 1fr;max-width:760px;margin:0 auto 32px;padding:5px;border:1px solid #cbd8e6;border-radius:14px;background:#e8eef5;gap:5px}.planner-switch button{font:inherit;text-align:left;border:1px solid transparent;background:transparent;border-radius:10px;padding:16px 22px;color:var(--muted);cursor:pointer}.planner-switch button[aria-pressed=true]{background:white;border-color:#b9cde3;box-shadow:0 2px 7px #102c5008;color:var(--ink)}.planner-switch strong,.planner-switch span{display:block}.planner-switch strong{font-size:15px;line-height:1.4}.planner-switch span{font-size:12px;font-weight:400;margin-top:4px}.planner-switch [aria-pressed=true] strong:before{content:'●';color:var(--blue);font-size:12px;margin-right:8px}.steps{max-width:600px;margin-bottom:28px}.panel{box-shadow:0 6px 24px #102c5005}.form-section{margin:24px 0 28px;padding-top:22px;border-top:1px solid #e3eaf1}.section-caption{display:flex;align-items:center;gap:12px;margin-bottom:20px}.section-caption>span{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#edf3fa;color:var(--blue);width:32px;height:32px;flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.03em}.section-caption h3{font-size:17px;margin:0;color:var(--ink)}.form-section .grid{gap:0 18px}.form-section>p:last-child{margin-bottom:0}#journey>h2{margin-bottom:16px}#journey .form-intro{margin-bottom:0}.radio-choice:has(input:checked){background:#edf4fc;border-color:#9dbbe0}.radio-choice small{color:#52677e}input,select,textarea{transition:border-color .15s,box-shadow .15s}input:hover,select:hover,textarea:hover{border-color:#8ea8c4}textarea{resize:vertical}.place label{position:relative}.place.is-selected input{border-color:#76aa99;background-color:#fbfffd}.place.is-selected .hint{color:#28634d}.suggestions{top:76px;z-index:10;max-height:310px;overflow-y:auto;box-shadow:0 12px 30px #102c5020}.suggestions button{padding:13px 16px;border-color:#e6edf4;color:var(--ink)}.suggestions button:focus-visible{outline-offset:-3px}.place .remove{min-height:24px;padding:0 3px;color:#60778d}.primary{box-shadow:0 4px 9px #1254ac17}.primary:disabled{box-shadow:none}.button-reassurance{text-align:center;font-size:12px;color:var(--muted);line-height:1.6;margin:14px 0 0}.planner-sidebar{align-self:start;display:grid;gap:18px;position:sticky;top:20px}.live-plan{padding:24px;background:#fff}.live-plan .eyebrow{font-size:10px;color:var(--blue);letter-spacing:.14em}.live-plan h2{font-size:23px;line-height:1.2;margin:6px 0 20px;letter-spacing:-.7px}.live-plan .hint{margin:16px 0 0}.plan-row{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid #e7edf3}.plan-row>span{display:flex;justify-content:center;align-items:center;width:28px;height:28px;flex-shrink:0;border-radius:50%;background:#edf3fa;color:var(--blue);font-size:11px;font-weight:700}.plan-row strong,.plan-row small{display:block;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.plan-row small{font-size:11px;color:var(--muted);margin-top:2px}.plan-row .not-set{font-weight:400;color:#657a90}.rates{padding:26px}.rates h2{font-size:25px;line-height:1.2;margin-bottom:14px}.rates dl{margin:20px 0}.rates dl div{padding:14px 0}.rates dt{font-size:13px}.rates dd,.rates dl div:last-child dd{font-size:17px}.rates p{font-size:12px}.rates .inclusive{font-size:14px;margin:16px 0}.rates .availability{margin:18px 0 0;font-size:11px}.rates a{margin-top:18px;font-size:13px}.rate-notes{font-size:12px;color:#d6e4f1;line-height:1.7}.rate-notes summary{cursor:pointer;font-weight:700}.rate-notes p{margin:12px 0}.coach-capacity{padding-top:18px;margin-top:18px}.coach-icons{display:none}.coach-capacity h3{font-size:17px;margin-bottom:6px}.rates>p:first-of-type{margin-bottom:0}.planning-status{display:flex;align-items:flex-start;gap:12px;background:#edf4fc;padding:16px;border-radius:10px;margin-top:16px}.planning-status strong{font-size:13px;color:var(--ink)}.planning-status p{font-size:12px;line-height:1.5;margin:5px 0 0;color:var(--muted)}.busy-indicator{width:18px;height:18px;border:2px solid #b8cce5;border-top-color:var(--blue);border-radius:50%;flex-shrink:0;margin-top:3px}.estimate-facts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}.estimate-facts span{background:#edf3fa;padding:7px 11px;border-radius:6px;font-size:12px;color:var(--ink)}.result-heading{background:linear-gradient(110deg,#edf4fc,#f8fbff);border:1px solid #dbe7f5;padding:24px;border-radius:12px;margin-bottom:14px}.result-heading h2{font-size:16px;color:#405e7f;letter-spacing:0}.result-heading #total{font-size:48px;letter-spacing:-1.8px;line-height:1.2;margin:0}.result-heading .hint{font-size:11px;margin:8px 0 0}.result-heading .text-button{margin:0;min-height:34px;font-size:12px;padding:7px 10px}#estimate-review>.included{font-weight:700;color:#28634d;margin:12px 0 18px}#contact>.contact-plan{padding:17px 20px;border:1px solid #ceddef;border-radius:10px;margin:22px 0;background:#f6f9fd}.contact-plan strong{display:block;font-size:24px;letter-spacing:-.5px}.contact-plan p{font-size:13px;margin:8px 0 0;color:var(--muted);overflow-wrap:anywhere}.next-steps{font-size:13px;margin:20px 0 26px}.next-steps strong{color:var(--ink)}.next-steps p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:6px}.manual-section{margin-top:24px}.portal-layout .panel{padding:36px}.portal-heading h2{margin-bottom:0}.portal-layout .planner-sidebar{display:none}.layout:has(#contact:not([hidden])) .live-plan{display:none}.tour-active .layout,.tour-active .steps,.tour-active .manual-section{display:none}.tour-active .confidence-line span:first-child{display:none}
@media(prefers-reduced-motion:no-preference){.busy-indicator{animation:planner-spin .9s linear infinite}@keyframes planner-spin{to{transform:rotate(360deg)}}}
@media(min-width:851px){.layout{grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr)}}
@media(max-width:850px){.planner-sidebar{position:static}.live-plan{display:none}.planner-sidebar .rates{padding:26px}.rates .coach-capacity{display:none}.rates dl{margin:16px 0}.rates dl div{padding:12px 0}.confidence-line{gap:9px 16px;font-size:11px}main{padding-top:30px}}
@media(max-width:540px){.planner-switch{margin-bottom:24px;gap:3px;padding:4px;border-radius:12px}.planner-switch button{padding:12px 11px}.planner-switch strong{font-size:12px}.planner-switch span{font-size:10px;line-height:1.5}.planner-switch [aria-pressed=true] strong:before{display:none}.confidence-line{margin-top:16px;font-size:10px;gap:6px 14px}.confidence-line span:last-child{display:none}header h1{font-size:32px}header .eyebrow{font-size:9px;letter-spacing:.1em}header p{font-size:14px}.panel{padding:22px 18px}.form-section{margin-top:22px;padding-top:20px}.section-caption h3{font-size:16px}.section-caption{gap:10px}.form-section .grid{grid-template-columns:1fr}.result-heading{padding:19px 16px;gap:8px}.result-heading #total{font-size:39px}.result-heading h2{font-size:14px}.result-heading .text-button{font-size:10px;padding:6px 8px}.estimate-facts{gap:6px}.estimate-facts span{font-size:11px;padding:6px 8px}.option-button{padding:14px}.portal-layout .panel{padding:24px 18px}.button-reassurance{font-size:11px}.breakdown-row{display:block}.breakdown-row span{display:block;font-size:12px;margin-top:4px}.planning-status{padding:13px}.suggestions{max-height:260px}.standalone-nav{padding:18px 20px}}
@media print{.planner-switch,.planner-sidebar,.confidence-line,.planning-status,.button-reassurance{display:none!important}}
.place .remove{position:relative;z-index:2}

/* Presentation polish: compact entry, calmer surfaces and clearer controls. */
:root{font-family:'Segoe UI',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;-webkit-font-smoothing:antialiased;background:#f4f7fb}body{background:#f4f7fb}button,.primary,.text-button,.segmented button,.suggestions button{font-family:inherit}main{padding-top:30px}header{margin-bottom:22px}header h1{font-size:clamp(32px,3.6vw,44px);letter-spacing:-1.6px;margin-bottom:12px}header p{max-width:760px;font-size:16px;line-height:1.65}header .eyebrow{margin-bottom:12px}.confidence-line{margin-top:17px;gap:10px 22px}.standalone-nav{padding:16px 24px}.standalone-nav img{width:160px;height:52px;object-fit:contain;object-position:left center}.standalone-nav>a:last-child{text-decoration:none;padding:10px 14px;border:1px solid #d4e0ed;border-radius:9px;background:white}.planner-switch{margin-bottom:24px;background:#e9eff6;border-color:#d5e0ec;padding:5px}.planner-switch button{padding:14px 20px}.planner-switch button[aria-pressed=true]{border-color:#c4d6eb;box-shadow:0 3px 9px #193d6a09}.planner-switch button:hover:not([aria-pressed=true]){background:#f4f7fb}.steps{margin-bottom:24px}.steps li{font-size:13px}.steps span{width:31px;height:31px}.panel{border-color:#dfe7ef;box-shadow:0 4px 20px #102c5004}.primary-surface{padding:30px}.form-section{margin-bottom:25px}.section-caption{margin-bottom:17px}.section-caption>span{background:#edf4fc;border:1px solid #e2edf8}.section-caption h3{font-size:17px;letter-spacing:-.35px}input,select,textarea{background:#fff;border-color:#cbd7e4;min-height:50px}.primary{min-height:52px;font-size:15px;box-shadow:0 4px 10px #1254ac12}.text-button:hover{background:#edf4fc;border-color:#8fb2df}.radio-choice{cursor:pointer;transition:border-color .15s,background-color .15s}.radio-choice:has(input:checked){box-shadow:inset 3px 0 #1254ac}.live-plan{border-top:3px solid #c5daf1}.live-plan .hint{font-size:12px}.plan-row small{font-size:12px}.plan-row{padding:12px 0}.rates{background:#102c50;box-shadow:0 6px 20px #102c5009}.rates dl div{align-items:center}.rates dd{font-variant-numeric:tabular-nums}.result-heading{padding:25px;background:#f0f6fd;border-color:#d7e5f5}.result-heading #total{font-size:52px;font-variant-numeric:tabular-nums}.estimate-facts span{border:1px solid #e0e9f3;background:#f4f7fb}.option-button{transition:border-color .15s,background-color .15s}.option-button:hover{border-color:#749fd4}.option-button[aria-pressed=true]{box-shadow:0 3px 12px #1254ac0a}.cost-details,.requirements{border-color:#e0e8f1}.cost-details summary,.requirements summary{min-height:24px}.manual-section{background:#f9fbfe;box-shadow:none}.button-reassurance{color:#5b7087}.portal-reference{font-size:12px;letter-spacing:.06em;font-weight:700}.portal-heading{padding-bottom:20px;border-bottom:1px solid #e2eaf2}.portal-layout .panel{border-top:3px solid #c5daf1}.journey-progress li{font-size:12px}.audit-panel{border-top:1px solid #e0e8f1;padding-top:20px}.audit-panel>summary{padding:8px 0}.tour-heading{margin-bottom:22px}.tour-heading h2{font-size:29px;letter-spacing:-.8px}.tour-heading>p:last-child{font-size:14px}.tour-builder>.panel{box-shadow:0 5px 22px #102c5005}.tour-active header{margin-bottom:20px}.tour-active .planner-switch{margin-bottom:28px}input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:#c44c50;background:#fffafb}
@media(max-width:650px){main{padding-top:24px}.standalone-nav{padding:12px 18px}.standalone-nav img{width:139px;height:44px}.standalone-nav>a:last-child{font-size:12px;padding:8px 10px}header h1{font-size:32px;letter-spacing:-1px}header p{font-size:14px;line-height:1.65}header .eyebrow{font-size:9px}.confidence-line{font-size:10px;gap:7px 12px;margin-top:14px}.planner-switch button{padding:12px}.planner-switch strong{font-size:12px}.planner-switch span{font-size:11px;line-height:1.5}.primary-surface{padding:23px 19px}.steps{margin-bottom:22px}.steps li{font-size:11px}.steps span{width:28px;height:28px}.section-caption h3{font-size:16px}.result-heading #total{font-size:43px}.result-heading{padding:20px 17px}.tour-heading h2{font-size:26px}.journey-progress{gap:12px}.journey-progress li{font-size:11px}.panel{box-shadow:none}.primary{min-height:52px}input,select,textarea{font-size:16px}.tour-editor input,.tour-editor select,.tour-editor textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){input,select,textarea,.radio-choice,.option-button{transition:none}}
.standalone-nav img{object-fit:cover}@media(max-width:650px){.standalone-nav img{height:48px}}
/* Saved enquiries occupy the full workspace after the pricing sidebar closes. */
.layout.portal-layout{grid-template-columns:minmax(0,1fr)}#portal-content>.text-link{margin:14px 22px 14px 0}.portal-layout .primary-surface{min-width:0}#portal-email-status{margin:14px 0 22px;line-height:1.7}

.booking-terms{margin:20px 0;padding:22px;border:1px solid #dbe6f3;border-radius:14px;background:#f5f8fc}.booking-terms h3{margin:0 0 12px}.booking-terms p{line-height:1.65;margin:8px 0}#portal-proceed{margin:24px 0;padding:22px;border:1px solid #bfd1e7;border-radius:14px;background:#edf4fc}#portal-proceed .primary{margin-top:16px}
