/* Fitting uses the site's compact type scale. Page scroll owns the form. */
body.fitting-compact.fitting-experience{height:auto;min-height:100dvh;overflow-x:hidden;overflow-y:auto;font-size:12px}
body.fitting-compact.fitting-experience .fitting-page-main{display:flex;width:min(920px,100%);height:auto;min-height:0;overflow:visible;gap:20px;padding:32px 28px 60px}
body.fitting-compact.fitting-experience .fitting-page-form,
body.fitting-compact.fitting-experience .appointment-form-panel{display:block;height:auto;max-height:none;overflow:visible}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form{display:block;height:auto;max-width:none;overflow:visible;padding:28px;border-radius:20px;border:1px solid #d8dfd4;box-shadow:0 8px 30px #20372c08}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form>.fitting-step{display:block;flex:none;height:auto;max-height:none;overflow:visible;padding:0;scroll-margin-top:90px}
body.fitting-compact.fitting-experience .form-kicker{scroll-margin-top:90px}
body.fitting-compact.fitting-experience [hidden]{display:none!important}
body.fitting-compact.fitting-experience .fitting-mode-toggle{width:min(380px,100%);min-height:56px;gap:4px}
body.fitting-compact.fitting-experience .fitting-mode-toggle button{min-height:48px;font-size:12px;flex:1}
body.fitting-compact.fitting-experience .fitting-method-insight{padding:0;gap:12px}
body.fitting-compact.fitting-experience .fitting-method-insight p,
body.fitting-compact.fitting-experience .fitting-method-insight p strong{font-size:12px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-method-insight button{font-size:12px;min-height:48px}
body.fitting-compact.fitting-experience .fitting-stage-nav{gap:12px;margin-bottom:24px}
body.fitting-compact.fitting-experience .fitting-stage-nav button{min-height:48px;gap:8px;font-size:12px}
body.fitting-compact.fitting-experience .fitting-stage-nav button span{width:24px;height:24px;font-size:11px}
body.fitting-compact.fitting-experience .appointment-form-panel .form-kicker{display:block;margin-bottom:20px}
body.fitting-compact.fitting-experience .form-kicker strong{font-size:18px;line-height:1.35}
body.fitting-compact.fitting-experience .form-kicker small{display:block;font-size:12px;line-height:1.6;margin-top:7px}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form label{font-size:12px;line-height:1.5;margin-bottom:20px}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form input:not([type=checkbox]):not([type=file]),
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form textarea,
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form select{font-size:14px!important;line-height:1.5;min-height:50px;padding:12px 14px}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .field-row{gap:20px}
body.fitting-compact.fitting-experience .fitting-trip-card{grid-template-columns:132px minmax(0,1fr);gap:20px}
body.fitting-compact.fitting-experience .fitting-trip-card>img{height:176px;width:100%;object-fit:cover}
body.fitting-compact.fitting-experience .fitting-trip-copy{gap:12px;padding:20px 20px 20px 0}
body.fitting-compact.fitting-experience .fitting-trip-copy>strong{font-size:18px;line-height:1.3}
body.fitting-compact.fitting-experience .fitting-trip-copy>small{font-size:11px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-trip-copy>span{font-size:12px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-booking-heading{gap:12px;margin-bottom:20px}
body.fitting-compact.fitting-experience .fitting-booking-heading h2{font-size:14px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-booking-heading button{font-size:12px;min-height:48px}
body.fitting-compact.fitting-experience .fitting-picker-section{margin-top:24px}
body.fitting-compact.fitting-experience .fitting-picker-section h3{font-size:14px;margin-bottom:12px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-picker-section h3>span{font-size:12px;width:22px;height:22px}
body.fitting-compact.fitting-experience .fitting-city-list{flex-wrap:wrap;overflow:visible;gap:10px}
body.fitting-compact.fitting-experience .fitting-city-list button{font-size:12px;min-height:48px;padding:10px 20px}
body.fitting-compact.fitting-experience .fitting-picker-section:has(#fitting-dates){display:block}
body.fitting-compact.fitting-experience .fitting-date-list{flex-wrap:wrap;overflow:visible;gap:10px}
body.fitting-compact.fitting-experience .fitting-date-list button{min-height:52px;min-width:136px}
body.fitting-compact.fitting-experience .fitting-date-list button strong{font-size:16px}
body.fitting-compact.fitting-experience .fitting-date-list button span{font-size:12px}
body.fitting-compact.fitting-experience .fitting-timezone{position:static;display:block;max-width:none;margin:-5px 0 12px;font-size:11px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-hour-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body.fitting-compact.fitting-experience .fitting-hour-list button{min-height:72px;gap:6px;padding:12px 8px}
body.fitting-compact.fitting-experience .fitting-hour-list button strong{font-size:14px;white-space:nowrap}
body.fitting-compact.fitting-experience .fitting-hour-list button span{font-size:11px;line-height:1.4}
body.fitting-compact.fitting-experience .fitting-venue{font-size:12px!important;line-height:1.6!important;margin:16px 0 0!important}
body.fitting-compact.fitting-experience .fitting-trip-status{font-size:12px;line-height:1.6}
body.fitting-compact.fitting-experience .fitting-other-city button,
body.fitting-compact.fitting-experience .fitting-detail-link{font-size:12px;min-height:48px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-selection{padding:14px 16px;margin-bottom:22px;gap:16px}
body.fitting-compact.fitting-experience .fitting-selection strong{font-size:14px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-selection span{font-size:12px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-selection button{font-size:12px;min-height:44px}
body.fitting-compact.fitting-experience .fitting-step-footer{margin-top:28px;padding-top:16px;gap:12px;border-top:1px solid #d8dfd4}
body.fitting-compact.fitting-experience .fitting-step-footer .fitting-step-next,
body.fitting-compact.fitting-experience .fitting-step-footer .fitting-step-back,
body.fitting-compact.fitting-experience .fitting-step-footer .fitting-submit{min-height:52px;font-size:12px;padding:12px 18px}
body.fitting-compact.fitting-experience .fitting-action-feedback{font-size:11px;line-height:1.5}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .fitting-step-footer label.checkline:has(input[name=privacy]){font-size:12px;line-height:1.5;margin:0;min-height:48px}
body.fitting-compact.fitting-experience .fitting-submit-note{display:block;font-size:12px;line-height:1.6;margin:16px 0;color:#526356}
body.fitting-compact.fitting-experience .form-hint,
body.fitting-compact.fitting-experience #landing-package-guidance,
body.fitting-compact.fitting-experience #form-status{font-size:12px;line-height:1.6}
.fitting-request-review{padding:20px;margin-top:24px;background:#f4f6f0;border:1px solid #d8dfd4;border-radius:14px}
.fitting-review-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.fitting-review-heading h2{margin:0;font:600 16px/1.4 var(--sans)}
.fitting-review-heading button{min-height:44px;border:0;padding:8px 4px;background:none;color:#274233;font:500 12px/1.5 var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.fitting-request-review dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px 16px;margin:0}
.fitting-request-review dt{font:400 12px/1.5 var(--sans);color:#526356}
.fitting-request-review dd{margin:0;font:500 14px/1.5 var(--sans);overflow-wrap:anywhere}
.fitting-review-note{margin:20px 0 0;padding-top:16px;border-top:1px solid #d8dfd4;font:400 12px/1.6 var(--sans);color:#526356}
body.fitting-compact.fitting-experience .fitting-ai-tabs{gap:10px;margin-bottom:18px}
body.fitting-compact.fitting-experience .fitting-ai-tabs button{font-size:12px;min-height:48px}
body.fitting-compact.fitting-experience .measurement-ai>p{font-size:12px;line-height:1.6;margin-bottom:18px}
body.fitting-compact.fitting-experience .measurement-ai-controls{gap:16px}
body.fitting-compact.fitting-experience .measurement-ai-controls .measurement-ai-upload{min-height:190px;grid-template-columns:64px minmax(0,1fr);gap:6px 14px;padding:18px;position:relative}
body.fitting-compact.fitting-experience .measurement-ai-upload>span:not(.fitting-photo-silhouette){font-size:14px;line-height:1.5;align-self:end}
body.fitting-compact.fitting-experience .measurement-ai-upload small{font-size:11px;line-height:1.5;align-self:start;overflow-wrap:anywhere}
body.fitting-compact.fitting-experience .measurement-ai-upload .fitting-photo-silhouette{grid-column:1;grid-row:1/3;align-self:center}
.fitting-photo-silhouette svg{display:block;width:64px;height:auto}
body.fitting-compact.fitting-experience .measurement-ai-height>span{font-size:11px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-photo-links{flex-wrap:wrap;gap:8px}
body.fitting-compact.fitting-experience .fitting-estimate-trigger,
body.fitting-compact.fitting-experience .fitting-estimate-sheet [data-measurement-analyze],
body.fitting-compact.fitting-experience .fitting-detail-done{font-size:12px!important;min-height:52px}
body.fitting-compact.fitting-experience .fitting-manual-shortcut{grid-column:1/-1;text-align:center;padding:10px;border:1px solid #d8dfd4;border-radius:11px}
body.fitting-compact.fitting-experience .fitting-profile-lookup{padding:20px}
body.fitting-compact.fitting-experience .fitting-profile-lookup p,
body.fitting-compact.fitting-experience .fitting-profile-lookup strong,
body.fitting-compact.fitting-experience .fitting-profile-lookup button{font-size:14px;line-height:1.5}
body.fitting-compact.fitting-experience .fitting-profile-status,
body.fitting-compact.fitting-experience .fitting-photo-status{font-size:12px;line-height:1.6}
body.fitting-compact.fitting-experience .fitting-attached-profile{font-size:14px;padding:16px}
body.fitting-compact.fitting-experience .fitting-attached-profile p{font-size:12px;line-height:1.5}
html:has(body.fitting-experience .fitting-detail-dialog[open]),
body.fitting-compact.fitting-experience:has(.fitting-detail-dialog[open]){overflow:hidden}
body.fitting-compact.fitting-experience .fitting-detail-dialog{position:fixed;inset:0;box-sizing:border-box;padding:24px;max-height:calc(var(--fit-viewport,100dvh) - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:min(680px,calc(100% - 24px));gap:14px}
body.fitting-compact.fitting-experience .fitting-detail-header h2{font-size:18px;line-height:1.35}
body.fitting-compact.fitting-experience .fitting-detail-content{flex:1 1 auto;min-width:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;scroll-padding-block:8px;padding-right:2px}
.fitting-manual-toolbar{flex:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;padding-bottom:14px;border-bottom:1px solid #d8dfd4}
body.fitting-compact.fitting-experience .fitting-manual-toolbar .fitting-ai-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;gap:8px;overflow:visible}
body.fitting-compact.fitting-experience .fitting-manual-toolbar .measurement-ai-unit{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;align-items:center;gap:4px 6px;margin:0;font-size:12px;line-height:1.5}
.fitting-manual-toolbar .measurement-ai-unit>span{min-width:0}
body.fitting-compact.fitting-experience .fitting-manual-toolbar .measurement-ai-unit button{padding:8px;min-width:44px;min-height:44px;border:1px solid #ccd6c6;border-radius:10px;background:#fafbf7;color:#36533e;font:500 12px/1.5 var(--sans);cursor:pointer}
body.fitting-compact.fitting-experience .fitting-manual-toolbar .measurement-ai-unit button.is-active{background:#274233;color:#fff;border-color:#274233}
body.fitting-compact.fitting-experience .fitting-manual-toolbar .measurement-ai-unit small{grid-column:1/-1;font-size:11px;line-height:1.5;color:#526356}
body.fitting-compact.fitting-experience .fitting-detail-content,
body.fitting-compact.fitting-experience .fitting-detail-content p,
body.fitting-compact.fitting-experience .fitting-detail-content .measurement-group label,
body.fitting-compact.fitting-experience .fitting-detail-content .measurement-ai-unit,
body.fitting-compact.fitting-experience .fitting-detail-content .measurement-ai-unit button{font-size:12px;line-height:1.6}
body.fitting-compact.fitting-experience .fitting-detail-content .measurement-ai-field-detail,
body.fitting-compact.fitting-experience .fitting-detail-content .measurement-ai-unit small{font-size:11px;line-height:1.5}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .fitting-detail-content label,
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .fitting-detail-content .measurement-group label,
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .fitting-detail-content p{font-size:12px;line-height:1.6}
body.fitting-compact.fitting-experience #enquiry-form .fitting-submit-note{display:none}
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .checkline,
body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .measurement-ai-consent>span{font-size:12px!important;line-height:1.6}
.fitting-photo-figure{display:flex;align-items:center;gap:24px;margin:0 0 24px;padding:18px;background:#f4f6f0;border-radius:14px}
.fitting-photo-figure svg{width:110px;max-width:35%;height:auto;flex:none}
.fitting-photo-figure figcaption{font:500 14px/1.6 var(--sans);color:#274233}
body.fitting-experience .fitting-comparison-dialog{width:min(900px,calc(100% - 24px));padding:24px;gap:18px}
body.fitting-experience .fitting-comparison-header h2{font-size:18px;line-height:1.4}
body.fitting-experience .fitting-comparison-body,
body.fitting-experience .fitting-comparison-body>p,
body.fitting-experience .fitting-comparison-table,
body.fitting-experience .fitting-comparison-table thead th{font-size:12px;line-height:1.6}
body.fitting-experience .fitting-comparison-table th,
body.fitting-experience .fitting-comparison-table td{padding:16px 12px;hyphens:none}
body.fitting-experience .fitting-comparison-table tbody th,
body.fitting-experience .fitting-comparison-table thead span,
body.fitting-experience .fitting-comparison-body .fitting-comparison-note,
body.fitting-experience .fitting-comparison-insights summary,
body.fitting-experience .fitting-comparison-insights details p,
body.fitting-experience .fitting-comparison-footer p{font-size:12px;line-height:1.6}
body.fitting-experience .fitting-comparison-footer button{font-size:12px;min-height:52px}
body.fitting-experience button:focus-visible{outline:3px solid #8a673c;outline-offset:3px}
@media(max-width:760px){
 body.fitting-compact.fitting-experience{padding-top:60px}
 body.fitting-compact.fitting-experience .bt-mobile-header{position:fixed;top:0;left:0;right:0;z-index:50}
 body.fitting-compact.fitting-experience .fitting-page-main{padding:24px 14px calc(110px + env(safe-area-inset-bottom));gap:18px}
 body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form{padding:20px 16px;border-radius:18px}
 body.fitting-compact.fitting-experience .fitting-method-insight p span{display:none}
 body.fitting-compact.fitting-experience .fitting-method-insight p strong{font-size:11px}
 body.fitting-compact.fitting-experience .fitting-method-insight button{padding:10px;font-size:11px}
 body.fitting-compact.fitting-experience .fitting-stage-nav{gap:8px;margin-bottom:20px}
 body.fitting-compact.fitting-experience .fitting-stage-nav button{gap:5px;font-size:11px}
 body.fitting-compact.fitting-experience .fitting-stage-nav button span{width:22px;height:22px}
 body.fitting-compact.fitting-experience .fitting-trip-card{grid-template-columns:84px minmax(0,1fr);gap:12px}
 body.fitting-compact.fitting-experience .fitting-trip-card>img{height:180px}
 body.fitting-compact.fitting-experience .fitting-trip-copy{gap:10px;padding:14px 10px 14px 0}
 body.fitting-compact.fitting-experience .fitting-trip-copy>strong{font-size:16px}
 body.fitting-compact.fitting-experience .fitting-trip-copy>small{font-size:11px}
 body.fitting-compact.fitting-experience .fitting-trip-copy>span{font-size:11px}
 body.fitting-compact.fitting-experience .fitting-hour-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body.fitting-compact.fitting-experience .fitting-hour-list button strong{font-size:12px}
 body.fitting-compact.fitting-experience .fitting-hour-list button span{font-size:11px}
 body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form .field-row{grid-template-columns:minmax(0,1fr);gap:0}
 body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form input:not([type=checkbox]):not([type=file]):focus,
 body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form textarea:focus,
 body.fitting-compact.fitting-experience .appointment-form-panel #enquiry-form select:focus{font-size:16px!important}
 body.fitting-compact.fitting-experience .fitting-step-footer{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));z-index:5;padding:14px 0 0;background:white;box-shadow:0 -8px 12px #fff}
 body.fitting-compact.fitting-experience .fitting-step-footer .fitting-step-back{min-width:64px;padding-inline:12px;font-size:12px}
 body.fitting-compact.fitting-experience .fitting-step-footer .fitting-step-next,
 body.fitting-compact.fitting-experience .fitting-step-footer .fitting-submit{font-size:12px}
 body.fitting-compact.fitting-experience #enquiry-form:has(input:focus,select:focus,textarea:focus) .fitting-step-footer{position:static}
 .fitting-request-review{padding:16px}
 .fitting-review-heading{align-items:flex-start;gap:8px}
 .fitting-review-heading h2{font-size:16px}
 .fitting-review-heading button{font-size:11px;white-space:nowrap}
 .fitting-request-review dl{grid-template-columns:minmax(0,1fr);gap:5px}
 .fitting-request-review dd{font-size:12px;margin-bottom:12px}
 .fitting-request-review dd:last-child{margin-bottom:0}
 body.fitting-compact.fitting-experience .measurement-ai-controls{grid-template-columns:minmax(0,1fr);gap:16px}
 body.fitting-compact.fitting-experience .measurement-ai-controls .measurement-ai-upload{min-height:150px}
 body.fitting-compact.fitting-experience .fitting-detail-dialog{top:calc(12px + env(safe-area-inset-top));bottom:auto;margin:0 auto;padding:16px;max-height:calc(var(--fit-viewport,100dvh) - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:calc(100% - 16px)}
 body.fitting-compact.fitting-experience .fitting-detail-dialog .field-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 body.fitting-experience .fitting-comparison-dialog{padding:16px;gap:14px}
 body.fitting-experience .fitting-comparison-header h2{font-size:18px}
 body.fitting-experience .fitting-comparison-table{display:table}
 body.fitting-experience .fitting-comparison-table th,
 body.fitting-experience .fitting-comparison-table td{padding:10px 7px}
 body.fitting-experience .fitting-comparison-footer button{font-size:12px;padding-inline:8px}
}
@media(max-width:600px){.fitting-manual-toolbar{grid-template-columns:minmax(0,1fr);gap:12px}}
@media(max-width:360px){body.fitting-compact.fitting-experience .fitting-detail-header h2{font-size:18px}}
/* The visual viewport shrinks when the phone keyboard opens. */
body.fitting-compact.fitting-experience .fitting-detail-dialog.fitting-detail-short{padding:12px;gap:8px}
body.fitting-compact.fitting-experience .fitting-detail-short .fitting-detail-header h2{font-size:18px}
body.fitting-compact.fitting-experience .fitting-detail-short .fitting-detail-done{min-height:48px}
body.fitting-compact.fitting-experience .fitting-detail-short .fitting-manual-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-bottom:8px}
body.fitting-compact.fitting-experience .fitting-detail-short .fitting-manual-toolbar .fitting-ai-tabs button{padding:8px;font-size:11px;min-height:44px}
body.fitting-compact.fitting-experience .fitting-detail-short .fitting-manual-toolbar .measurement-ai-unit{grid-template-columns:44px 44px;gap:6px}
body.fitting-compact.fitting-experience .fitting-detail-short .measurement-ai-unit>span,
body.fitting-compact.fitting-experience .fitting-detail-short .measurement-ai-unit>small,
body.fitting-compact.fitting-experience .fitting-detail-short .fitting-manual-measurements .form-hint{display:none}
@media(prefers-reduced-motion:reduce){body.fitting-experience .fitting-step.is-entering{animation:none}}
