/* Scoped to tour comparison: the original selection and modal controls are retained. */
.hbt-site #hbt-compare-dialog.hbt-compare-designed {
  width: min(1130px, calc(100% - 40px));
  max-width: none;
  max-height: calc(100dvh - 42px);
  padding: 0;
  border: 1px solid #d7d9bd;
  border-radius: 25px;
  color: #294435;
  background: #f7f8f0;
  box-shadow: 0 35px 100px #051d16a6, inset 0 1px 0 #fff;
  overscroll-behavior: contain;
}
.hbt-site #hbt-compare-dialog::backdrop { background: #08281fd1; backdrop-filter: blur(9px); }
.hbt-site #hbt-compare-dialog .hbt-dialog-head {
  position: sticky;
  top: 0;
  z-index: 5;
  align-items: center;
  margin: 0;
  padding: 25px 30px;
  color: #fff9e8;
  background: radial-gradient(ellipse at 0 0, #44846680, transparent 65%), linear-gradient(115deg, #164c3b, #0c332b);
  border-bottom: 1px solid #aec09360;
  box-shadow: 0 6px 20px #12352714;
}
.hbt-site #hbt-compare-dialog .hbt-compare-eyebrow { font-size: 9px; font-weight: 500; letter-spacing: .15em; text-transform: uppercase; color: #d8d9b1; margin: 0 0 9px; }
.hbt-site #hbt-compare-dialog .hbt-dialog-head h2 { font: 400 clamp(29px, 3.2vw, 40px)/1.15 Gloock, Georgia, serif; color: #fff8e8; margin: 0; }
.hbt-site #hbt-compare-dialog .hbt-dialog-head button { border: 1px solid #e7ead348; border-radius: 10px; padding: 11px 16px; min-height: 44px; color: #fff9e8; background: #ffffff0d; font-size: 12px; transition: background .25s, border-color .25s; }
.hbt-site #hbt-compare-dialog .hbt-dialog-head button:hover { background: #ffffff20; border-color: #e5dfac; }
.hbt-site #hbt-comparison-content { padding: 24px 20px 0; }
.hbt-site #hbt-compare-dialog .hbt-compare-table-wrap { overflow: auto; padding: 0 0 4px; border-radius: 15px; scrollbar-color: #7c997a #e6ecdf; scrollbar-width: thin; }
.hbt-site #hbt-compare-dialog .hbt-compare-table { border-collapse: separate; border-spacing: 8px 0; min-width: 620px; table-layout: fixed; width: 100%; font-size: 14px; line-height: 1.7; }
.hbt-site #hbt-compare-dialog .hbt-compare-label-column { width: 140px; }
.hbt-site #hbt-compare-dialog .hbt-compare-table th, .hbt-site #hbt-compare-dialog .hbt-compare-table td { padding: 18px 20px; vertical-align: top; border: 0; border-bottom: 1px solid var(--hbt-compare-line, #dbe4d2); text-align: left; }
.hbt-site #hbt-compare-dialog [data-hbt-tour-column="1"] { --hbt-compare-paper: #edf4e8; --hbt-compare-line: #d5e3cb; --hbt-compare-accent: #345f3c; }
.hbt-site #hbt-compare-dialog [data-hbt-tour-column="2"] { --hbt-compare-paper: #eaf2f1; --hbt-compare-line: #d1e2de; --hbt-compare-accent: #2a6063; }
.hbt-site #hbt-compare-dialog [data-hbt-tour-column="3"] { --hbt-compare-paper: #f5f0e3; --hbt-compare-line: #e6dcc3; --hbt-compare-accent: #69572e; }
.hbt-site #hbt-compare-dialog .hbt-compare-table tr > :first-child { width: 140px; color: #58714e; background: transparent; padding-left: 3px; font-size: 12px; font-weight: 600; }
.hbt-site #hbt-compare-dialog .hbt-compare-table thead tr > th:first-child { vertical-align: bottom; font: 400 24px/1.2 Gloock, Georgia, serif; padding-bottom: 22px; color: #31523b; }
.hbt-site #hbt-compare-dialog .hbt-compare-table thead [data-hbt-tour-column] { padding: 0; border: 0; }
.hbt-compare-photo { position: relative; isolation: isolate; height: 180px; overflow: hidden; border-radius: 15px 15px 0 0; background: #234b39; }
.hbt-compare-photo:after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, #0a211beb, #12281e12 80%); pointer-events: none; }
.hbt-compare-photo > img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; z-index: -2; transition: transform .8s ease; }
.hbt-compare-tour-name { position: absolute; bottom: 20px; left: 20px; right: 20px; color: #fffbea; font: 400 29px/1.12 Gloock, Georgia, serif; text-wrap: balance; }
.hbt-compare-photo-tag { position: absolute; top: 14px; left: 14px; max-width: calc(100% - 65px); padding: 6px 9px; border: 1px solid #fffbdf44; border-radius: 7px; color: #fff9e8; background: #142c2666; backdrop-filter: blur(12px); font: 500 9px/1.4 Montserrat, Arial, sans-serif; }
.hbt-compare-photo-number { position: absolute; top: 14px; right: 14px; width: 27px; height: 27px; display: grid; place-items: center; border: 1px solid #f7e8c18c; border-radius: 50%; background: #f0ddb7; color: #263e2a; font: 600 10px/1 Montserrat, Arial, sans-serif; }
.hbt-site #hbt-compare-dialog .hbt-compare-table tbody td { background: linear-gradient(120deg, #ffffff4d, #ffffff00), var(--hbt-compare-paper); box-shadow: inset 1px 0 #ffffff80, inset -1px 0 #ffffff66; color: #304d40; }
.hbt-site #hbt-compare-dialog .hbt-compare-table tbody tr:first-child td { font-weight: 600; color: var(--hbt-compare-accent); }
.hbt-site #hbt-compare-dialog .hbt-compare-price { display: block; color: var(--hbt-compare-accent); font: 400 34px/1.1 Gloock, Georgia, serif; }
.hbt-site #hbt-compare-dialog .hbt-compare-price-note { display: block; font-size: 11px; color: #647668; margin-top: 7px; }
.hbt-site #hbt-compare-dialog .hbt-compare-price-quote { font-size: 25px; }
.hbt-site #hbt-compare-dialog .hbt-compare-table td ul { padding: 0; list-style: none; margin: 0; }
.hbt-site #hbt-compare-dialog .hbt-compare-table td li { display: flex; align-items: baseline; gap: 9px; margin: 0 0 10px; }
.hbt-site #hbt-compare-dialog .hbt-compare-table td li:last-child { margin-bottom: 0; }
.hbt-site #hbt-compare-dialog .hbt-compare-table td li:before { content: ''; width: 5px; height: 5px; flex: 0 0 auto; border-radius: 50%; background: var(--hbt-compare-accent); }
.hbt-site #hbt-compare-dialog .hbt-compare-table tbody tr:last-child td { border: 0; border-radius: 0 0 14px 14px; padding-bottom: 20px; }
.hbt-site #hbt-compare-dialog .hbt-compare-table td .hbt-btn { display: flex; justify-content: space-between; gap: 10px; width: 100%; padding: 12px 15px; min-height: 46px; border: 1px solid #ffffff30; border-radius: 9px; color: #fffbe9; background: var(--hbt-compare-accent); box-shadow: 0 4px 10px #18392c15; font-size: 12px; line-height: 1.4; }
.hbt-site #hbt-compare-dialog .hbt-compare-table td .hbt-btn svg { width: 17px; flex: 0 0 auto; }
.hbt-site #hbt-compare-dialog > .hbt-small { margin: 18px 28px 25px; padding: 15px 18px; border: 1px solid #d4deca; border-left: 3px solid #7c966d; border-radius: 10px; background: #eaf0e1; font-size: 12px; line-height: 1.8; color: #4c644e; }
.hbt-compare-swipe-hint { display: none; }
.hbt-site .hbt-compare-designed-tray { gap: 16px; padding: 11px 13px 11px 17px; border: 1px solid #abc3948c; border-radius: 18px; color: #fffbe8; background: linear-gradient(120deg, #29634de8, #103d32f5); box-shadow: 0 12px 35px #092b2d45, inset 0 1px 0 #ffffff30; backdrop-filter: blur(22px); }
.hbt-site .hbt-compare-designed-tray > span:not(.hbt-compare-portraits) { display: flex; align-items: center; gap: 8px; font-size: 12px; }
.hbt-site .hbt-compare-designed-tray #hbt-compare-count { display: grid; place-items: center; width: 30px; height: 30px; flex: 0 0 auto; border: 1px solid #e0d8a16b; border-radius: 50%; color: #f4dfa3; background: #f9e4ab12; font-weight: 600; }
.hbt-compare-portraits { display: flex; padding-left: 7px; }
.hbt-compare-portraits img { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; border: 2px solid #d2dfc0; margin-left: -7px; background: #214a36; }
.hbt-site .hbt-compare-designed-tray #hbt-open-compare { min-height: 46px; padding: 12px 17px; border-radius: 10px; border: 1px solid #d6bf86; color: #254132; background: linear-gradient(120deg, #f5e5b5, #e9cc8c); box-shadow: inset 0 1px 0 #fff9; font-size: 12px; }
.hbt-site .hbt-compare-designed-tray #hbt-open-compare:disabled { opacity: .68; cursor: default; }
.hbt-site .hbt-compare-designed-tray #hbt-clear-compare { padding: 10px 5px; min-height: 44px; color: #e2ead3; font-size: 11px; }
.hbt-site #hbt-compare-dialog :is(a,button):focus-visible, .hbt-site .hbt-compare-designed-tray :is(button,input):focus-visible { outline: 3px solid #c5a259; outline-offset: 3px; }
.hbt-site #hbt-compare-dialog .hbt-compare-table-wrap:focus-visible { outline: 3px solid #6d8d62; outline-offset: 3px; }
@media(hover:hover) { .hbt-compare-photo:hover > img { transform: scale(1.05); } }
@media(max-width:700px) {
  .hbt-site #hbt-compare-dialog.hbt-compare-designed { width: calc(100% - 18px); max-height: calc(100dvh - 24px); border-radius: 19px; }
  .hbt-site #hbt-compare-dialog .hbt-dialog-head { padding: 19px 17px; gap: 12px; align-items: flex-start; }
  .hbt-site #hbt-compare-dialog .hbt-dialog-head h2 { font-size: 27px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-eyebrow { font-size: 8px; letter-spacing: .1em; line-height: 1.6; }
  .hbt-site #hbt-compare-dialog .hbt-dialog-head button { font-size: 11px; padding: 9px 11px; }
  .hbt-site #hbt-comparison-content { padding: 15px 7px 0; }
  .hbt-site #hbt-compare-dialog .hbt-compare-table { min-width: 0; font-size: 13px; line-height: 1.75; border-spacing: 5px 0; }
  .hbt-site #hbt-compare-dialog .hbt-compare-label-column { width: 0; }
  .hbt-site #hbt-compare-dialog .hbt-compare-table tr > :first-child { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
  .hbt-site #hbt-compare-dialog .hbt-compare-table[data-tour-count="3"] { min-width: 510px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-table th, .hbt-site #hbt-compare-dialog .hbt-compare-table td { padding: 14px 11px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-table thead [data-hbt-tour-column] { padding: 0; }
  .hbt-compare-photo { height: 165px; border-radius: 11px 11px 0 0; }
  .hbt-compare-tour-name { font-size: 22px; left: 12px; right: 12px; bottom: 15px; }
  .hbt-compare-photo-tag { display: none; }
  .hbt-compare-photo-number { width: 24px; height: 24px; top: 10px; right: 10px; font-size: 9px; }
  .hbt-site #hbt-compare-dialog tbody td:before { content: attr(data-compare-label); display: block; margin-bottom: 8px; color: var(--hbt-compare-accent); font-size: 9px; line-height: 1.5; letter-spacing: .07em; text-transform: uppercase; font-weight: 600; }
  .hbt-site #hbt-compare-dialog .hbt-compare-price { font-size: 28px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-price-note { font-size: 11px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-price-quote { font-size: 23px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-table td li { gap: 6px; margin-bottom: 9px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-table td .hbt-btn { padding: 11px; gap: 6px; font-size: 12px; }
  .hbt-site #hbt-compare-dialog > .hbt-small { margin: 14px 13px 18px; padding: 12px; font-size: 12px; }
  .hbt-site #hbt-compare-dialog .hbt-compare-swipe-hint:not([hidden]) { display: block; margin: 0 6px 12px; color: #526e4e; font-size: 11px; }
  .hbt-site .hbt-compare-designed-tray { width: min(390px, calc(100% - 20px)); max-width: calc(100% - 20px); gap: 10px; padding: 9px 11px; bottom: 10px; }
  .hbt-site .hbt-compare-designed-tray .hbt-compare-portraits, .hbt-compare-selected-word { display: none; }
  .hbt-site .hbt-compare-designed-tray > span:not(.hbt-compare-portraits) { gap: 6px; font-size: 11px; }
  .hbt-site .hbt-compare-designed-tray #hbt-compare-count { width: 26px; height: 26px; }
  .hbt-site .hbt-compare-designed-tray #hbt-open-compare { padding: 11px 12px; min-height: 44px; font-size: 11px; }
  .hbt-site .hbt-compare-designed-tray #hbt-clear-compare { padding: 8px 1px; }
}
@media(max-width:360px) { .hbt-compare-tour-name { font-size: 20px; } .hbt-site #hbt-compare-dialog .hbt-compare-table td { padding-inline: 9px; } }
@media(prefers-reduced-motion:reduce) { #hbt-compare-dialog *, .hbt-compare-designed-tray * { transition: none !important; animation: none !important; } }
