@charset "utf-8";
.service-review-page .service-data-caption { margin:10px 0; color:#858b94; font-size:12px; line-height:1.6; }
.service-review-page .service-product-bar { height:22px; margin-top:16px; background:#d5d8dd; overflow:hidden; }
.service-review-page .service-product-bar > span { display:block; height:100%; background:#2f75d6; }
.service-review-page .service-product-legend { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:12px; color:#78869d; font-size:12px; }
.service-review-page .service-product-legend > span { display:flex; align-items:center; gap:6px; min-width:0; }
.service-review-page .service-product-legend i { flex:0 0 8px; height:8px; border-radius:2px; background:#2f75d6; }
.service-review-page .service-product-legend > span:last-child i { background:#d5d8dd; }
.service-review-page .service-product-legend strong { margin-left:auto; font-weight:700; font-variant-numeric:tabular-nums; }
.service-review-page .service-product-legend > span:first-child strong { color:#2f75d6; }
.service-review-page .service-price-controls { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr) auto; align-items:center; gap:7px; margin-top:18px; }
.service-review-page .service-price-controls label { display:block; width:100%; min-width:0; max-width:100%; }
.service-review-page .service-price-controls input,
.service-review-page .service-price-controls select { display:block; box-sizing:border-box; width:100%; min-width:0; height:40px; margin:0; padding:0 8px; border:1px solid #e3e7ee; border-radius:8px; background:#fff; color:#30343a; font-family:inherit; font-size:12px; line-height:normal; }
/* Bound the iOS native date field to its grid cell, and center its internal value.
   Keep type=date so the native calendar and form validation still work. */
.service-review-page .service-price-controls input[type="date"] { -webkit-appearance:none; appearance:none; display:flex; align-items:center; max-width:100%; min-inline-size:0; overflow:hidden; line-height:38px; text-align:left; }
.service-review-page .service-price-controls input[type="date"]::-webkit-date-and-time-value { display:block; flex:1; min-width:0; min-height:38px; margin:0; padding:0; line-height:38px; text-align:left; }
.service-review-page .service-price-controls input[type="date"]::-webkit-datetime-edit { min-width:0; padding:0; }
.service-review-page .service-price-controls input[type="date"]::-webkit-datetime-edit-fields-wrapper { padding:0; }
.service-review-page .service-price-submit { height:40px; padding:0 12px; border:0; border-radius:8px; background:#ffd737; color:#25282d; font-family:inherit; font-size:12px; font-weight:700; line-height:1.4; cursor:pointer; }
.service-review-page .service-price-submit { min-width:52px; white-space:nowrap; }
.service-review-page .service-price-submit:disabled { opacity:.65; cursor:wait; }
/* Progressive enhancement: same popup styling as the estimate step1 page. */
.service-review-page .service-price-controls .service-price-native { display:none; }
.service-review-page .service-price-picker { position:relative; display:flex; align-items:center; box-sizing:border-box; width:100%; min-width:0; min-height:40px; margin:0; padding:6px 22px 6px 8px; border:1px solid #e3e7ee; border-radius:8px; background:#fff; color:#30343a; font:inherit; font-size:12px; line-height:1.35; text-align:left; word-break:keep-all; cursor:pointer; }
.service-review-page .service-price-picker::after { content:""; position:absolute; right:9px; top:50%; width:5px; height:5px; margin-top:-4px; border-right:1.5px solid #8c95a3; border-bottom:1.5px solid #8c95a3; transform:rotate(45deg); }
.service-review-page .service-price-picker[aria-controls="servicePriceCalendar"] { white-space:nowrap; font-variant-numeric:tabular-nums; padding-left:6px; padding-right:17px; }
.service-review-page .ui-widget-overlay { background:rgba(17,24,39,.58); opacity:1; }
.service-review-page .service-price-dialog * { box-sizing:border-box; }
.service-review-page .service-price-dialog .ui-dialog-content { box-sizing:content-box; }
.service-review-page .service-price-dialog .ui-dialog-titlebar { min-height:58px; }
.service-review-page .service-price-dialog li input:focus-visible + label { outline:2px solid #dba900; outline-offset:5px; }
.service-review-page .service-price-dialog a:focus-visible,
.service-review-page .service-price-dialog button:focus-visible { outline:2px solid #dba900; outline-offset:2px; }
.service-review-page .service-calendar-dialog .ui-datepicker { width:100%; padding:0; border:0; font-family:inherit; }
.service-review-page .service-calendar-dialog .ui-datepicker-header { padding:8px 0 13px; background:#fff; border:0; }
.service-review-page .service-calendar-dialog .ui-datepicker-title { color:#222; font-size:16px; font-weight:700; }
.service-review-page .service-calendar-dialog .ui-datepicker-prev,
.service-review-page .service-calendar-dialog .ui-datepicker-next { top:5px; width:30px; height:30px; border:0; border-radius:50%; cursor:pointer; }
.service-review-page .service-calendar-dialog .ui-datepicker-prev span,
.service-review-page .service-calendar-dialog .ui-datepicker-next span { width:9px; height:9px; margin-top:-5px; margin-left:-5px; border-top:2px solid #606875; border-right:2px solid #606875; background:none; transform:rotate(45deg); }
.service-review-page .service-calendar-dialog .ui-datepicker-prev span { transform:rotate(-135deg); }
.service-review-page .service-calendar-dialog .ui-datepicker th { padding:9px 0; color:#3f4650; font-size:12px; font-weight:700; }
.service-review-page .service-calendar-dialog .ui-datepicker th:first-child { color:#e5484d; }
.service-review-page .service-calendar-dialog .ui-datepicker th:last-child { color:#3977d2; }
.service-review-page .service-calendar-dialog .ui-datepicker th span { opacity:1; }
.service-review-page .service-calendar-dialog .ui-datepicker td { padding:2px; }
.service-review-page .service-calendar-dialog .ui-datepicker td a,
.service-review-page .service-calendar-dialog .ui-datepicker td span { display:flex; align-items:center; justify-content:center; height:38px; padding:0; border:0; border-radius:9px; background:#f7f8fa; color:#2f343b; font-size:13px; font-weight:700; }
.service-review-page .service-calendar-dialog .ui-datepicker td.ui-state-disabled { opacity:1; }
.service-review-page .service-calendar-dialog .ui-datepicker td.ui-state-disabled span { color:#c4c8cf; font-weight:500; background:#f5f6f8; }
.service-review-page .service-calendar-dialog .ui-datepicker td a.ui-state-active { color:#191919; background:#ffd737; }
.service-review-page.theme-bbegi .service-calendar-dialog .ui-datepicker td a.ui-state-active { color:#fff; background:#ff7d3b; }
.service-review-page .service-price-table-wrap { max-width:100%; min-width:0; margin-top:16px; overflow-x:auto; border:1px solid #edf0f3; border-radius:0; }
.service-review-page .service-price-table { width:100%; margin:0; border-collapse:separate; border-spacing:0; table-layout:fixed; color:#000; font-family:inherit; font-size:12px; line-height:1.55; text-align:center; }
.service-review-page .service-price-table th,
.service-review-page .service-price-table td { padding:3px 5px; border:0; border-bottom:1px solid #edf0f3; color:#000; white-space:nowrap; vertical-align:middle; text-align:center; font-variant-numeric:tabular-nums; }
.service-review-page .service-price-table thead th { background:#ffd737; color:#000; font-weight:700; }
.service-review-page .service-price-table tbody th,
.service-review-page .service-price-table tbody td { padding-top:7px; padding-bottom:7px; background:transparent; font-weight:400; }
.service-review-page .service-price-table tbody tr:last-child > * { border-bottom:0; }
.service-review-page .service-price-table tr[hidden] { display:none; }
.service-review-page .service-price-volume-col { width:12%; }
.service-review-page .service-price-cost-col { width:auto; }
.service-review-page .service-price-crew-col { width:128px; }
.service-review-page .service-price-crew { white-space:nowrap; }
.service-review-page .service-price-crew > span { display:inline; }
.service-review-page .service-data-tip { margin:8px 0 0; color:#777e87; font-size:12px; line-height:1.6; word-break:keep-all; }
.service-review-page .service-data-empty { margin:16px 0 0; padding:20px 12px; background:#f7f8fa; color:#777e87; font-size:13px; line-height:1.6; text-align:center; }
.service-review-page .service-data-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.service-review-page #servicePriceSection { scroll-margin-top:65px; }
.service-review-page .service-price-controls :focus-visible { outline:2px solid #dba900; outline-offset:2px; }

/* Consistent section icons for packing/general pages only. */
.service-review-page .service-mark.mark-emoji { display:inline-flex; align-items:center; justify-content:center; background:none; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:22px; line-height:1; }

/* Shared service comparison: emphasize only the current page's service. */
.service-review-page .service-comparison { max-width:100%; min-width:0; border:1px solid #edf0f3; border-radius:12px; overflow-x:auto; }
.service-review-page .service-comparison-table { width:100%; margin:0; table-layout:fixed; border-collapse:separate; border-spacing:0; color:#000; font-family:inherit; font-size:12px; line-height:1.55; text-align:center; }
.service-review-page .service-comparison-table thead th { box-sizing:border-box; width:33%; }
.service-review-page .service-comparison-table thead th:first-child { width:34%; }
.service-review-page .service-comparison-table th,
.service-review-page .service-comparison-table td { padding:3px 5px; border:0; border-bottom:1px solid #edf0f3; color:#000; white-space:nowrap; vertical-align:middle; text-align:center; }
.service-review-page .service-comparison-table thead th { background:#f7f8fa; color:#000; font-weight:700; }
.service-review-page .service-comparison-table tbody th { font-weight:400; }
.service-review-page .service-comparison-table tbody th,
.service-review-page .service-comparison-table tbody td { background:transparent; text-align:left; }
.service-review-page .service-comparison-table tbody td { text-align:center; }
.service-review-page .service-comparison-table tbody tr:last-child > * { border-bottom:0; }
.service-review-page .service-comparison[data-current="B02"] tr > :nth-child(2),
.service-review-page .service-comparison[data-current="B01"] tr > :nth-child(3) { position:relative; }
.service-review-page .service-comparison[data-current="B02"] tr > :nth-child(2)::before,
.service-review-page .service-comparison[data-current="B02"] tr > :nth-child(2)::after,
.service-review-page .service-comparison[data-current="B01"] tr > :nth-child(3)::before,
.service-review-page .service-comparison[data-current="B01"] tr > :nth-child(3)::after { content:""; position:absolute; top:0; bottom:-1px; width:1px; background:#ffd737; box-shadow:0 0 4px rgba(255,215,55,.35); pointer-events:none; z-index:1; }
.service-review-page .service-comparison[data-current="B02"] tr > :nth-child(2)::before,
.service-review-page .service-comparison[data-current="B01"] tr > :nth-child(3)::before { left:0; }
.service-review-page .service-comparison[data-current="B02"] tr > :nth-child(2)::after,
.service-review-page .service-comparison[data-current="B01"] tr > :nth-child(3)::after { right:0; }
.service-review-page .service-comparison[data-current="B02"] thead th:nth-child(2),
.service-review-page .service-comparison[data-current="B01"] thead th:nth-child(3) { background:#ffd737; border-top:1px solid #ffd737; }
.service-review-page .service-comparison[data-current="B02"] tbody tr:last-child > :nth-child(2),
.service-review-page .service-comparison[data-current="B01"] tbody tr:last-child > :nth-child(3) { border-bottom:1px solid #ffd737; box-shadow:0 2px 4px -2px rgba(255,215,55,.35); }
.service-review-page .service-comparison:focus-visible { outline:2px solid #dba900; outline-offset:2px; }

/* Main-page reassurance content, sized to the service-page typography. */
.service-info-flow .service-safe-section .service-heading { margin-bottom:12px; }
.service-info-flow .service-safe-section .service-mark.mark-emoji { display:inline-flex; align-items:center; justify-content:center; background:none; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:22px; line-height:1; }
.service-info-flow .service-safe-list { display:flex; flex-direction:column; gap:10px; margin:0; padding:0; list-style:none; }
.service-info-flow .service-safe-list > li { margin:0; padding:0; list-style:none; }
.service-info-flow .service-safe-item { display:flex; align-items:center; gap:10px; box-sizing:border-box; width:100%; padding:12px; border:1px solid #edf0f3; border-radius:8px; background:#fff; color:#111; text-decoration:none; box-shadow:0 2px 4px rgba(0,0,0,.04); }
.service-info-flow .service-safe-item > img { display:block; flex:0 0 40px; width:40px; height:40px; object-fit:contain; }
.service-info-flow .service-safe-copy { display:block; min-width:0; }
.service-info-flow .service-safe-title { display:block; margin:0; color:#111; font-size:14px; font-weight:700; line-height:1.5; word-break:keep-all; overflow-wrap:break-word; }
.service-info-flow .service-safe-no { color:#ff3b30; white-space:nowrap; }
.service-info-flow .service-safe-desc { display:block; margin-top:2px; color:#40444a; font-size:12px; font-weight:400; line-height:1.5; word-break:keep-all; overflow-wrap:break-word; }
.service-info-flow .service-safe-item:focus-visible { outline:2px solid #dba900; outline-offset:2px; }
