/* Hotel For Sale: professional international hospitality property presentation. */
:root {
  --cmpi-bg:#f7f5f0;--cmpi-surface:#fff;--cmpi-surface-soft:#faf9f6;
  --cmpi-text:#172d43;--cmpi-muted:#65717d;--cmpi-line:#dedfdc;
  --cmpi-accent:#a77b40;--cmpi-accent-dark:#805b2c;--cmpi-accent-yellow:#c8ad77;
  --cmpi-dark:#172d43;--cmpi-dark-soft:#27445f;--cmpi-blue:#315b80;
  --cmpi-radius:8px;--cmpi-shadow:0 12px 40px rgba(23,45,67,.07);
  --cmpi-unified-radius:5px;
  --hfs-font:"Manrope","Segoe UI",Arial,sans-serif;
}
body.cmpi-theme {background:#f7f5f0;color:#172d43;font-family:var(--hfs-font);font-size:15px;line-height:1.65;}
body.cmpi-theme :is(h1,h2,h3,h4,h5,h6,input,select,textarea,button,.cmpi-nav a,.cmpi-btn,.cmp-btn,.cmp-compare-btn,.cmp-map-info-link) {font-family:var(--hfs-font)!important;}
.cmpi-theme h1,.cmpi-theme h2,.cmpi-theme .cmpi-results-copy h1 {font-weight:700!important;letter-spacing:-.025em!important;line-height:1.2;}
.cmpi-theme h3 {font-weight:600!important;letter-spacing:-.01em;}
.cmpi-topbar {background:#172d43!important;color:#e9e6df!important;font-size:12px;letter-spacing:.06em;}
.cmpi-header {background:#fff!important;border-bottom:1px solid #e4e2dc;box-shadow:none!important;}
.cmpi-header .cmpi-language-switcher {flex-shrink:0;box-sizing:border-box;}
.cmpi-header .cmpi-language-switcher :is(.gtranslate_wrapper,.gt_switcher,.gt_float_switcher,.gt_selected,.gt-selected,.gt-current-lang) {width:100%!important;max-width:100%!important;box-sizing:border-box;}
.cmpi-header .cmpi-language-switcher .gt_selected a {width:100%!important;max-width:100%!important;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:22px!important;}
.cmpi-header .cmpi-language-switcher {width:90px!important;max-width:90px!important;}
.cmpi-header .cmpi-language-switcher .gt_switcher .gt_option {left:0!important;right:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;}
.cmpi-logo {width:427.5px!important;max-width:100%!important;max-height:96px!important;object-fit:contain;}
@media(min-width:721px) {
  body.cmpi-theme .cmpi-header-inner {height:116px!important;min-height:116px!important;}
}
@media(min-width:1280px) {
  body.cmpi-theme .cmpi-header-inner {gap:14px;}
}
@media(min-width:1001px) and (max-width:1279px) {
  body.cmpi-theme .cmpi-header-inner {height:auto!important;display:grid;grid-template-columns:auto auto;grid-template-areas:"brand actions" "nav nav";gap:8px 24px;padding:12px 0;}
  .cmpi-header .cmpi-branding {grid-area:brand;}
  .cmpi-header .cmpi-header-actions {grid-area:actions;justify-self:end;}
  .cmpi-header .cmpi-nav {grid-area:nav;justify-self:center;}
}
@media(min-width:721px) and (max-width:1000px) {
  body.cmpi-theme .cmpi-header-inner {height:auto!important;flex-direction:column;justify-content:center;gap:12px;padding:16px 0;}
}
.cmpi-nav a {color:#172d43!important;font-size:13px;letter-spacing:.025em;}
.cmpi-btn,.cmp-btn,.cfs-newsletter-signup button {background:#172d43!important;color:#fff!important;border:1px solid #172d43!important;border-radius:5px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:.025em!important;font-weight:600!important;}
.cmpi-btn:hover,.cmp-btn:hover {background:#27445f!important;border-color:#27445f!important;}
.cmpi-btn-secondary,.cmp-btn-secondary {background:#fff!important;color:#172d43!important;border-color:#c8cdd1!important;}
.cmpi-results-hero {min-height:490px!important;background:#172d43!important;}
.cmpi-results-overlay {background:linear-gradient(90deg,rgba(14,29,43,.78),rgba(14,29,43,.42) 55%,rgba(14,29,43,.04))!important;}
.cmpi-results-hero .cmpi-hero-slide {filter:saturate(1.03) contrast(1.01) brightness(1)!important;}
.cmpi-results-copy {max-width:760px;}
.cmpi-results-copy h1 {color:#fff!important;font-size:clamp(36px,4.6vw,65px)!important;line-height:1.1!important;max-width:750px;}
.cmpi-results-copy p {color:#ecece8!important;max-width:650px;line-height:1.7;}
.cmpi-eyebrow,.cmp-section-kicker {font-size:11px!important;text-transform:uppercase;letter-spacing:.16em!important;color:#a77b40;}
.cmpi-results-copy .cmpi-eyebrow {color:#dcc49a!important;}
.cmpi-home-hero-actions .cmpi-btn {background:#172d43!important;border-color:rgba(255,255,255,.35)!important;color:#fff!important;}
.cmpi-home-hero-actions .cmpi-btn-secondary {background:transparent!important;border-color:rgba(255,255,255,.55)!important;color:#fff!important;}
.cmpi-results-filter,.cmp-card,.cmpi-country-card,.cmpi-card {border:1px solid #dedfdc!important;border-radius:8px!important;background:#fff!important;box-shadow:0 8px 24px rgba(23,45,67,.04)!important;}
.cmpi-results-filter {padding:24px!important;}
.cmp-step-number {background:#172d43!important;}
.cmp-step-card {background:#faf9f6!important;border-color:#dedfdc!important;}
.cmpi-results-hero-filter-visible .cmpi-results-content {position:relative!important;inset:auto!important;height:auto!important;padding:72px 0!important;align-items:center;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);}
.cmpi-results-copy {height:auto!important;background:none!important;backdrop-filter:none!important;padding:0!important;align-self:center!important;}
.cmpi-results-copy h1 {text-shadow:none;}
.cmpi-results-filter {height:auto!important;align-self:center!important;}
.cmpi-results-filter-grid {height:auto!important;gap:10px!important;}
.cmpi-results-map-wrap::before,.cmpi-results-map-wrap::after,.cmpi-hero-slide::before,.cmpi-hero-slide::after {display:none!important;}
.cmpi-price-range-track {background:#e5e0d7!important;}
.cmpi-price-range-fill {background:#a77b40!important;}
.cmpi-price-range-slider input::-webkit-slider-thumb {background:#a77b40!important;border-color:#fff!important;}
.cmpi-price-range-slider input::-moz-range-thumb {background:#a77b40!important;border-color:#fff!important;}
.hfs-advanced-search {margin-top:18px;color:#172d43;}
.hfs-advanced-search summary {font-size:12px;font-weight:600;cursor:pointer;}
.cmpi-results-filter .hfs-search-fields {grid-template-columns:repeat(2,minmax(0,1fr));}
.cmpi-results-filter .hfs-search-fields label {color:#172d43!important;}
.cmpi-results-filter .hfs-facility-filter {gap:8px 12px;}
.cmpi-results-filter label,.cmp-form label,.cmp-filter-form label {color:#172d43;font-size:12px;font-weight:600;}
.cmpi-results-filter input,.cmpi-results-filter select,.cmp-form input,.cmp-form select,.cmp-form textarea {border-color:#d5d9dc!important;border-radius:4px!important;background:#fff;color:#172d43;}
.cmpi-section {padding:64px 0;}
.cmpi-section-head h2 {font-size:clamp(27px,3vw,40px)!important;}
.cmpi-section-head p,.cmp-help,.cmp-field-note {color:#65717d;}
.cmp-price,.cmp-single-price-highlight .cmp-price {color:#172d43!important;}
.cmp-form-section {border-top:1px solid #dedfdc;padding-top:24px;margin-top:24px;}
.hfs-hospitality-fields {background:#faf9f6;padding:24px;border:1px solid #dedfdc;border-radius:6px;}
.hfs-search-fields {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid #e4e2dc;color:#172d43;}
.hfs-search-fields p {margin:0;}
.hfs-search-fields label {display:block;font-size:12px;}
.hfs-search-fields input[type=number],.hfs-search-fields select {width:100%;min-height:42px;padding:8px 10px;border:1px solid #d5d9dc;border-radius:4px;}
.hfs-facility-filter {grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 20px;border:0;padding:0;margin:0;}
.hfs-facility-filter legend {font-size:12px;font-weight:600;margin-bottom:8px;}
.hfs-facility-filter label {display:flex;gap:7px;align-items:center;}
.hfs-facility-filter input {width:auto!important;min-height:0!important;}
.hfs-social {padding:12px 24px;text-align:center;background:#172d43;color:#fff;}
.hfs-social a {color:#dcc49a;}
.cmpi-footer {background:#172d43!important;color:#e0e4e6!important;}
.cmpi-footer h2,.cmpi-footer h3,.cmpi-footer a {color:#f1ede5!important;}
.cmpi-country-card-image-empty {background-image:linear-gradient(rgba(23,45,67,.12),rgba(23,45,67,.12)),url('../images/hfs-hotel-hero.png')!important;background-size:cover;background-position:center;}
.cmpi-country-card-image img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.cmpi-country-card-image::after {background:linear-gradient(180deg,rgba(23,45,67,0),rgba(23,45,67,.12))!important;}
.cmpi-country-card-body {padding:22px!important;margin-top:0!important;}
.cmpi-country-card-body h3 {font-family:var(--hfs-font);font-size:22px;font-weight:600;color:#172d43!important;}
body.cmpi-theme .cmpi-country-card {display:flex;flex-direction:column;}
body.cmpi-theme .cmpi-country-card-image {flex:0 0 240px;}
body.cmpi-theme .cmpi-country-card-body {display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:16px;min-height:150px;}
body.cmpi-theme .cmpi-country-card-body h3 {margin:0;}
body.cmpi-theme .cmpi-country-card-body .cmpi-btn {margin-top:auto;}
body.cmpi-theme .cmpi-header select {
  min-height:40px;max-width:100%;padding:8px 12px;border:1px solid #d5d9dc;
  border-radius:6px;background:#fff;color:#172d43;font-family:var(--hfs-font)!important;font-size:13px;
}

/* The property name and advert title are alternatives. */
body.cmpi-theme .cmp-title-choice {grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;}
body.cmpi-theme .cmp-title-choice > p {min-width:0;margin:0;}
body.cmpi-theme .cmp-title-choice-or {padding-top:36px;color:#65717d;font-weight:700;text-align:center;}
@media(max-width:720px) {
  body.cmpi-theme .cmp-title-choice {grid-template-columns:minmax(0,1fr);gap:12px;}
  body.cmpi-theme .cmp-title-choice-or {padding-top:0;}
}

/* Shared layout for theme panels and marketplace shortcodes. */
body.cmpi-theme .cmpi-shell {background:var(--cmpi-bg);}
body.cmpi-theme .cmpi-section-no-hero {padding:48px 0;}
body.cmpi-theme :is(.cmpi-content-card,.cmp-card,.cmp-info-card,.cmp-step-card,.cmp-tip-card,.cmpi-info-card,.cmpi-side-card,.cmp-auth-panel,.cmp-dashboard-sidebar) {
  border:1px solid #dedfdc!important;border-radius:8px!important;background:#fff!important;
  box-shadow:0 4px 18px rgba(23,45,67,.04)!important;padding:clamp(24px,3vw,36px)!important;
}
body.cmpi-theme .cmpi-content-card:has(> .cmp-card:only-child) {
  padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
body.cmpi-theme .cmpi-content-card > .cmp-card:only-child {margin:0;}
body.cmpi-theme :is(.cmp-card,.cmpi-content-card) > :is(h1,h2,h3) {margin:0 0 16px;line-height:1.25!important;}
body.cmpi-theme :is(.cmp-card,.cmpi-content-card) > h2 {font-size:clamp(24px,2.3vw,32px);}
body.cmpi-theme :is(.cmp-card,.cmpi-content-card) > p {margin:0 0 20px;line-height:1.7;}
body.cmpi-theme .cmp-card-actions {display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;}
body.cmpi-theme .cmp-section-kicker {display:block;margin:0 0 12px;color:#65717d!important;}

/* Comparison cards follow the same spacing and colours as the other panels. */
body.cmpi-theme .cmpi-page-hero .cmpi-eyebrow {color:#dcc49a!important;}
body.cmpi-theme .cmpi-compare-top {grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px;}
body.cmpi-theme .cmpi-compare-card {
  display:flex;flex-direction:column;min-width:0;border:1px solid #dedfdc;border-radius:8px;
  background:#fff;box-shadow:0 4px 18px rgba(23,45,67,.04);
}
body.cmpi-theme .cmpi-compare-image,
body.cmpi-theme .cmpi-compare-image img {background:#faf9f6;}
body.cmpi-theme .cmpi-compare-image img {object-fit:cover;}
body.cmpi-theme .cmpi-compare-card-body {display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:16px;padding:24px;}
body.cmpi-theme .cmpi-compare-card-body h3 {margin:0;font-size:20px;line-height:1.35!important;}
body.cmpi-theme .cmpi-compare-card-body p {margin:0;line-height:1.7;}
body.cmpi-theme .cmpi-compare-card-body .cmpi-btn {margin-top:auto;}
body.cmpi-theme .cmpi-compare-table-wrap {max-width:100%;border-color:#dedfdc;border-radius:8px;}
body.cmpi-theme .cmpi-compare-table tbody th {background:#faf9f6;}
body.cmpi-theme .cmpi-compare-group-row th,
body.cmpi-theme .cmpi-compare-group-row td {background:#f1f4f6;}

/* These scoped rules also beat the plugin's high-specificity orange overrides. */
body.cmpi-theme .cmp-btn:not(.cmp-btn-secondary):not(.cmp-favorite-btn):not(.cmp-btn-danger),
body.cmpi-theme :is(.cmpi-btn,.cmp-compare-btn,.cmp-map-info-link),
body.cmpi-theme .cfs-newsletter-signup :is(button,input[type="submit"]) {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;
  padding:12px 22px!important;border:1px solid #172d43!important;border-radius:6px!important;
  background:#172d43!important;background-image:none!important;color:#fff!important;
  font-family:var(--hfs-font)!important;font-size:14px!important;font-weight:700!important;
  line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;
  box-shadow:none!important;text-decoration:none!important;transform:none!important;
}
body.cmpi-theme .cmp-btn:not(.cmp-btn-secondary):not(.cmp-favorite-btn):not(.cmp-btn-danger):hover,
body.cmpi-theme :is(.cmpi-btn,.cmp-compare-btn,.cmp-map-info-link):hover,
body.cmpi-theme .cfs-newsletter-signup :is(button,input[type="submit"]):hover {
  background:#27445f!important;border-color:#27445f!important;box-shadow:none!important;transform:none!important;
}
body.cmpi-theme :is(.cmp-btn-secondary,.cmpi-btn-secondary) {
  background:#fff!important;color:#172d43!important;border:1px solid #c8cdd1!important;
  border-radius:6px!important;font-family:var(--hfs-font)!important;letter-spacing:0!important;box-shadow:none!important;
}
body.cmpi-theme .cmpi-home-hero-actions .cmpi-btn-secondary {
  background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.65)!important;
}
body.cmpi-theme :is(.cmp-btn-secondary,.cmpi-btn-secondary):hover {
  background:#f1f4f6!important;color:#172d43!important;border-color:#172d43!important;
}
body.cmpi-theme .cmpi-home-hero-actions .cmpi-btn-secondary:hover {
  background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:#fff!important;
}
body.cmpi-theme :is(.cmp-form,.cmp-filter-form,.cmpi-results-filter) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]),select,textarea),
body.cmpi-theme .cfs-newsletter-signup input[type="email"] {
  border:1px solid #d5d9dc!important;border-radius:6px!important;background:#fff!important;
  color:#172d43!important;font-family:var(--hfs-font)!important;font-size:15px;box-shadow:none!important;
}
body.cmpi-theme .cfs-newsletter-prefooter-wrap {padding:40px 0!important;background:var(--cmpi-bg)!important;border-top:1px solid #dedfdc;}
body.cmpi-theme .cfs-newsletter-signup {
  gap:24px!important;align-items:center!important;padding:clamp(24px,3vw,36px)!important;
  background:#fff!important;border:1px solid #dedfdc!important;border-radius:8px!important;
  box-shadow:0 4px 18px rgba(23,45,67,.04)!important;
}
body.cmpi-theme .cfs-newsletter-signup .cfs-newsletter-title,
body.cmpi-theme .cfs-newsletter-signup :is(h1,h2,h3) {
  font-family:var(--hfs-font)!important;font-size:24px!important;font-weight:700!important;
  line-height:1.3!important;letter-spacing:-.02em!important;color:#172d43!important;
}
body.cmpi-theme .cfs-newsletter-copy {gap:10px;}
body.cmpi-theme .cfs-newsletter-signup input[type="email"] {min-height:48px!important;padding:12px 14px!important;}
body.cmpi-theme .cfs-newsletter-signup label {font-family:var(--hfs-font)!important;font-weight:600;letter-spacing:.04em;}
@media(max-width:720px) {
  body.cmpi-theme .cmpi-section-no-hero {padding:28px 0;}
  body.cmpi-theme .cfs-newsletter-signup {grid-template-columns:minmax(0,1fr)!important;gap:20px!important;width:var(--cmpi-container)!important;}
  body.cmpi-theme .cfs-newsletter-signup :is(button,input[type="submit"]) {width:100%;}
}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible {outline:2px solid #a77b40;outline-offset:3px;}
@media(max-width:780px) {
  body.cmpi-theme .cmpi-header-actions .cmpi-btn {min-height:44px!important;padding:0 12px!important;font-size:12px!important;}
  body.cmpi-theme .cmpi-header select {width:122px;max-width:100%;padding:8px 10px;}
  .cmpi-results-hero .cmpi-hero-slide:nth-child(6),
  .cmpi-results-hero .cmpi-hero-slide:nth-child(7),
  .cmpi-results-hero .cmpi-hero-slide:nth-child(11) {background-position:72% center;}
  .cmpi-results-hero-filter-visible .cmpi-results-content {grid-template-columns:minmax(0,1fr)!important;padding:40px 0!important;gap:28px;}
  .hfs-search-fields {grid-template-columns:repeat(2,minmax(0,1fr));}
  .cmpi-results-hero {min-height:440px!important;}
  .cmpi-logo {width:375px!important;}
  .cmpi-section {padding:40px 0;}
}
@media(max-width:420px) {
  .hfs-search-fields {gap:12px;}
  .hfs-hospitality-fields {padding:16px;}
  .cmpi-results-filter {padding:16px!important;}
}
@media(max-width:380px) {
  body.cmpi-theme .cmpi-header select {width:104px;}
}
