.thermomatch-app{font-family:inherit;max-width:1180px;margin:0 auto;color:#1c1c1c;position:relative}.tm-header{margin-bottom:28px}.tm-header h2{font-size:clamp(32px,5vw,54px);line-height:1.05;margin:0}.tm-header p{margin:5px 0 0}.tm-welcome{display:grid;grid-template-columns:.9fr 1.25fr;gap:52px;align-items:center;min-height:480px}.tm-welcome h1{font-size:clamp(40px,5vw,66px);line-height:1.03;margin:0 0 20px}.tm-welcome-copy>p{font-size:16px;line-height:1.65;max-width:620px;margin:0}.tm-paths{display:grid;grid-template-columns:1fr 1fr;gap:22px}.tm-path{min-height:300px;border:1px solid #222;border-radius:24px;background-size:cover;background-position:center;position:relative;overflow:hidden;padding:0;cursor:pointer}.tm-path:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--tm-overlay,.48));transition:background .2s}.tm-path span{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:100%;padding:30px;color:var(--tm-path-text,#fff);font-size:23px;font-weight:700;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.45)}.tm-path:hover:before{background:rgba(0,0,0,calc(var(--tm-overlay,.48) + .04))}.tm-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:22px 0}.tm-card{background:#fff;border:1px solid #ddd;border-radius:14px;padding:12px;min-height:185px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;box-shadow:0 3px 14px rgba(0,0,0,.06);overflow:hidden;transition:border-color .18s,transform .18s,box-shadow .18s}.tm-card:hover,.tm-card:focus{border-color:#999;transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.11);outline:none}.tm-card img{display:block;width:100%;height:125px;object-fit:contain;background:#fff}.tm-brand-card{min-height:155px;justify-content:center}.tm-brand-card img{height:90px;object-position:center;margin:auto 0}.tm-brand-card .tm-card-label{margin-top:auto}.tm-card-label{display:block;width:100%;min-height:24px;color:#222;font-weight:700;text-align:center;line-height:1.25;opacity:1;visibility:visible}.tm-placeholder{display:flex;align-items:center;justify-content:center;background:#ededed;width:100%;height:125px;color:#777;text-align:center;font-weight:600}.tm-button{display:inline-flex;align-items:center;justify-content:center;border:1.5px solid #111;border-radius:9px;background:#111;color:#fff;text-decoration:none;padding:11px 15px;font-weight:650;cursor:pointer;text-align:center}.tm-button:hover,.tm-button:focus{background:#333;border-color:#333;color:#fff;outline:none}.tm-link-button{border:0;padding:2px 0;color:#111;background:transparent;font-size:11px;line-height:1.2;justify-content:flex-start}.tm-link-button:hover,.tm-link-button:focus{background:transparent;color:#111;text-decoration:underline}.tm-crumbs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.tm-crumb{border:1px solid #bbb;border-radius:8px;padding:7px 10px;display:flex;flex-direction:column;align-items:flex-start;min-width:125px;max-width:230px}.tm-crumb span{font-size:10px}.tm-crumb strong{font-size:14px;line-height:1.25;margin:2px 0}.tm-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.tm-action-grid{display:grid;grid-template-columns:repeat(4,1fr)}.tm-match-main{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);gap:36px;align-items:start;margin:24px 0 30px}.tm-media-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tm-media-item{min-width:0}.tm-media-item p{margin:7px 0 0;color:#555;font-size:12px;text-align:center}.tm-media-box{display:block;width:100%;background:transparent;border:0;padding:0;cursor:zoom-in}.tm-media-box:hover,.tm-media-box:focus{background:transparent;border:0;outline:none}.tm-media-box img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;border:0}.tm-media-placeholder{min-height:240px;height:100%}.tm-match-heading{font-size:clamp(24px,3vw,36px);line-height:1.2}.tm-level-wrap{display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap}.tm-level{color:var(--tm-match,#e56f00);font-weight:800}.tm-stars{display:inline-flex;gap:2px;font-size:.8em;letter-spacing:0}.tm-stars span{color:#d3d3d3}.tm-stars .is-filled{color:var(--tm-match,#e56f00)}.tm-understanding{margin:0}.tm-understanding>h3{margin-top:0;margin-bottom:12px}.tm-table-wrap{overflow:auto}.tm-table{width:100%;border-collapse:collapse;min-width:780px}.tm-table th{background:#171717;color:#fff}.tm-table th,.tm-table td{border:1px solid #bbb;padding:12px;vertical-align:middle}.tm-table th small{font-weight:400;color:#fff}.tm-table-image{display:block;border:0;background:transparent;padding:0;cursor:zoom-in}.tm-table-image:hover,.tm-table-image:focus{border:0;background:transparent;outline:none;box-shadow:none}.tm-table-image img{display:block;width:110px;height:80px;object-fit:contain;background:#fff;border:0}.tm-table-image .tm-placeholder{width:110px;height:80px}.tm-table-image.tm-no-image{cursor:default}.tm-text-link{background:transparent;border:0;color:#111;text-decoration:underline;cursor:pointer;padding:0;box-shadow:none}.tm-text-link:hover,.tm-text-link:focus{background:transparent;border:0;color:#111;box-shadow:none;outline:none;text-decoration:underline}.tm-promo,.tm-solutions{margin:48px 0;padding-top:6px}.tm-promo>a,.tm-solutions>a{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:center;text-decoration:none;color:inherit;border-bottom:1px solid #ddd;padding-bottom:20px}.tm-promo img,.tm-solutions img{width:180px;height:150px;object-fit:cover}.tm-modal{position:fixed;z-index:999999;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;padding:30px}.tm-modal-body{max-width:1100px;max-height:90vh;overflow:auto}.tm-modal-body img{display:block;max-width:100%;max-height:85vh;margin:auto;cursor:zoom-in;transition:transform .15s ease}.tm-modal-body.tm-zoomed img{max-width:none;max-height:none;cursor:zoom-out}.tm-modal-close{position:absolute;right:22px;top:10px;color:#fff;background:none;border:0;font-size:48px;cursor:pointer}.tm-loading{padding:40px;text-align:center}.tm-back-row{display:flex;justify-content:flex-start;gap:10px;margin:0 0 14px}.tm-back-button,.tm-home-button{padding:8px 14px}.tm-back-button:before{content:"←";margin-right:7px;font-size:18px;line-height:1}.tm-home-button:before{content:"⌂";margin-right:7px;font-size:16px;line-height:1}.tm-loading{min-height:160px;display:flex;align-items:center;justify-content:center}.tm-busy-indicator{position:sticky;top:12px;z-index:50;width:max-content;margin:0 0 10px auto;padding:7px 11px;border-radius:999px;background:#fff;border:1px solid #ddd;box-shadow:0 2px 10px rgba(0,0,0,.08);font-size:12px}.thermomatch-app.tm-is-busy{cursor:progress}
@media(max-width:900px){.tm-welcome{grid-template-columns:1fr}.tm-grid{grid-template-columns:repeat(3,1fr)}.tm-action-grid{grid-template-columns:1fr 1fr}.tm-match-main{grid-template-columns:1fr}}
@media(max-width:600px){.tm-paths{grid-template-columns:1fr}.tm-path{min-height:220px}.tm-grid{grid-template-columns:repeat(2,1fr)}.tm-action-grid{grid-template-columns:1fr}.tm-promo>a,.tm-solutions>a{grid-template-columns:1fr}.tm-promo img,.tm-solutions img{width:100%;height:auto}.tm-card{min-height:155px}.tm-card img{height:95px}.tm-welcome{min-height:0}.tm-welcome h1{font-size:42px}.tm-media-gallery{grid-template-columns:1fr}}
@media print{body *{visibility:hidden}.thermomatch-app,.thermomatch-app *{visibility:visible}.thermomatch-app{position:absolute;left:0;top:0;width:100%}.tm-button,.tm-modal{display:none!important}}

/* v1.7 theme-proof colour overrides. WordPress themes often apply global button/link hover colours. */
.thermomatch-app .tm-button,
.thermomatch-app a.tm-button,
.thermomatch-app button.tm-button,
.thermomatch-app .tm-button:link,
.thermomatch-app .tm-button:visited,
.thermomatch-app .tm-button:hover,
.thermomatch-app .tm-button:focus,
.thermomatch-app .tm-button:active,
.thermomatch-app a.tm-button:hover,
.thermomatch-app a.tm-button:focus,
.thermomatch-app a.tm-button:active,
.thermomatch-app button.tm-button:hover,
.thermomatch-app button.tm-button:focus,
.thermomatch-app button.tm-button:active {
    background: #111 !important;
    background-color: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: none !important;
    outline-color: #111 !important;
}

/* Change Selection is intentionally a compact text control, rather than a black action button. */
.thermomatch-app .tm-link-button,
.thermomatch-app .tm-link-button:visited,
.thermomatch-app .tm-link-button:hover,
.thermomatch-app .tm-link-button:focus,
.thermomatch-app .tm-link-button:active {
    background: transparent !important;
    background-color: transparent !important;
    border-color: transparent !important;
    color: #111 !important;
    box-shadow: none !important;
}

/* Stop site-wide button hover rules turning brand and colour selector cards orange. */
.thermomatch-app button.tm-card,
.thermomatch-app button.tm-card:visited,
.thermomatch-app button.tm-card:hover,
.thermomatch-app button.tm-card:focus,
.thermomatch-app button.tm-card:active {
    background: #fff !important;
    background-color: #fff !important;
    color: #222 !important;
    border-color: #ddd !important;
    box-shadow: 0 3px 14px rgba(0,0,0,.06) !important;
}
.thermomatch-app button.tm-card:hover,
.thermomatch-app button.tm-card:focus {
    border-color: #999 !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.11) !important;
}
.thermomatch-app button.tm-card .tm-card-label,
.thermomatch-app button.tm-card:hover .tm-card-label,
.thermomatch-app button.tm-card:focus .tm-card-label,
.thermomatch-app button.tm-card:active .tm-card-label {
    color: #222 !important;
}

/* Image/detail controls must stay neutral on hover. */
.thermomatch-app .tm-media-box,
.thermomatch-app .tm-media-box:hover,
.thermomatch-app .tm-media-box:focus,
.thermomatch-app .tm-media-box:active,
.thermomatch-app .tm-table-image,
.thermomatch-app .tm-table-image:hover,
.thermomatch-app .tm-table-image:focus,
.thermomatch-app .tm-table-image:active {
    background: transparent !important;
    background-color: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
}
.thermomatch-app .tm-text-link,
.thermomatch-app .tm-text-link:visited,
.thermomatch-app .tm-text-link:hover,
.thermomatch-app .tm-text-link:focus,
.thermomatch-app .tm-text-link:active {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    color: #111 !important;
    box-shadow: none !important;
    outline: none !important;
    text-decoration: underline !important;
}

/* v1.8: Change Selection stays a compact plain-text control, never a filled action button. */
.thermomatch-app button.tm-button.tm-link-button,
.thermomatch-app button.tm-button.tm-link-button:link,
.thermomatch-app button.tm-button.tm-link-button:visited,
.thermomatch-app button.tm-button.tm-link-button:hover,
.thermomatch-app button.tm-button.tm-link-button:focus,
.thermomatch-app button.tm-button.tm-link-button:active {
    display: inline !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    color: #111 !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    text-decoration: underline !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
}
.thermomatch-app button.tm-button.tm-link-button:hover,
.thermomatch-app button.tm-button.tm-link-button:focus,
.thermomatch-app button.tm-button.tm-link-button:active {
    background: transparent !important;
    background-color: transparent !important;
    color: #111 !important;
    text-decoration: underline !important;
}


/* v2.3 promotional, solution-grid and theme-isolation styles */
.thermomatch-app .tm-promo,
.thermomatch-app .tm-solutions{margin:48px 0;padding-top:0}
.thermomatch-app .tm-promo h3,
.thermomatch-app .tm-solutions h3{margin:0 0 18px;color:#1c1c1c}
.thermomatch-app .tm-promo-content{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:center;border-bottom:1px solid #ddd;padding-bottom:20px}
.thermomatch-app .tm-promo-content img{display:block;width:180px;height:150px;object-fit:cover;background:#f3f3f3}
.thermomatch-app .tm-promo-copy p{margin:0 0 16px;color:#1c1c1c}
.thermomatch-app .tm-promo-button,
.thermomatch-app .tm-promo-button:link,
.thermomatch-app .tm-promo-button:visited,
.thermomatch-app .tm-promo-button:hover,
.thermomatch-app .tm-promo-button:focus{background:#111!important;border-color:#111!important;color:#fff!important;text-decoration:none!important;box-shadow:none!important}
.thermomatch-app .tm-solutions-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #e0e0e0;border-left:1px solid #e0e0e0}
.thermomatch-app .tm-solution-card,
.thermomatch-app .tm-solution-card:link,
.thermomatch-app .tm-solution-card:visited{display:flex;flex-direction:column;min-height:360px;padding:28px 28px 22px;background:#fff!important;border-right:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;color:#111!important;text-decoration:none!important;box-shadow:none!important;transition:none!important}
.thermomatch-app .tm-solution-card:hover,
.thermomatch-app .tm-solution-card:focus{background:#fff!important;color:#111!important;text-decoration:none!important;box-shadow:none!important;outline:2px solid #111;outline-offset:-2px}
.thermomatch-app .tm-solution-card h4{margin:0 0 22px;font-size:clamp(21px,2vw,32px);line-height:1.15;color:#111!important}
.thermomatch-app .tm-solution-image{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:220px}
.thermomatch-app .tm-solution-image img{display:block;width:100%;height:220px;object-fit:contain;background:#fff}
.thermomatch-app .tm-solution-image .tm-placeholder{height:220px}
.thermomatch-app .tm-disclaimer{margin:42px 0 12px;padding-top:0;border-top:0;color:#666;font-size:14px;line-height:1.6}
.thermomatch-app .tm-disclaimer p{margin:0 0 8px}
@media(max-width:1000px){.thermomatch-app .tm-solutions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.thermomatch-app .tm-promo-content{grid-template-columns:1fr}.thermomatch-app .tm-promo-content img{width:100%;height:auto;max-height:320px;object-fit:contain}.thermomatch-app .tm-solutions-grid{grid-template-columns:1fr 1fr}.thermomatch-app .tm-solution-card{min-height:300px;padding:20px}.thermomatch-app .tm-solution-image,.thermomatch-app .tm-solution-image img,.thermomatch-app .tm-solution-image .tm-placeholder{height:180px;min-height:180px}}
@media(max-width:480px){.thermomatch-app .tm-solutions-grid{grid-template-columns:1fr}.thermomatch-app .tm-solution-card{min-height:0}.thermomatch-app .tm-solution-image,.thermomatch-app .tm-solution-image img,.thermomatch-app .tm-solution-image .tm-placeholder{height:220px;min-height:220px}}

/* v2.4 other-solutions visual refinement */
.thermomatch-app .tm-solutions-grid{
  border:0!important;
  gap:28px;
}
.thermomatch-app .tm-solution-card,
.thermomatch-app .tm-solution-card:link,
.thermomatch-app .tm-solution-card:visited,
.thermomatch-app .tm-solution-card:hover,
.thermomatch-app .tm-solution-card:focus{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:10px 0 16px;
  min-height:320px;
}
.thermomatch-app .tm-solution-card h4{
  font-size:clamp(17px,1.45vw,22px)!important;
  line-height:1.2;
  margin:0 0 14px;
  font-weight:700;
}


/* v2.6 recommendation banner, action icons, and option-1 layout refinement */
.thermomatch-app .tm-match-header{margin-bottom:18px}
.thermomatch-app .tm-selected-match-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:15px;font-weight:600;margin-top:8px}
.thermomatch-app .tm-better-match{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;background:#f8f8f8;border:1px solid #dfdfdf;border-radius:14px;padding:22px 24px;margin:18px 0 26px}
.thermomatch-app .tm-better-match-icon{width:52px;height:52px;border-radius:999px;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.thermomatch-app .tm-better-match-icon .dashicons{font-size:25px;width:25px;height:25px}
.thermomatch-app .tm-better-match h4{margin:0 0 6px;font-size:20px;line-height:1.25}
.thermomatch-app .tm-better-match p{margin:0 0 14px;line-height:1.6;color:#333}
.thermomatch-app .tm-better-match-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.thermomatch-app .tm-better-match-card{background:#efefef;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.thermomatch-app .tm-better-match-label{font-size:12px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.03em}
.thermomatch-app .tm-level-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.thermomatch-app .tm-level-summary-text{font-weight:700;color:#1c1c1c}
.thermomatch-app .tm-better-match-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.thermomatch-app .tm-keep-selection{padding:0!important;border:0!important;background:transparent!important;color:#111!important;text-decoration:underline!important;font-size:16px!important;line-height:1.3!important;font-weight:500!important}
.thermomatch-app .tm-keep-selection:hover,.thermomatch-app .tm-keep-selection:focus{background:transparent!important;color:#111!important}
.thermomatch-app .tm-button .dashicons{font-size:18px;width:18px;height:18px;margin-right:8px}
.thermomatch-app .tm-button span:last-child{display:inline-block}
.thermomatch-app .tm-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.thermomatch-app .tm-action-grid .tm-button{width:100%;min-height:48px}
.thermomatch-app .tm-promo{margin:40px 0 18px}
.thermomatch-app .tm-promo-content{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:24px;align-items:center;border:1px solid #ddd;border-radius:10px;padding:18px 20px;background:#fff}
.thermomatch-app .tm-promo-copy{min-width:0}
.thermomatch-app .tm-promo-title{display:block;font-size:18px;line-height:1.35;margin-bottom:8px;color:#111}
.thermomatch-app .tm-promo-copy p{margin:0;color:#333;line-height:1.6}
.thermomatch-app .tm-promo-cta{display:flex;justify-content:flex-end}
.thermomatch-app .tm-promo-button{white-space:nowrap}
.thermomatch-app .tm-solutions{margin:8px 0 22px}
.thermomatch-app .tm-solutions h3{margin-bottom:12px}
.thermomatch-app .tm-disclaimer{font-size:15px;line-height:1.7}
@media(max-width:1000px){
  .thermomatch-app .tm-better-match{grid-template-columns:1fr}
  .thermomatch-app .tm-better-match-icon{display:none}
  .thermomatch-app .tm-better-match-actions{align-items:flex-start}
  .thermomatch-app .tm-promo-content{grid-template-columns:180px minmax(0,1fr)}
  .thermomatch-app .tm-promo-cta{grid-column:1 / -1;justify-content:flex-start}
}
@media(max-width:900px){
  .thermomatch-app .tm-action-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .thermomatch-app .tm-better-match-cards{grid-template-columns:1fr}
  .thermomatch-app .tm-promo-content{grid-template-columns:1fr}
  .thermomatch-app .tm-promo-content img{width:100%;height:auto;max-height:320px;object-fit:contain}
}
@media(max-width:600px){
  .thermomatch-app .tm-selected-match-line{font-size:14px}
  .thermomatch-app .tm-action-grid{grid-template-columns:1fr}
}


/* v2.7 heading and button typography */
.thermomatch-app .tm-button,
.thermomatch-app a.tm-button,
.thermomatch-app button.tm-button,
.thermomatch-app .tm-promo-button,
.thermomatch-app .tm-better-match .tm-button{
  font-size:15px!important;
  line-height:1.25!important;
}
.thermomatch-app .tm-match-heading .tm-level-wrap{
  display:inline-flex;
  vertical-align:middle;
  margin-left:4px;
}


/* v2.8 better match banner cleanup */
.thermomatch-app .tm-better-match{grid-template-columns:minmax(0,1fr) auto;background:transparent;border:1px solid #dfdfdf}
.thermomatch-app .tm-better-match-icon{display:none!important}
.thermomatch-app .tm-better-match-card{background:#fff;border:1px solid #e5e5e5}
@media(max-width:1000px){.thermomatch-app .tm-better-match{grid-template-columns:1fr}}


/* v2.9 match heading alignment */
.thermomatch-app .tm-match-heading{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:8px;
}
.thermomatch-app .tm-match-heading .tm-level-wrap{
  display:inline-flex;
  align-items:baseline;
  gap:7px;
  margin-left:0!important;
  vertical-align:baseline!important;
}
.thermomatch-app .tm-match-heading .tm-level{
  line-height:1.2;
}
.thermomatch-app .tm-match-heading .tm-stars{
  align-items:baseline;
  line-height:1;
  transform:translateY(-1px);
}
.thermomatch-app .tm-match-heading .tm-stars span{
  line-height:1;
}


/* v3.4 layout cleanup and mobile table */
.thermomatch-app .tm-better-match{
  border:0!important;
  border-radius:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
.thermomatch-app .tm-promo-content{
  border:0!important;
  border-radius:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
.thermomatch-app .tm-back-button:before,
.thermomatch-app .tm-home-button:before{content:none!important;display:none!important}
.thermomatch-app .tm-back-row .tm-button .dashicons{
  margin-right:7px;
  font-size:17px;
  width:17px;
  height:17px;
}
.thermomatch-app .tm-solution-card,
.thermomatch-app .tm-solution-card:link,
.thermomatch-app .tm-solution-card:visited,
.thermomatch-app .tm-solution-card:hover,
.thermomatch-app .tm-solution-card:focus{
  justify-content:flex-start!important;
  min-height:0!important;
}
.thermomatch-app .tm-solution-image{
  margin-top:0!important;
  min-height:0!important;
  align-items:flex-start!important;
}
.thermomatch-app .tm-solution-image img{
  height:190px!important;
  object-position:center top!important;
}
.thermomatch-app .tm-solution-image .tm-placeholder{
  height:190px!important;
  min-height:190px!important;
}

@media(max-width:700px){
  .thermomatch-app .tm-table-wrap{overflow:visible}
  .thermomatch-app .tm-table{display:block;min-width:0;width:100%;border:0}
  .thermomatch-app .tm-table thead{display:none}
  .thermomatch-app .tm-table tbody{display:grid;gap:16px}
  .thermomatch-app .tm-table tr{
    display:block;
    border:1px solid #ddd;
    border-radius:10px;
    padding:6px 14px;
    background:#fff;
  }
  .thermomatch-app .tm-table td{
    display:grid;
    grid-template-columns:minmax(105px,38%) minmax(0,1fr);
    gap:12px;
    align-items:center;
    width:100%!important;
    border:0!important;
    border-bottom:1px solid #eee!important;
    padding:10px 0!important;
    text-align:left!important;
  }
  .thermomatch-app .tm-table td:last-child{border-bottom:0!important}
  .thermomatch-app .tm-table td:before{
    content:attr(data-label);
    font-size:12px;
    font-weight:700;
    color:#555;
    line-height:1.25;
  }
  .thermomatch-app .tm-table-image img,
  .thermomatch-app .tm-table-image .tm-placeholder{
    width:95px!important;
    height:70px!important;
  }
  .thermomatch-app .tm-table .tm-level-wrap{gap:6px}
  .thermomatch-app .tm-table .tm-stars{font-size:.78em}
  .thermomatch-app .tm-solution-image img{height:150px!important}
  .thermomatch-app .tm-solution-image .tm-placeholder{height:150px!important;min-height:150px!important}
}


/* v3.11 public/front-end fixes */
/* Theme-proof the two opening pathway buttons so site accent colours cannot add orange rings/borders. */
.thermomatch-app button.tm-path,
.thermomatch-app button.tm-path:hover,
.thermomatch-app button.tm-path:focus,
.thermomatch-app button.tm-path:focus-visible,
.thermomatch-app button.tm-path:active{
  border-color:#222!important;
  outline:0!important;
  outline-color:transparent!important;
  box-shadow:none!important;
  -webkit-box-shadow:none!important;
  text-decoration:none!important;
  filter:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
.thermomatch-app button.tm-path::after,
.thermomatch-app button.tm-path:hover::after,
.thermomatch-app button.tm-path:focus::after,
.thermomatch-app button.tm-path:active::after{
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}
.thermomatch-app .tm-action-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){.thermomatch-app .tm-action-grid-compact{grid-template-columns:1fr}}


/* v3.12 home logo and partial-match promo placement */
.thermomatch-app .tm-home-logo{display:block;max-width:280px;width:auto;max-height:88px;object-fit:contain;margin:0 0 22px}
.thermomatch-app .tm-match-header + .tm-promo,
.thermomatch-app .tm-better-match + .tm-promo{margin-top:18px;margin-bottom:22px}
@media(max-width:600px){.thermomatch-app .tm-home-logo{max-width:220px;max-height:72px;margin-bottom:16px}}
