.spl-page{padding:48px 20px}.spl-container{max-width:1200px;margin:0 auto}.spl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.spl-card{border:1px solid #ddd;background:#fff}.spl-card-image{display:block;aspect-ratio:4/3;background:#eee;overflow:hidden}.spl-card-image img{width:100%;height:100%;object-fit:cover}.spl-card-body{padding:20px}.spl-card h3{margin:8px 0}.spl-card h3 a{text-decoration:none;color:inherit}.spl-price,.spl-single-price{font-size:1.35rem;font-weight:700}.spl-card-badges span,.spl-status{display:inline-block;padding:5px 9px;border:1px solid currentColor;font-size:.8rem}.spl-facts{display:flex;flex-wrap:wrap;gap:12px;padding:0;list-style:none}.spl-button,.spl-inquiry-form button,.spl-filters button{display:inline-block;padding:11px 18px;background:#111;color:#fff;border:0;text-decoration:none;cursor:pointer}.spl-filters{padding:18px;border:1px solid #ddd;margin-bottom:28px}.spl-filters>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:end}.spl-filters label,.spl-inquiry-form label{display:block;font-weight:600}.spl-filters input,.spl-filters select,.spl-inquiry-form input,.spl-inquiry-form select,.spl-inquiry-form textarea{width:100%;padding:10px;margin-top:5px;border:1px solid #bbb;box-sizing:border-box}.spl-single-header{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:24px}.spl-hero img{width:100%;height:auto}.spl-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}.spl-gallery img{width:100%;height:180px;object-fit:cover}.spl-single-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:48px;margin-top:36px}.spl-sidebar{border:1px solid #ddd;padding:24px;align-self:start;position:sticky;top:24px}.spl-detail-grid{display:flex;flex-wrap:wrap;gap:28px;padding:0;list-style:none;border-bottom:1px solid #ddd;padding-bottom:24px}.spl-detail-grid li{display:flex;flex-direction:column}.spl-detail-grid strong{font-size:1.25rem}.spl-detail-grid span{font-size:.85rem}.spl-hp{position:absolute!important;left:-9999px!important}.spl-consent{font-weight:400!important;font-size:.9rem}.spl-consent input{width:auto}.spl-form-message{padding:12px;margin-bottom:16px;border:1px solid}.spl-success{background:#eef8ef}.spl-error{background:#fff1f1}.spl-pagination{margin-top:30px;display:flex;gap:8px}.spl-pagination .page-numbers{padding:7px 11px;border:1px solid #ccc;text-decoration:none}@media(max-width:900px){.spl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spl-filters>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spl-single-layout{grid-template-columns:1fr}.spl-sidebar{position:static}.spl-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.spl-grid,.spl-filters>div{grid-template-columns:1fr}.spl-single-header{display:block}.spl-gallery img{height:130px}}

/* Property image carousel */
.spl-carousel{margin-bottom:12px}.spl-carousel-viewport{position:relative;overflow:hidden;background:#eee}.spl-carousel-track{display:flex;transition:transform .35s ease;will-change:transform}.spl-carousel-slide{position:relative;flex:0 0 100%;margin:0;aspect-ratio:16/9;background:#eee}.spl-carousel-slide img{display:block;width:100%;height:100%;object-fit:cover}.spl-carousel-slide figcaption{position:absolute;right:0;bottom:0;left:0;padding:30px 16px 12px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-size:.9rem}.spl-carousel-arrow{position:absolute;top:50%;z-index:2;display:grid;width:46px;height:46px;padding:0;place-items:center;transform:translateY(-50%);border:0;border-radius:50%;background:rgba(0,0,0,.62);color:#fff;font-size:1.45rem;cursor:pointer}.spl-carousel-arrow:hover,.spl-carousel-arrow:focus-visible{background:rgba(0,0,0,.86)}.spl-carousel-prev{left:16px}.spl-carousel-next{right:16px}.spl-carousel-counter{position:absolute;right:14px;bottom:14px;z-index:2;padding:5px 10px;border-radius:999px;background:rgba(0,0,0,.68);color:#fff;font-size:.82rem}.spl-carousel-thumbnails{display:flex;gap:8px;margin-top:10px;padding-bottom:4px;overflow-x:auto;scrollbar-width:thin}.spl-carousel-thumbnail{flex:0 0 104px;height:70px;padding:0;overflow:hidden;border:2px solid transparent;background:#eee;cursor:pointer;opacity:.72}.spl-carousel-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}.spl-carousel-thumbnail.is-active{border-color:#111;opacity:1}.spl-carousel-thumbnail:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(prefers-reduced-motion:reduce){.spl-carousel-track{transition:none}}@media(max-width:560px){.spl-carousel-slide{aspect-ratio:4/3}.spl-carousel-arrow{width:40px;height:40px}.spl-carousel-prev{left:8px}.spl-carousel-next{right:8px}.spl-carousel-thumbnail{flex-basis:82px;height:58px}}

/* Carousel control compatibility fixes — v0.2.1 */
.spl-carousel-viewport .spl-carousel-arrow{
  position:absolute!important;
  top:50%!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  min-width:46px!important;
  height:46px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0!important;
  transform:translateY(-50%)!important;
  border:0!important;
  border-radius:50%!important;
  background:rgba(0,0,0,.68)!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.spl-carousel-viewport .spl-carousel-prev{left:16px!important;right:auto!important}
.spl-carousel-viewport .spl-carousel-next{right:16px!important;left:auto!important}
.spl-carousel-viewport .spl-carousel-arrow svg{display:block!important;width:26px!important;height:26px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.5!important;stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important}
.spl-carousel-viewport .spl-carousel-arrow:hover,
.spl-carousel-viewport .spl-carousel-arrow:focus-visible{background:rgba(0,0,0,.9)!important;color:#fff!important}
.spl-carousel-thumbnail{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:inherit!important;
  box-shadow:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.spl-carousel-thumbnail.is-active{border:0!important;opacity:1;outline:2px solid currentColor;outline-offset:-2px}
@media(max-width:560px){
  .spl-carousel-viewport .spl-carousel-arrow{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important}
  .spl-carousel-viewport .spl-carousel-prev{left:8px!important}
  .spl-carousel-viewport .spl-carousel-next{right:8px!important}
}

/* Summit UI design system — v0.3.0 */
.spl-page,
.spl-listings-wrap,
.spl-single {
  --spl-gold: #C9A34E;
  --spl-black: #000000;
  --spl-white: #ffffff;
  --spl-text: #151515;
  --spl-muted: #666666;
  --spl-border: #d8d8d8;
  --spl-surface: #ffffff;
  --spl-soft-surface: #f7f5ef;
  --spl-focus: #C9A34E;
}

/* Shared Summit CTA component. The animated SVG is injected by front.js. */
.spl-ui-button,
.spl-button,
.spl-inquiry-form button[type="submit"],
.spl-filters button[type="submit"],
.spl-pagination a.page-numbers {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  margin: 10px 0;
  padding: 11px 20px;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #C9A34E;
  color: #ffffff !important;
  font: inherit;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition: background-color .35s ease, color .35s ease, letter-spacing .35s ease, transform .25s ease;
}

/* Prevent Elementor global link and button colors from recoloring Summit button content. */
.spl-ui-button,
.spl-ui-button:visited,
.spl-ui-button:hover,
.spl-ui-button:focus,
.spl-ui-button:active,
.spl-ui-button span,
.spl-ui-button strong,
.spl-ui-button .elementor-button-text {
  color: #ffffff !important;
}

.spl-ui-button > :not(.spl-ui-button-border) {
  position: relative;
  z-index: 2;
}

.spl-ui-button-border {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.spl-ui-button-border rect {
  fill: none;
  stroke: #ffffff;
  stroke-width: 5;
  stroke-dasharray: 0 422;
  stroke-dashoffset: 211;
  stroke-opacity: 0;
  transition:
    stroke-dasharray 1.05s cubic-bezier(.19,1,.22,1),
    stroke-dashoffset 1.05s cubic-bezier(.19,1,.22,1),
    stroke-width .7s cubic-bezier(.19,1,.22,1),
    stroke-opacity .45s ease;

}

.spl-ui-button:hover,
.spl-ui-button:focus-visible,
.spl-button:hover,
.spl-button:focus-visible,
.spl-inquiry-form button[type="submit"]:hover,
.spl-inquiry-form button[type="submit"]:focus-visible,
.spl-filters button[type="submit"]:hover,
.spl-filters button[type="submit"]:focus-visible,
.spl-pagination a.page-numbers:hover,
.spl-pagination a.page-numbers:focus-visible {
  background: #000000;
  color: #ffffff !important;
  font-weight: 700;
  letter-spacing: 1px;
  transform: translateY(-2px);
}

.spl-ui-button:hover .spl-ui-button-border rect,
.spl-ui-button:focus-visible .spl-ui-button-border rect {
  stroke-width: 2;
  stroke-dasharray: 422 0;
  stroke-dashoffset: 0;
  stroke-opacity: 1;
  transition:
    stroke-dasharray 1.05s cubic-bezier(.19,1,.22,1),
    stroke-dashoffset 1.05s cubic-bezier(.19,1,.22,1),
    stroke-width .7s cubic-bezier(.19,1,.22,1),
    stroke-opacity .45s ease;
}

.spl-ui-button:focus-visible,
.spl-button:focus-visible,
.spl-inquiry-form button[type="submit"]:focus-visible,
.spl-filters button[type="submit"]:focus-visible,
.spl-pagination a.page-numbers:focus-visible {
  outline: 3px solid #C9A34E;
  outline-offset: 3px;
}

.spl-ui-button:active { transform: translateY(0); }
.spl-ui-button:disabled,
.spl-inquiry-form button[type="submit"]:disabled,
.spl-filters button[type="submit"]:disabled { opacity: .55; cursor: not-allowed; transform: none; }

/* Branded carousel controls; thumbnail buttons remain intentionally unstyled. */
.spl-carousel-viewport .spl-carousel-arrow {
  margin: 0!important;
  background: #C9A34E!important;
  color: #ffffff!important;
  font-weight: 700!important;
  transition: background-color .25s ease, transform .25s ease!important;
}
.spl-carousel-viewport .spl-carousel-arrow:hover,
.spl-carousel-viewport .spl-carousel-arrow:focus-visible {
  background: #000000!important;
  color: #ffffff!important;
}
.spl-carousel-viewport .spl-carousel-arrow:focus-visible {
  outline: 3px solid #C9A34E!important;
  outline-offset: 3px!important;
}

/* Complementary Summit UI components. */
.spl-card {
  border-color: var(--spl-border, #d8d8d8);
  background: var(--spl-surface, #ffffff);
  transition: border-color .25s ease, transform .25s ease;
}
.spl-card:hover { border-color: var(--spl-gold, #C9A34E); transform: translateY(-2px); }
.spl-card-badges span,
.spl-status {
  border: 0;
  border-radius: 0;
  background: var(--spl-gold, #C9A34E);
  color: var(--spl-white, #ffffff);
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.spl-filters,
.spl-sidebar {
  border-color: var(--spl-border, #d8d8d8);
  background: var(--spl-soft-surface, #f7f5ef);
}
.spl-filters input,
.spl-filters select,
.spl-inquiry-form input,
.spl-inquiry-form select,
.spl-inquiry-form textarea {
  border-radius: 0;
  border-color: var(--spl-border, #d8d8d8);
  background: var(--spl-white, #ffffff);
  color: var(--spl-text, #151515);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.spl-filters input:focus,
.spl-filters select:focus,
.spl-inquiry-form input:focus,
.spl-inquiry-form select:focus,
.spl-inquiry-form textarea:focus {
  border-color: var(--spl-gold, #C9A34E);
  outline: none;
  box-shadow: 0 0 0 2px rgba(201,163,78,.22);
}
.spl-pagination .page-numbers.current {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  margin: 10px 0;
  padding: 11px 16px;
  border: 0;
  border-radius: 0;
  background: #000000;
  color: #ffffff !important;
  font-weight: 700;
}
.spl-form-message { border-radius: 0; border-left-width: 5px; }
.spl-success { border-color: var(--spl-gold, #C9A34E); }
.spl-error { border-color: #8f2020; }

@media (prefers-reduced-motion: reduce) {
  .spl-ui-button,
  .spl-ui-button-border rect,
  .spl-card,
  .spl-carousel-viewport .spl-carousel-arrow {
    transition: none!important;
  }
  .spl-ui-button:hover,
  .spl-ui-button:focus-visible,
  .spl-card:hover { transform: none; }
}


/* Responsive content and embedded media fixes — v0.3.4 */
.spl-single-layout,
.spl-main-content,
.spl-sidebar {
  min-width: 0;
}

.spl-main-content {
  width: 100%;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.spl-main-content img,
.spl-main-content video,
.spl-main-content iframe,
.spl-main-content embed,
.spl-main-content object {
  max-width: 100%;
}

.spl-video-tour,
.spl-video-embed {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.spl-video-embed {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #000;
}

.spl-video-embed iframe,
.spl-video-embed video,
.spl-video-embed embed,
.spl-video-embed object {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  border: 0;
}

.spl-video-embed > p {
  position: static;
  margin: 0;
  padding: 20px;
  background: var(--spl-soft-surface, #f7f5ef);
}

@media (max-width: 560px) {
  .spl-page {
    padding-right: 16px;
    padding-left: 16px;
  }

  .spl-single-layout {
    gap: 28px;
  }
}


/* Summit inquiry form typography and spacing. */
.spl-inquiry-form,
.spl-inquiry-form label,
.spl-inquiry-form input,
.spl-inquiry-form select,
.spl-inquiry-form textarea,
.spl-inquiry-form p {
  line-height: 1.5;
}

.spl-inquiry-form > label {
  display: block;
  margin-bottom: 20px;
  font-weight: 600;
}

.spl-inquiry-form > label > input,
.spl-inquiry-form > label > select,
.spl-inquiry-form > label > textarea {
  margin-top: 6px;
}

.spl-inquiry-form textarea {
  min-height: 140px;
  resize: vertical;
}

.spl-inquiry-form input::placeholder,
.spl-inquiry-form textarea::placeholder {
  color: #8a8a8a;
  opacity: 1;
}

.spl-inquiry-form input:focus,
.spl-inquiry-form select:focus,
.spl-inquiry-form textarea:focus {
  border-color: #C9A34E;
  box-shadow: 0 0 0 3px rgba(201,163,78,.18);
  outline: none;
}

@media (max-width: 768px) {
  .spl-inquiry-form .spl-ui-button,
  .spl-inquiry-form .spl-button,
  .spl-inquiry-form button[type="submit"] {
    width: 100%;
  }
}

/* Featured property carousel / Elementor widget — v1.4.5 */
.elementor-widget-summit-featured-properties,
.elementor-widget-summit-featured-properties > .elementor-widget-container{
  width:100%;
  max-width:100%;
  min-width:0;
}
.spl-featured-carousel{
  --spl-featured-gap:20px;
  --spl-featured-columns:4;
  position:relative;
  width:100%;
  max-width:100%;
  min-width:0;
  padding:0 52px;
  box-sizing:border-box;
}
.spl-featured-viewport{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
}
.spl-featured-viewport::-webkit-scrollbar{display:none}
.spl-featured-track{
  display:flex;
  align-items:stretch;
  gap:var(--spl-featured-gap);
  width:100%;
  min-width:100%;
}
.spl-featured-card{
  flex:0 0 calc((100% - (var(--spl-featured-gap) * (var(--spl-featured-columns) - 1))) / var(--spl-featured-columns));
  width:calc((100% - (var(--spl-featured-gap) * (var(--spl-featured-columns) - 1))) / var(--spl-featured-columns));
  max-width:calc((100% - (var(--spl-featured-gap) * (var(--spl-featured-columns) - 1))) / var(--spl-featured-columns));
  min-width:0;
  overflow:hidden;
  border:1px solid #dedede;
  background:#fff;
  scroll-snap-align:start;
  box-sizing:border-box;
}
.spl-featured-image{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#eee;
}
.spl-featured-image img,
.spl-featured-image-placeholder{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.spl-featured-card:hover .spl-featured-image img{transform:scale(1.035)}
.spl-featured-card-body{padding:16px}
.spl-featured-title{
  margin:0 0 12px;
  font-size:1.05rem;
  line-height:1.25;
}
.spl-featured-title a,
.spl-featured-title a:visited{
  color:#151515!important;
  text-decoration:none;
}
.spl-featured-facts{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:38px;
  margin:0;
  padding:0;
  list-style:none;
}
.spl-featured-facts li{display:flex;flex-direction:column;line-height:1.1}
.spl-featured-facts strong{font-size:.95rem;color:#151515}
.spl-featured-facts span{margin-top:3px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#666}
.spl-featured-button{display:flex!important;width:100%;margin:14px 0 0!important;padding-right:10px!important;padding-left:10px!important;font-size:.82rem}
.spl-featured-arrow{
  position:absolute;
  top:50%;
  z-index:4;
  display:grid;
  width:40px;
  height:40px;
  margin:0;
  padding:0;
  place-items:center;
  transform:translateY(-50%);
  border:0;
  border-radius:0;
  background:#C9A34E;
  color:#fff!important;
  cursor:pointer;
  appearance:none;
  transition:background-color .25s ease,opacity .25s ease;
}
.spl-featured-arrow:hover,.spl-featured-arrow:focus-visible{background:#000;color:#fff!important}
.spl-featured-arrow:disabled{opacity:.35;cursor:default}
.spl-featured-arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.spl-featured-prev{left:0}.spl-featured-next{right:0}
.spl-featured-empty{margin:0}
@media(max-width:1024px){
  .spl-featured-carousel{--spl-featured-columns:2}
}
@media(max-width:767px){
  .spl-featured-carousel{--spl-featured-columns:1;padding:0 38px}
  .spl-featured-card{max-width:100%}
  .spl-featured-arrow{width:32px;height:42px}
  .spl-featured-card-body{padding:14px}
}
@media(prefers-reduced-motion:reduce){
  .spl-featured-viewport{scroll-behavior:auto}
  .spl-featured-image img{transition:none}
}
