/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.progress{position:relative;}.progress__track{min-width:100px;max-width:100%;height:16px;margin-top:5px;border:1px solid;background-color:#fff;}.progress__bar{width:3%;min-width:3%;max-width:100%;height:16px;background-color:#000;}.progress__description,.progress__percentage{overflow:hidden;margin-top:0.2em;color:#555;font-size:0.875em;}.progress__description{float:left;}[dir="rtl"] .progress__description{float:right;}.progress__percentage{float:right;}[dir="rtl"] .progress__percentage{float:left;}.progress--small .progress__track{height:7px;}.progress--small .progress__bar{height:7px;background-size:20px 20px;}
.ajax-progress{display:inline-block;padding:1px 5px 2px 5px;}[dir="rtl"] .ajax-progress{float:right;}.ajax-progress-throbber .throbber{display:inline;padding:1px 6px 2px;background:transparent url(/core/misc/throbber-active.svg) no-repeat 0 center;}.ajax-progress-throbber .message{display:inline;padding:1px 5px 2px;}tr .ajax-progress-throbber .throbber{margin:0 2px;}.ajax-progress-bar{width:16em;}.ajax-progress-fullscreen{position:fixed;z-index:1261;top:48.5%;left:49%;width:24px;height:24px;padding:4px;opacity:0.9;border-radius:7px;background-color:#232323;background-image:url(/core/misc/loading-small.svg);background-repeat:no-repeat;background-position:center center;}[dir="rtl"] .ajax-progress-fullscreen{right:49%;left:auto;}
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.container-inline div,.container-inline label{display:inline-block;}.container-inline .details-wrapper{display:block;}.container-inline .hidden{display:none;}
.clearfix::after{display:table;clear:both;content:"";}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus-within{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}@media (scripting:enabled){.js-hide.js-hide{display:none;}.js-show{display:block;}}
.social-sharing-buttons{display:flex;align-items:center;justify-content:center;margin:2em 0;}.social-sharing-buttons a,.social-sharing-buttons-button{display:flex;align-items:center;justify-content:center;margin:0 4px;text-decoration:none;}.social-sharing-buttons-wrapper{position:relative;}.btn-copy{padding:0;cursor:pointer;}.social-sharing-buttons-popup{position:absolute;top:0;left:50%;display:none;overflow:hidden;min-width:6em;height:0;padding:5px;transition:all 0.5s ease;transform:translate(-50%,calc(-100% - 10px));text-align:center;color:white;border-radius:3px;background-color:black;font-size:small;}.social-sharing-buttons-popup.visible{display:block;overflow:unset;height:auto;}.social-sharing-buttons-popup::before{position:absolute;bottom:0;left:50%;display:block;width:0;height:0;content:"";transform:translate(-50%,100%);border-top:10px solid black;border-right:10px solid transparent;border-left:10px solid transparent;}.social-sharing-buttons-visually-hidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;padding:0;white-space:nowrap;border:0;}
:root{--me-primary:#5a0037;--me-primary-light:#7a1450;--me-primary-dark:#3d0025;--me-accent:#d93d6e;--me-success:#007f5f;--me-success-light:#e6f4f0;--me-warning:#c67c00;--me-warning-light:#fff3cd;--me-danger:#c0392b;--me-danger-light:#fdecea;--me-neutral-50:#f8f9fa;--me-neutral-100:#f1f3f5;--me-neutral-200:#e9ecef;--me-neutral-400:#adb5bd;--me-neutral-600:#6c757d;--me-neutral-800:#343a40;--me-neutral-900:#212529;--me-white:#ffffff;--me-radius:8px;--me-radius-lg:16px;--me-shadow:0 2px 8px rgba(0,0,0,0.08);--me-shadow-md:0 4px 16px rgba(0,0,0,0.12);--me-transition:0.2s ease;--me-font:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;}.mortgage-eligibility-wrapper,.mortgage-intro,.mortgage-disclaimer{font-family:var(--me-font);color:var(--me-neutral-800);max-width:780px;margin:0 auto;}.mortgage-eligibility-wrapper{background:var(--me-white);border-radius:var(--me-radius-lg);box-shadow:var(--me-shadow-md);padding:2rem;}.mortgage-intro{margin-bottom:1.5rem;padding:1.5rem;background:var(--me-primary-dark);color:var(--me-white);border-radius:var(--me-radius-lg);}.mortgage-intro__text{font-size:1.1rem;margin:0 0 1rem;}.mortgage-intro__features{padding-left:1.25rem;margin:0;}.mortgage-intro__features li{margin-bottom:0.4rem;opacity:0.9;}.mortgage-disclaimer{margin-top:1rem;padding:1rem 1.25rem;background:var(--me-warning-light);border-left:4px solid var(--me-warning);border-radius:var(--me-radius);font-size:0.85rem;color:var(--me-neutral-800);}.mortgage-progress{margin-bottom:2rem;}.progress-bar-container{height:6px;background:var(--me-neutral-200);border-radius:999px;overflow:hidden;margin-bottom:1rem;}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--me-primary),var(--me-accent));border-radius:999px;transition:width 0.4s ease;}.progress-steps{display:flex;flex-wrap:wrap;gap:0.25rem;list-style:none;margin:0;padding:0;justify-content:space-between;}.progress-step{display:flex;flex-direction:column;align-items:center;gap:0.25rem;flex:1;min-width:48px;text-align:center;}.step-dot{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:0.8rem;font-weight:600;border:2px solid var(--me-neutral-400);background:var(--me-white);color:var(--me-neutral-600);transition:all var(--me-transition);}.progress-step--active .step-dot{background:var(--me-primary);border-color:var(--me-primary);color:var(--me-white);box-shadow:0 0 0 3px rgba(90,0,55,0.2);}.progress-step--completed .step-dot{background:var(--me-success);border-color:var(--me-success);color:var(--me-white);}.step-label{font-size:0.65rem;color:var(--me-neutral-600);line-height:1.2;}.progress-step--active .step-label{color:var(--me-primary);font-weight:600;}.progress-text{text-align:right;font-size:0.8rem;color:var(--me-neutral-600);margin:0.5rem 0 0;}.step-header{margin-bottom:1.5rem;}.step-title{font-size:1.5rem;color:var(--me-primary-dark);margin:0;font-weight:700;}.step-fieldset{border:none;padding:0;margin:0 0 1.5rem;}.step-fieldset legend,.step-fieldset > legend{font-size:1.1rem;font-weight:600;color:var(--me-neutral-900);margin-bottom:1rem;padding:0;}.step-description{color:var(--me-neutral-600);margin-bottom:1.25rem;line-height:1.6;}.form-item{margin-bottom:1.25rem;}.form-item label{display:block;font-weight:600;margin-bottom:0.4rem;font-size:0.95rem;color:var(--me-neutral-800);}.form-item .description{font-size:0.8rem;color:var(--me-neutral-600);margin-top:0.35rem;}.form-text,.form-select,.form-tel,.form-email,.form-date,.form-number,.form-textarea{width:100%;padding:0.65rem 0.9rem;border:2px solid var(--me-neutral-200);border-radius:var(--me-radius);font-size:1rem;font-family:var(--me-font);color:var(--me-neutral-900);background:var(--me-white);transition:border-color var(--me-transition),box-shadow var(--me-transition);box-sizing:border-box;}.form-text:focus,.form-select:focus,.form-tel:focus,.form-email:focus,.form-date:focus,.form-number:focus,.form-textarea:focus{border-color:var(--me-primary);box-shadow:0 0 0 3px rgba(90,0,55,0.15);outline:none;}.form-item.error .form-text,.form-item.error .form-select,.form-item.error .form-tel,.form-item.error .form-email{border-color:var(--me-danger);}.radio-card-group .form-radios{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;}.radio-card-group .form-item-mortgage-type,.radio-card-group .form-item-mortgage-reason,.radio-card-group .form-item-government-scheme,.radio-card-group .form-item-num-applicants{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}.form-radios .form-item{margin:0;}.form-radios .form-item label{display:flex;align-items:center;gap:0.5rem;padding:1rem 1.25rem;border:2px solid var(--me-neutral-200);border-radius:var(--me-radius);cursor:pointer;transition:all var(--me-transition);font-weight:500;}.form-radios .form-item label:hover{border-color:var(--me-primary-light);background:rgba(90,0,55,0.03);}.form-radio:checked + label,input[type="radio"]:checked + label{border-color:var(--me-primary);background:rgba(90,0,55,0.06);color:var(--me-primary);}.form-radio{accent-color:var(--me-primary);}.eligibility-criteria-list{list-style:none;margin:0.75rem 0 0;padding:0;}.eligibility-criteria-list li{display:flex;align-items:flex-start;gap:0.6rem;padding:0.55rem 0;border-bottom:1px solid rgba(0,0,0,0.06);font-size:0.92rem;line-height:1.45;color:var(--me-neutral-800);}.eligibility-criteria-list li:last-child{border-bottom:none;}.criteria-icon{flex-shrink:0;color:var(--me-success);font-weight:700;font-size:1rem;margin-top:1px;}.step-info-box--checklist{border-left-color:var(--me-success) !important;}.eligibility-confirm-checkbox{accent-color:var(--me-success);width:20px;height:20px;flex-shrink:0;margin-top:2px;}.form-item--eligibility-confirm,.form-item-eligibility-confirm{display:flex;align-items:flex-start;gap:0.75rem;padding:1rem 1.25rem;background:var(--me-success-light,#e6f4ea);border:2px solid var(--me-success);border-radius:var(--me-radius);margin-top:1.5rem;cursor:pointer;}.form-item--eligibility-confirm label,.form-item-eligibility-confirm label{font-weight:600;cursor:pointer;line-height:1.45;color:var(--me-neutral-900);}.result-advisories{margin-bottom:1.5rem;}.advisory-item{display:flex;align-items:flex-start;gap:0.6rem;padding:0.75rem 1rem;background:#fff8e1;border:1px solid #ffe082;border-left:4px solid var(--me-warning);border-radius:var(--me-radius);font-size:0.9rem;color:#5d4037;margin-bottom:0.5rem;}.mortgage-block-heading{font-size:1.75rem;font-weight:700;color:var(--me-primary-dark,#3a0028);margin:0 0 1.25rem;line-height:1.2;}.scheme-list{background:var(--me-neutral-50);border-radius:var(--me-radius);padding:0.75rem 0.75rem 0.75rem 2rem;margin-bottom:1rem;}.address-heading,.section-heading{font-size:1rem;font-weight:700;color:var(--me-primary-dark);border-bottom:2px solid var(--me-neutral-200);padding-bottom:0.5rem;margin:1.5rem 0 1rem;}.postcode-field{text-transform:uppercase;max-width:200px;}.currency-field{max-width:320px;}.gdpr-notice{background:var(--me-neutral-50);border:1px solid var(--me-neutral-200);border-radius:var(--me-radius);padding:1rem;margin-bottom:1rem;font-size:0.875rem;color:var(--me-neutral-600);line-height:1.6;}#mortgage-form-messages{min-height:0;}.messages,.messages--error{border-radius:var(--me-radius);padding:0.75rem 1rem;margin-bottom:1rem;}.mortgage-form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--me-neutral-200);}.btn-next,.btn-back,.btn-restart,.btn-mortgage-modal{display:inline-flex;align-items:center;justify-content:center;padding:0.75rem 2rem;font-size:1rem;font-weight:600;font-family:var(--me-font);border-radius:var(--me-radius);cursor:pointer;transition:all var(--me-transition);border:2px solid transparent;}.btn-next,input.btn-next{background:var(--me-primary);color:var(--me-white);border-color:var(--me-primary);margin-left:auto;}.btn-next:hover,input.btn-next:hover{background:var(--me-primary-dark);border-color:var(--me-primary-dark);box-shadow:var(--me-shadow-md);transform:translateY(-1px);}.btn-back,input.btn-back{background:var(--me-white);color:var(--me-primary);border-color:var(--me-primary);}.btn-back:hover,input.btn-back:hover{background:rgba(90,0,55,0.05);}.btn-restart,input.btn-restart{background:var(--me-neutral-100);color:var(--me-neutral-800);border-color:var(--me-neutral-400);margin:1.5rem auto 0;display:block;}.btn-restart:hover,input.btn-restart:hover{background:var(--me-neutral-200);}.btn-mortgage-modal{background:var(--me-primary);color:var(--me-white);font-size:1.1rem;padding:1rem 2.5rem;border-radius:var(--me-radius);border:none;}#ltv-indicator{border-radius:var(--me-radius);padding:0.75rem 1rem;font-size:0.875rem;margin-top:0.75rem;display:none;transition:all var(--me-transition);}#ltv-indicator.ltv-indicator--visible{display:block;}#ltv-indicator.ltv--good{border-left:4px solid var(--me-success);background:var(--me-success-light);color:#004d3a;}#ltv-indicator.ltv--warn{border-left:4px solid var(--me-warning);background:var(--me-warning-light);color:#664000;}#ltv-indicator.ltv--danger{border-left:4px solid var(--me-danger);background:var(--me-danger-light);color:#6b1219;}.form-type-radio.radio-selected label{border-color:var(--me-primary) !important;background:rgba(90,0,55,0.07) !important;color:var(--me-primary);font-weight:600;}.eligibility-results{padding:0;}.result-banner{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-radius:var(--me-radius-lg);margin-bottom:1.5rem;}.result-banner--eligible{background:var(--me-success-light);border:2px solid var(--me-success);}.result-banner--not-eligible{background:var(--me-danger-light);border:2px solid var(--me-danger);}.result-icon{font-size:2.5rem;line-height:1;}.result-banner--eligible .result-icon{color:var(--me-success);}.result-banner--not-eligible .result-icon{color:var(--me-danger);}.result-title{font-size:1.3rem;font-weight:700;margin:0;}.result-banner--eligible .result-title{color:var(--me-success);}.result-banner--not-eligible .result-title{color:var(--me-danger);}.result-figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;}.result-figure{padding:1rem;background:var(--me-neutral-50);border-radius:var(--me-radius);border:1px solid var(--me-neutral-200);}.figure-label{display:block;font-size:0.78rem;color:var(--me-neutral-600);font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:0.35rem;}.figure-value{display:block;font-size:1.3rem;font-weight:700;color:var(--me-neutral-900);}.result-figure.risk .figure-value{font-size:1rem;}.result-figure.risk--low .figure-value{color:var(--me-success);}.result-figure.risk--medium .figure-value{color:var(--me-warning);}.result-figure.risk--high .figure-value{color:var(--me-danger);}.result-figure.risk--very-high .figure-value{color:var(--me-danger);font-weight:800;}.result-issues{background:var(--me-danger-light);border:1px solid #f5c2c0;border-radius:var(--me-radius);padding:1rem 1.25rem;margin-bottom:1.5rem;}.result-issues h3{font-size:1rem;margin:0 0 0.75rem;color:var(--me-danger);}.eligibility-issues{margin:0;padding-left:1.5rem;}.eligibility-issues li{margin-bottom:0.4rem;font-size:0.9rem;}.result-disclaimer{font-size:0.78rem;color:var(--me-neutral-600);margin-top:0.5rem;font-style:italic;}.next-steps{background:var(--me-neutral-50);border-radius:var(--me-radius);padding:1rem 1.25rem;margin-bottom:1.5rem;}.next-steps h3{font-size:1rem;margin:0 0 0.5rem;color:var(--me-primary-dark);}.step-info-box{background:var(--me-neutral-50);border:1px solid var(--me-neutral-200);border-left:4px solid var(--me-primary);border-radius:var(--me-radius);padding:1rem 1.25rem;margin-bottom:1.5rem;font-size:0.9rem;}.step-info-box--warning{border-left-color:var(--me-warning);background:var(--me-warning-light);}.step-info-box ul{margin:0.5rem 0 0;padding-left:1.5rem;}.result-breakdown{background:var(--me-neutral-50);border-radius:var(--me-radius);padding:1rem 1.25rem;margin-bottom:1.5rem;}.result-breakdown h3{font-size:1rem;color:var(--me-primary-dark);margin:0 0 0.75rem;}.result-table{width:100%;border-collapse:collapse;font-size:0.9rem;}.result-table th,.result-table td{padding:0.5rem 0.75rem;border-bottom:1px solid var(--me-neutral-200);text-align:left;}.result-table th{color:var(--me-neutral-600);font-weight:500;width:60%;}.result-table td{font-weight:700;color:var(--me-neutral-900);}.result-table tr:last-child th,.result-table tr:last-child td{border-bottom:none;}.result-figure.fig--highlight{background:var(--me-primary);color:var(--me-white);border-color:var(--me-primary);}.result-figure.fig--highlight .figure-label,.result-figure.fig--highlight .figure-value{color:var(--me-white);}.result-figure.fig--highlight .figure-value{font-size:1.5rem;}.step-fieldset--applicant2{margin-top:1.5rem;border-top:2px dashed var(--me-neutral-200);padding-top:1.5rem;}@media (max-width:600px){.mortgage-eligibility-wrapper{padding:1rem;border-radius:var(--me-radius);}.progress-steps{display:none;}.result-figures{grid-template-columns:1fr 1fr;}.form-radios .form-item label{padding:0.75rem;font-size:0.9rem;}.mortgage-form-actions{flex-direction:column;}.btn-next,.btn-back{width:100%;text-align:center;}input.btn-next{margin-left:0;}.step-title{font-size:1.2rem;}}*:focus-visible{outline:3px solid var(--me-primary);outline-offset:3px;border-radius:2px;}@keyframes fadeSlideIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}.mortgage-eligibility-wrapper .step-fieldset,.mortgage-eligibility-wrapper .step-header{animation:fadeSlideIn 0.3s ease;}.applicant-group{background:var(--me-neutral-50);border:1px solid var(--me-neutral-200);border-radius:var(--me-radius);padding:1.25rem;margin-bottom:1.5rem;}.applicant-group--2{border-top:3px solid var(--me-primary-light);}.applicant-group__label{font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:var(--me-primary);margin-bottom:1rem;padding-bottom:0.5rem;border-bottom:1px solid var(--me-neutral-200);}.eligibility-criteria-grid{display:flex;flex-direction:column;gap:0.75rem;margin-top:1rem;}.criteria-row{display:flex;align-items:flex-start;gap:0.75rem;padding:0.75rem;background:var(--me-white);border-radius:var(--me-radius);border:1px solid var(--me-neutral-200);}.criteria-check{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--me-success);color:white;border-radius:50%;font-size:0.8rem;font-weight:700;margin-top:1px;}.criteria-content{flex:1;}.criteria-statement{display:block;font-size:0.9rem;color:var(--me-neutral-900);margin-bottom:0.2rem;}.criteria-explanation{display:block;font-size:0.8rem;color:var(--me-neutral-600);line-height:1.4;}.checklist-heading{font-weight:600;margin:0 0 0.5rem;color:var(--me-neutral-800);}.form-item--eligibility-confirm,.form-item-eligibility-confirm{display:flex;align-items:flex-start;gap:0.75rem;padding:1.1rem 1.25rem;background:#e8f5e9;border:2px solid var(--me-success);border-radius:var(--me-radius);margin-top:1.5rem;cursor:pointer;}.form-item--eligibility-confirm label,.form-item-eligibility-confirm label{font-weight:600;cursor:pointer;line-height:1.5;color:var(--me-neutral-900);}.eligibility-confirm-checkbox{accent-color:var(--me-success);width:20px;height:20px;flex-shrink:0;margin-top:3px;}.result-banner{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.5rem;border-radius:var(--me-radius-lg);margin-bottom:1.75rem;flex-wrap:wrap;}.result-banner--eligible{background:#e8f5e9;border:2px solid var(--me-success);}.result-banner--not-eligible{background:var(--me-danger-light);border:2px solid var(--me-danger);}.result-banner__left{display:flex;align-items:center;gap:1rem;flex:1;min-width:200px;}.result-icon{font-size:2.75rem;line-height:1;flex-shrink:0;}.result-banner--eligible .result-icon{color:var(--me-success);}.result-banner--not-eligible .result-icon{color:var(--me-danger);}.result-title{font-size:1.15rem;font-weight:700;margin:0;line-height:1.35;}.result-banner--eligible .result-title{color:#1b5e20;}.result-banner--not-eligible .result-title{color:var(--me-danger);}.result-banner__score{display:flex;flex-direction:column;align-items:center;gap:0.35rem;min-width:100px;}.health-score-ring{position:relative;width:80px;height:80px;}.score-ring-svg{width:100%;height:100%;transform:rotate(-90deg);}.score-ring-bg{fill:none;stroke:var(--me-neutral-200);stroke-width:3;}.score-ring-fill{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray 0.6s ease;}.score-ring-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.3rem;font-weight:800;color:var(--me-neutral-900);line-height:1;}.health-score-label{font-size:0.65rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--me-neutral-600);text-align:center;max-width:90px;line-height:1.3;}.result-advisories{margin-bottom:1.5rem;}.advisory-item{display:flex;align-items:flex-start;gap:0.6rem;padding:0.75rem 1rem;background:#fff8e1;border:1px solid #ffe082;border-left:4px solid var(--me-warning);border-radius:var(--me-radius);font-size:0.88rem;color:#4e342e;margin-bottom:0.5rem;line-height:1.45;}.advisory-icon{flex-shrink:0;font-size:1rem;margin-top:1px;}.metrics-section{margin-bottom:2rem;}.section-heading{font-size:1.1rem;font-weight:700;color:var(--me-primary-dark);margin:0 0 1rem;padding-bottom:0.5rem;border-bottom:2px solid var(--me-neutral-200);}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;}.metric-card{border-radius:var(--me-radius);padding:1rem;border:1px solid var(--me-neutral-200);background:var(--me-white);display:flex;gap:0.75rem;align-items:flex-start;transition:box-shadow var(--me-transition);}.metric-card:hover{box-shadow:var(--me-shadow-md);}.metric--good{border-left:4px solid var(--me-success);}.metric--warn{border-left:4px solid var(--me-warning);}.metric--danger{border-left:4px solid var(--me-danger);}.metric--highlight{background:var(--me-primary);border-color:var(--me-primary);color:var(--me-white);border-left-width:1px;}.metric-icon{font-size:1.4rem;flex-shrink:0;line-height:1;margin-top:2px;}.metric-body{flex:1;min-width:0;}.metric-label{font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--me-neutral-600);margin-bottom:0.2rem;}.metric--highlight .metric-label,.metric--highlight .metric-value,.metric--highlight .metric-sub,.metric--highlight .metric-explain{color:var(--me-white);}.metric-value{font-size:1.35rem;font-weight:800;color:var(--me-neutral-900);line-height:1.1;margin-bottom:0.25rem;}.metric-sub{font-size:0.78rem;color:var(--me-neutral-600);font-weight:500;margin-bottom:0.4rem;}.metric-explain{font-size:0.78rem;color:var(--me-neutral-600);line-height:1.4;border-top:1px solid var(--me-neutral-200);padding-top:0.4rem;margin-top:0.25rem;}.metric--highlight .metric-explain{border-top-color:rgba(255,255,255,0.3);}.guidance-section{margin-bottom:2rem;display:flex;flex-direction:column;gap:1.25rem;}.guidance-panel{border-radius:var(--me-radius);padding:1.25rem;border:1px solid var(--me-neutral-200);}.guidance-panel--strengths{background:#e8f5e9;border-color:#a5d6a7;}.guidance-panel--improvements{background:#fff8e1;border-color:#ffe082;}.guidance-panel--lenders{background:#e3f2fd;border-color:#90caf9;}.panel-heading{font-size:1rem;font-weight:700;margin:0 0 1rem;display:flex;align-items:center;gap:0.5rem;color:var(--me-neutral-900);}.panel-icon{font-size:1.1rem;}.guidance-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.6rem;}.guidance-item{padding:0.6rem 0.75rem;background:rgba(255,255,255,0.7);border-radius:calc(var(--me-radius) - 2px);font-size:0.88rem;color:var(--me-neutral-800);line-height:1.45;}.improvement-list{display:flex;flex-direction:column;gap:1rem;}.improvement-item{background:rgba(255,255,255,0.8);border-radius:calc(var(--me-radius) - 2px);padding:0.9rem 1rem;border-left:4px solid var(--me-neutral-400);}.improvement-header{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.5rem;}.improvement-severity{font-size:0.65rem;font-weight:800;letter-spacing:0.07em;padding:0.2rem 0.5rem;border-radius:4px;flex-shrink:0;}.improvement-severity--critical{background:var(--me-danger);color:white;border-left-color:var(--me-danger);}.improvement-severity--moderate{background:var(--me-warning);color:white;}.improvement-severity--advisory{background:#1565c0;color:white;}.improvement-item:has(.improvement-severity--critical){border-left-color:var(--me-danger);}.improvement-item:has(.improvement-severity--moderate){border-left-color:var(--me-warning);}.improvement-item:has(.improvement-severity--advisory){border-left-color:#1565c0;}.improvement-title{font-size:0.92rem;color:var(--me-neutral-900);}.improvement-detail{font-size:0.85rem;color:var(--me-neutral-700);margin:0 0 0.5rem;line-height:1.45;}.improvement-action{font-size:0.85rem;color:#1a237e;background:#e8eaf6;border-radius:4px;padding:0.5rem 0.75rem;line-height:1.45;}.calc-breakdown{border:1px solid var(--me-neutral-200);border-radius:var(--me-radius);margin-bottom:1.5rem;overflow:hidden;background:var(--me-white);}.calc-breakdown__summary{padding:1rem 1.25rem;font-weight:600;font-size:0.92rem;color:var(--me-primary-dark);cursor:pointer;background:var(--me-neutral-50);border-bottom:1px solid var(--me-neutral-200);list-style:none;display:flex;align-items:center;gap:0.5rem;user-select:none;}.calc-breakdown__summary::-webkit-details-marker{display:none;}.calc-breakdown[open] .calc-breakdown__summary{border-bottom-color:var(--me-neutral-200);}.calc-breakdown__body{padding:0 1.25rem 1.25rem;overflow-x:auto;}.result-table{width:100%;border-collapse:collapse;font-size:0.875rem;background:var(--me-white);color:var(--me-neutral-900);margin-top:1rem;}.result-table th,.result-table td{padding:0.6rem 0.75rem;border-bottom:1px solid var(--me-neutral-200);text-align:left;vertical-align:top;}.result-table thead th{background:var(--me-primary-dark);color:var(--me-white);font-weight:600;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.04em;}.calc-label{color:var(--me-neutral-700);font-weight:500;width:35%;}.calc-value{font-weight:700;color:var(--me-neutral-900);width:20%;white-space:nowrap;}.calc-note{color:var(--me-neutral-600);font-size:0.8rem;width:45%;}.result-table tr:last-child td,.result-table tr:last-child th{border-bottom:none;}.result-table tr:nth-child(even) td{background:var(--me-neutral-50);}.next-steps-section{margin-bottom:2rem;}.steps-list{display:flex;flex-direction:column;gap:0.75rem;}.step-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;background:var(--me-white);border:1px solid var(--me-neutral-200);border-radius:var(--me-radius);transition:box-shadow var(--me-transition);}.step-item:hover{box-shadow:var(--me-shadow);}.step-item__num{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--me-primary);color:var(--me-white);border-radius:50%;font-weight:700;font-size:0.85rem;}.step-item__title{display:block;font-size:0.92rem;color:var(--me-neutral-900);margin-bottom:0.3rem;}.step-item__desc{margin:0;font-size:0.85rem;color:var(--me-neutral-700);line-height:1.5;}.mortgage-block-heading{font-size:1.8rem;font-weight:800;color:var(--me-primary-dark);margin:0 0 0.75rem;line-height:1.2;}.block-intro{font-size:0.95rem;color:var(--me-neutral-600);margin:0 0 1.5rem;line-height:1.55;}.result-disclaimer{font-size:0.78rem;color:var(--me-neutral-600);font-style:italic;background:var(--me-neutral-50);border:1px solid var(--me-neutral-200);border-radius:var(--me-radius);padding:0.85rem 1rem;margin-top:0.5rem;line-height:1.55;}.result-disclaimer p{margin:0 0 0.4rem;}.result-disclaimer p:last-child{margin-bottom:0;}@media (max-width:640px){.metrics-grid{grid-template-columns:1fr;}.result-banner{flex-direction:column;align-items:flex-start;}.result-banner__score{flex-direction:row;align-items:center;gap:0.75rem;width:100%;}.health-score-ring{width:60px;height:60px;}.score-ring-value{font-size:1rem;}.calc-label,.calc-value,.calc-note{display:block;width:auto;}.result-table thead{display:none;}.result-table tr{display:block;margin-bottom:0.75rem;border:1px solid var(--me-neutral-200);border-radius:var(--me-radius);}.result-table td{display:block;border-bottom:1px solid var(--me-neutral-100);}}.result-breakdown{background:var(--me-white) !important;color:var(--me-neutral-900) !important;}.progress-steps{position:relative;}.progress-steps::before{content:'';position:absolute;top:16px;left:16px;right:16px;height:2px;background:linear-gradient(90deg,var(--me-success) var(--progress-completed-pct,0%),var(--me-neutral-200) var(--progress-completed-pct,0%));z-index:0;pointer-events:none;}.progress-step .step-dot,.step-dot-btn{position:relative;z-index:1;}@media (max-width:600px){.progress-steps{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:0;padding-bottom:4px;}.progress-steps::before{display:none;}.progress-step{flex:0 0 auto;min-width:52px;}.step-label{display:none;}.step-dot-btn{min-width:44px;}}.progress-step--clickable{display:flex;flex-direction:column;align-items:center;gap:0.25rem;flex:1;min-width:48px;text-align:center;cursor:pointer;}input.step-dot-btn,button.step-dot-btn,.step-dot-btn{-webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;display:flex !important;align-items:center !important;justify-content:center !important;width:32px !important;height:32px !important;min-width:32px !important;min-height:32px !important;padding:0 !important;margin:0 !important;flex-shrink:0 !important;border-radius:50% !important;background:var(--me-success) !important;border:2px solid var(--me-success) !important;color:#fff !important;font-size:0.85rem !important;font-weight:700 !important;line-height:1 !important;font-family:inherit !important;text-align:center !important;text-indent:0 !important;letter-spacing:0 !important;cursor:pointer !important;transition:transform 0.15s ease,box-shadow 0.15s ease,background 0.15s ease,border-color 0.15s ease !important;box-shadow:none !important;text-shadow:none !important;outline:none !important;overflow:hidden !important;white-space:nowrap !important;}.progress-step--clickable:hover input.step-dot-btn,.progress-step--clickable:hover .step-dot-btn{transform:translateY(-3px) scale(1.1) !important;box-shadow:0 4px 14px rgba(0,127,95,0.45) !important;background:#00664c !important;border-color:#00664c !important;}.progress-step--clickable:active input.step-dot-btn,.progress-step--clickable:active .step-dot-btn{transform:translateY(0) scale(0.96) !important;box-shadow:none !important;}.step-dot-btn:focus-visible{outline:3px solid var(--me-primary) !important;outline-offset:3px !important;}.progress-step--clickable:hover .step-label{color:var(--me-primary);font-weight:600;}.mortgage-validation-summary{display:flex;gap:1rem;align-items:flex-start;background:#fff5f5;border:2px solid #c62828;border-left:6px solid #c62828;border-radius:6px;padding:1rem 1.25rem;margin-bottom:1.5rem;animation:summarySlideIn 0.25s ease;}@keyframes summarySlideIn{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}.validation-summary__icon{font-size:1.5rem;line-height:1;flex-shrink:0;margin-top:0.1rem;}.validation-summary__body{flex:1;}.validation-summary__title{display:block;font-size:0.95rem;font-weight:700;color:#c62828;margin-bottom:0.5rem;}.validation-summary__list{margin:0;padding-left:1.25rem;list-style:disc;}.validation-summary__list li{font-size:0.875rem;color:#5f2120;line-height:1.5;margin-bottom:0.2rem;}.form-item--error label,.form-item--error .form-item__label{color:#c62828 !important;}.form-item--error input,.form-item--error select,.form-item--error textarea{border-color:#c62828 !important;background-color:#fff8f8 !important;box-shadow:0 0 0 3px rgba(198,40,40,0.12) !important;}.form-item--error input:focus,.form-item--error select:focus,.form-item--error textarea:focus{outline-color:#c62828 !important;box-shadow:0 0 0 3px rgba(198,40,40,0.25) !important;}.form-item--error .form-item__error-message,.form-item--error .error{color:#c62828 !important;font-size:0.825rem;font-weight:600;display:flex;align-items:center;gap:0.35rem;margin-top:0.35rem;}.form-item--error .form-item__error-message::before,.form-item--error .error::before{content:'⚠';font-size:0.9em;flex-shrink:0;}.form-item--error .radio-card,.form-item--error .form-type-checkbox label{color:#c62828;}.form-item--error input[type="radio"],.form-item--error input[type="checkbox"]{box-shadow:none !important;border-color:initial !important;background-color:initial !important;}.export-method-info{margin-bottom:1rem;}.export-method-info ul{margin:0.5rem 0 0.5rem 1.5rem;}.export-method-info li{margin-bottom:0.3rem;font-size:0.9rem;}.export-permission-table{border-collapse:collapse;margin:0.75rem 0;font-size:0.875rem;width:100%;max-width:600px;}.export-permission-table th{background:#5a0037;color:#fff;padding:0.4rem 0.75rem;text-align:left;}.export-permission-table td{padding:0.35rem 0.75rem;border-bottom:1px solid #eee;}.export-permission-table tr:nth-child(even) td{background:#f9f9f9;}.export-permission-table code{background:#f0e6eb;padding:0.1em 0.4em;border-radius:3px;font-size:0.82rem;}.result-export-bar{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#f8f4f7 0%,#faf9fb 100%);border:1px solid #e8dce6;border-radius:10px;margin-top:2rem;}.result-export-bar__label{font-size:0.875rem;font-weight:600;color:#555;white-space:nowrap;}.result-export-bar__buttons{display:flex;align-items:center;gap:0.6rem;flex-wrap:wrap;}a.btn-export,button.btn-export,.btn-export{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;font-family:inherit;font-size:0.9rem;font-weight:600;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.65rem 1.3rem;min-height:42px;border-radius:6px;border:2px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;vertical-align:middle;transition:background 0.15s ease,box-shadow 0.15s ease,transform 0.1s ease,border-color 0.15s ease;}a.btn-export:hover,button.btn-export:hover,.btn-export:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,0.18);}a.btn-export:active,button.btn-export:active,.btn-export:active{transform:translateY(0);box-shadow:none;}a.btn-export:focus-visible,button.btn-export:focus-visible,.btn-export:focus-visible{outline:3px solid var(--me-primary,#5a0037);outline-offset:3px;}.btn-export__icon{font-size:1.1rem;line-height:1;flex-shrink:0;}a.btn-export--pdf,button.btn-export--pdf,.btn-export--pdf{background:var(--me-primary,#5a0037);color:#fff !important;border-color:var(--me-primary,#5a0037);}a.btn-export--pdf:hover,button.btn-export--pdf:hover,.btn-export--pdf:hover{background:#3d0025;border-color:#3d0025;color:#fff !important;}a.btn-export--excel,button.btn-export--excel,.btn-export--excel{background:#00664c;color:#fff !important;border-color:#00664c;}a.btn-export--excel:hover,button.btn-export--excel:hover,.btn-export--excel:hover{background:#004d38;border-color:#004d38;color:#fff !important;}@media (max-width:640px){.result-export-bar{flex-direction:column;align-items:flex-start;}.result-export-bar__buttons{width:100%;flex-direction:column;}a.btn-export,button.btn-export,.btn-export{width:100%;justify-content:center;}}.export-method-info{margin-bottom:1rem;font-size:0.9rem;}.export-method-info ul{margin:0.5rem 0 0.75rem 1.5rem;}.export-method-info li{margin-bottom:0.35rem;}.export-permission-table{border-collapse:collapse;margin:0.75rem 0 1rem;font-size:0.875rem;width:100%;max-width:560px;}.export-permission-table th{background:#5a0037;color:#fff;padding:0.4rem 0.75rem;text-align:left;font-weight:600;}.export-permission-table td{padding:0.35rem 0.75rem;border-bottom:1px solid #eee;vertical-align:middle;}.export-permission-table tr:nth-child(even) td{background:#faf6f9;}.export-permission-table code{background:#f0e6eb;padding:0.1em 0.4em;border-radius:3px;font-size:0.82rem;}#mortgage-share-notices{max-width:780px;margin:0 auto 1rem;font-family:var(--me-font);}.me-share-notice{display:flex;align-items:flex-start;gap:0.85rem;padding:0.9rem 1.1rem;border-radius:var(--me-radius);border-left:4px solid transparent;margin-bottom:0.6rem;font-size:0.9rem;line-height:1.45;box-shadow:var(--me-shadow);opacity:0;transform:translateY(-6px);transition:opacity 0.28s ease,transform 0.28s ease;pointer-events:none;}.me-share-notice--visible{opacity:1;transform:translateY(0);pointer-events:auto;}.me-share-notice--hiding{opacity:0;transform:translateY(-6px);pointer-events:none;}.me-share-notice--snapshot{background:#eef5fd;border-color:#2c7be5;color:#1a3d6b;}.me-share-notice--reset{background:#fff8e6;border-color:var(--me-warning,#c67c00);color:#6b4400;}.me-share-notice__icon{font-size:1.2rem;flex-shrink:0;margin-top:0.05rem;line-height:1;}.me-share-notice__body{flex:1;min-width:0;}.me-share-notice__title{display:block;font-weight:700;margin-bottom:0.25rem;}.me-share-notice__text{margin:0 0 0.35rem;color:inherit;}.me-share-notice__badge{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.8rem;font-weight:600;background:#fff3cd;color:#664d00;border:1px solid #ffe082;border-radius:100px;padding:0.2rem 0.65rem;margin-top:0.35rem;animation:me-badge-pulse 1.8s ease-in-out 0.3s both;}@keyframes me-badge-pulse{0%,100%{box-shadow:0 0 0 0 rgba(198,124,0,0);}50%{box-shadow:0 0 0 5px rgba(198,124,0,0.25);}}.me-share-notice__close{background:none;border:none;cursor:pointer;font-size:1rem;line-height:1;color:inherit;opacity:0.55;padding:0.2rem 0.3rem;border-radius:4px;flex-shrink:0;transition:opacity 0.15s ease;align-self:flex-start;}.me-share-notice__close:hover{opacity:0.9;}.me-share-notice__close:focus-visible{outline:2px solid currentColor;outline-offset:2px;}a.btn-export--share,button.btn-export--share,.btn-export--share{background:#0d6e8a;color:#fff !important;border-color:#0d6e8a;}a.btn-export--share:hover,button.btn-export--share:hover,.btn-export--share:hover{background:#095470;border-color:#095470;color:#fff !important;}#mortgage-share-dialog{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;font-family:var(--me-font);}.msd-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.55);opacity:0;transition:opacity 0.22s ease;}.msd-panel{position:relative;z-index:1;background:#fff;border-radius:var(--me-radius-lg,16px);box-shadow:0 20px 60px rgba(0,0,0,0.28);width:min(520px,calc(100vw - 2rem));max-height:calc(100vh - 4rem);overflow-y:auto;transform:scale(0.94) translateY(10px);opacity:0;transition:transform 0.22s ease,opacity 0.22s ease;}#mortgage-share-dialog.msd--open .msd-overlay{opacity:1;}#mortgage-share-dialog.msd--open .msd-panel{transform:scale(1) translateY(0);opacity:1;}#mortgage-share-dialog.msd--closing .msd-overlay{opacity:0;}#mortgage-share-dialog.msd--closing .msd-panel{transform:scale(0.94) translateY(10px);opacity:0;}.msd-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 0;}.msd-title-row{display:flex;align-items:center;gap:0.6rem;}.msd-title-icon{font-size:1.4rem;line-height:1;}.msd-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--me-neutral-900,#212529);}.msd-close{background:none;border:1px solid var(--me-neutral-200,#e9ecef);border-radius:6px;cursor:pointer;font-size:1rem;color:var(--me-neutral-600,#6c757d);width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background 0.15s ease,color 0.15s ease;}.msd-close:hover{background:var(--me-neutral-100,#f1f3f5);color:var(--me-neutral-900,#212529);}.msd-close:focus-visible{outline:3px solid var(--me-primary,#5a0037);outline-offset:2px;}.msd-body{padding:1rem 1.5rem 1.5rem;}.msd-desc{font-size:0.9rem;color:var(--me-neutral-600,#6c757d);margin:0 0 1rem;line-height:1.5;}.msd-url-row{display:flex;gap:0.5rem;margin-bottom:1rem;}.msd-url-input{flex:1;min-width:0;font-family:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,monospace;font-size:0.78rem;padding:0.55rem 0.75rem;border:1px solid var(--me-neutral-200,#e9ecef);border-radius:6px;background:var(--me-neutral-50,#f8f9fa);color:var(--me-neutral-800,#343a40);cursor:text;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.msd-url-input:focus{outline:2px solid var(--me-primary,#5a0037);outline-offset:1px;}.msd-copy-btn{display:inline-flex;align-items:center;gap:0.4rem;padding:0.55rem 1rem;background:var(--me-primary,#5a0037);color:#fff;border:none;border-radius:6px;font-family:inherit;font-size:0.875rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background 0.15s ease,transform 0.1s ease;}.msd-copy-btn:hover{background:#3d0025;transform:translateY(-1px);}.msd-copy-btn:active{transform:translateY(0);}.msd-copy-btn:focus-visible{outline:3px solid var(--me-primary,#5a0037);outline-offset:3px;}.msd-copy-btn--done{background:var(--me-success,#007f5f) !important;}.msd-copy-icon{font-size:1rem;line-height:1;}.msd-snapshot-note{display:flex;gap:0.7rem;background:#eef5fd;border:1px solid #b8d4f5;border-radius:8px;padding:0.8rem 1rem;font-size:0.85rem;color:#1a3d6b;line-height:1.5;}.msd-note-icon{font-size:1rem;flex-shrink:0;margin-top:0.1rem;}.msd-snapshot-note p{margin:0;}@media (max-width:540px){.msd-url-row{flex-direction:column;}.msd-copy-btn{width:100%;justify-content:center;}.msd-panel{border-radius:var(--me-radius,8px);}}
.layout--onecol .layout__region{width:100%;}
