/**
 * SSP Properties - IDX Broker Custom CSS Overrides
 * 
 * This file styles IDX Broker listing detail pages to match the SSP brand.
 * Loaded by WordPress via wp_enqueue_scripts on all pages (IDX-specific 
 * selectors won't affect non-IDX pages).
 * 
 * Last updated: 2026-01-28
 * IDX Account: Core (no template editor access)
 * Template: IDX Broker Starter
 * 
 * Reference: .claude/IDX-BROKER-KNOWLEDGE.md
 */
#IDX-primaryPhoto, .swiper-container {
  margin-bottom: 0 !important;
}

#IDX-detailsSlidesActions .IDX-inline-buttons {
  display: flex !important;
  flex-direction: row !important;
  margin-top: 0 !important;
}

#IDX-main.IDX-category-details .IDX-inline-buttons__lg > * {
  width: auto !important;
}

.idx-wrapper-template-default .blog-post-title {
  display: none;
}

body.idx-wrapper-template-default {
  padding-top: 90px;
}

.IDX-nav.IDX-inline-buttons {
  display: none !important;
}

#IDX-saveProperty,
.IDX-saveProperty {
  display: none !important;
}

#IDX-printable,
a[href*=printable] {
  display: none !important;
}

#audioStreamPlayer {
  display: none !important;
}

.sharethis-inline-share-buttons {
  display: none !important;
}

.IDX-details-contact,
.IDX-details-contact.IDX-hidden-mobile,
.IDX-contactAgent,
.IDX-pageContainer.IDX-contactAgent {
  display: none !important;
}

.IDX-container-row.IDX-hidden-desktop {
  display: none !important;
}

#IDX-detailsHeaderActions {
  display: none !important;
}

a[href*=more-information],
a[href*=get-directions],
.IDX-btn__link[href*="google.com/maps"] {
  display: none !important;
}

.IDX-disclaimer,
.IDX-mlsDisclaimer {
  font-size: 11px !important;
  color: #909296 !important;
  opacity: 0.7 !important;
  margin-top: 48px !important;
  padding-top: 24px !important;
  border-top: 1px solid #c0bfbf !important;
}

#IDX-detailsPageContainer > div:first-of-type > div[style*="text-align:justify"],
#IDX-main div[style*="padding:10px 0"][style*="text-align:justify"] {
  background: #ffffff !important;
  border: 1px solid rgba(144, 146, 150, 0.2) !important;
  border-radius: 12px !important;
  padding: 24px 32px !important;
  margin: 32px auto !important;
  max-width: 1168px !important;
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #909296 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
}
#IDX-detailsPageContainer > div:first-of-type > div[style*="text-align:justify"] img,
#IDX-main div[style*="padding:10px 0"][style*="text-align:justify"] img {
  display: none !important;
}

#IDX-main > div[style*="text-align:center"][style*="padding:15px"],
div[style*="Data services provided"] {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 14px !important;
  color: #909296 !important;
  padding: 20px 0 !important;
  margin: 0 auto !important;
  max-width: 1168px !important;
}
#IDX-main > div[style*="text-align:center"][style*="padding:15px"] a,
div[style*="Data services provided"] a {
  color: #953a2c !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}
#IDX-main > div[style*="text-align:center"][style*="padding:15px"] a:hover,
div[style*="Data services provided"] a:hover {
  text-decoration: underline !important;
}

#IDX-detailsAside {
  display: none !important;
}

#IDX-detailsDescriptionActions .IDX-btn.IDX-btn__link.IDX-clamp__button:after {
  display: none !important;
}
#IDX-detailsDescriptionActions .IDX-tooltip-wrapper {
  display: none !important;
}
#IDX-detailsDescriptionActions #IDX-detailsDescriptionActionsMoreInfo {
  display: none !important;
}

#IDX-detailsMain {
  width: 100% !important;
}

#IDX-detailsWrapper {
  max-width: 1168px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
}

.IDX-pageContainer,
#IDX-detailsPageContainer {
  max-width: 100% !important;
  padding: 0 !important;
}

.IDX-row {
  max-width: 1168px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
}

.IDX-wrapper-standard,
.IDX-page-listing,
.IDX-notLoggedIn,
#IDX-detailsWrapper,
#IDX-detailsPageContainer,
#IDX-detailsMain,
.IDX-pageContainer {
  background-color: #fffcf2 !important;
}

.blog-post,
.blog-post-content-wrapper,
.blog-post-content {
  background-color: #fffcf2 !important;
}

.IDX-inline-buttons,
.IDX-inline-buttons__lg,
#IDX-primaryPhoto,
.IDX-text-center {
  background-color: transparent !important;
}

.IDX-wrapper-standard,
.IDX-page-listing,
#IDX-detailsWrapper,
#IDX-detailsPageContainer {
  font-family: "Plus Jakarta Sans", sans-serif !important;
}

.IDX-h2 {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 48px !important;
  font-weight: 700 !important;
  color: #252422 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.5px !important;
  margin-bottom: 8px !important;
}

.IDX-detailsAddress__divider {
  color: #909296 !important;
  margin: 0 8px !important;
}

#IDX-detailsAddress {
  margin-bottom: 0 !important;
}
#IDX-detailsAddress .IDX-detailsAddressStreet {
  font-family: "Plus Jakarta Sans", sans-serif !important;
}
#IDX-detailsAddress .IDX-detailsAddressCity {
  font-family: "Plus Jakarta Sans", sans-serif !important;
}
#IDX-detailsAddress .IDX-detailsAddressState {
  font-family: "Plus Jakarta Sans", sans-serif !important;
}
#IDX-detailsAddress .IDX-detailsAddressZip {
  font-family: "Plus Jakarta Sans", sans-serif !important;
}

.IDX-field-price,
.IDX-field-listingPrice {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #252422 !important;
}

.swiper-container {
  border-radius: 0 !important;
  overflow: hidden !important;
}

.swiper-slide img {
  width: 100% !important;
  max-height: 600px !important;
  object-fit: cover !important;
}

.swiper-button-prev,
.swiper-button-next {
  background: #252422 !important;
  width: 60px !important;
  height: 60px !important;
  border-radius: 50% !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.3s ease !important;
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
  background: #953a2c !important;
  transform: scale(1.05) !important;
}
.swiper-button-prev::after,
.swiper-button-next::after {
  color: #252422 !important;
  font-size: 20px !important;
}

.swiper-pagination.swiper-text-block {
  display: none !important;
}

.IDX-btn__PL {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 14px 28px !important;
  transition: all 0.3s ease !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}
.IDX-btn__PL.IDX-btn__lg {
  background-color: #953a2c !important;
  color: #ffffff !important;
  border: none !important;
}
.IDX-btn__PL.IDX-btn__lg:hover {
  background-color: rgb(117.5015544041, 45.7388601036, 34.6984455959) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(149, 58, 44, 0.3) !important;
}

.IDX-inline-buttons__lg {
  display: flex !important;
  gap: 16px !important;
  justify-content: flex-start !important;
  margin: 24px 0 32px !important;
  flex-wrap: wrap !important;
}

.IDX-panel.IDX-panel-default {
  background: #ffffff !important;
  border: 1px solid rgba(144, 146, 150, 0.2) !important;
  border-radius: 12px !important;
  margin-bottom: 24px !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
  overflow: hidden !important;
}

.IDX-panel-heading {
  background: #ffffff !important;
  border-bottom: 1px solid rgba(144, 146, 150, 0.1) !important;
  padding: 28px 32px !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
  background-color: #f5f5f5 !important;
}
.IDX-panel-heading:hover {
  background: rgba(192, 191, 191, 0.5) !important;
}

.IDX-panel-title {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  color: #252422 !important;
  letter-spacing: -0.3px !important;
}
.IDX-panel-title a {
  color: #252422 !important;
  text-decoration: none !important;
}

.IDX-panel-body {
  padding: 0 32px 32px !important;
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #252422 !important;
}

.IDX-panel-heading i,
.IDX-panel-heading svg,
.IDX-panel-heading .fa,
.IDX-panel-heading .fas,
.IDX-panel-heading .far,
.IDX-panel-heading .fal,
.IDX-panel-heading .fab,
.IDX-panel-heading [class*=icon],
.IDX-panel-heading [class*=chevron],
.IDX-panel-heading [class*=arrow],
.IDX-panel-heading [class*=caret],
.IDX-panel-title i,
.IDX-panel-title svg,
.IDX-panel-title .fa,
.IDX-panel-title .fas,
.IDX-panel-title .far,
.IDX-panel-title .fal,
.IDX-panel-title .fab,
.IDX-panel-title [class*=icon],
.IDX-panel-title [class*=chevron],
.IDX-panel-title [class*=arrow],
.IDX-panel-title [class*=caret],
.IDX-panel-collapse-toggle i,
.IDX-panel-collapse-toggle svg,
.IDX-panel-collapse-toggle .fa,
.IDX-panel-collapse-toggle .fas,
.IDX-panel-collapse-toggle .far,
.IDX-panel-collapse-toggle .fal,
.IDX-panel-collapse-toggle .fab,
.IDX-panel-collapse-toggle [class*=icon],
.IDX-panel-collapse-toggle [class*=chevron],
.IDX-panel-collapse-toggle [class*=arrow],
.IDX-panel-collapse-toggle [class*=caret],
.IDX-panel i,
.IDX-panel svg,
.IDX-panel .fa,
.IDX-panel .fas,
.IDX-panel .far,
.IDX-panel .fal,
.IDX-panel .fab,
.IDX-panel [class*=icon],
.IDX-panel [class*=chevron],
.IDX-panel [class*=arrow],
.IDX-panel [class*=caret] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  left: -9999px !important;
}
.IDX-panel-heading i::before, .IDX-panel-heading i::after,
.IDX-panel-heading svg::before,
.IDX-panel-heading svg::after,
.IDX-panel-heading .fa::before,
.IDX-panel-heading .fa::after,
.IDX-panel-heading .fas::before,
.IDX-panel-heading .fas::after,
.IDX-panel-heading .far::before,
.IDX-panel-heading .far::after,
.IDX-panel-heading .fal::before,
.IDX-panel-heading .fal::after,
.IDX-panel-heading .fab::before,
.IDX-panel-heading .fab::after,
.IDX-panel-heading [class*=icon]::before,
.IDX-panel-heading [class*=icon]::after,
.IDX-panel-heading [class*=chevron]::before,
.IDX-panel-heading [class*=chevron]::after,
.IDX-panel-heading [class*=arrow]::before,
.IDX-panel-heading [class*=arrow]::after,
.IDX-panel-heading [class*=caret]::before,
.IDX-panel-heading [class*=caret]::after,
.IDX-panel-title i::before,
.IDX-panel-title i::after,
.IDX-panel-title svg::before,
.IDX-panel-title svg::after,
.IDX-panel-title .fa::before,
.IDX-panel-title .fa::after,
.IDX-panel-title .fas::before,
.IDX-panel-title .fas::after,
.IDX-panel-title .far::before,
.IDX-panel-title .far::after,
.IDX-panel-title .fal::before,
.IDX-panel-title .fal::after,
.IDX-panel-title .fab::before,
.IDX-panel-title .fab::after,
.IDX-panel-title [class*=icon]::before,
.IDX-panel-title [class*=icon]::after,
.IDX-panel-title [class*=chevron]::before,
.IDX-panel-title [class*=chevron]::after,
.IDX-panel-title [class*=arrow]::before,
.IDX-panel-title [class*=arrow]::after,
.IDX-panel-title [class*=caret]::before,
.IDX-panel-title [class*=caret]::after,
.IDX-panel-collapse-toggle i::before,
.IDX-panel-collapse-toggle i::after,
.IDX-panel-collapse-toggle svg::before,
.IDX-panel-collapse-toggle svg::after,
.IDX-panel-collapse-toggle .fa::before,
.IDX-panel-collapse-toggle .fa::after,
.IDX-panel-collapse-toggle .fas::before,
.IDX-panel-collapse-toggle .fas::after,
.IDX-panel-collapse-toggle .far::before,
.IDX-panel-collapse-toggle .far::after,
.IDX-panel-collapse-toggle .fal::before,
.IDX-panel-collapse-toggle .fal::after,
.IDX-panel-collapse-toggle .fab::before,
.IDX-panel-collapse-toggle .fab::after,
.IDX-panel-collapse-toggle [class*=icon]::before,
.IDX-panel-collapse-toggle [class*=icon]::after,
.IDX-panel-collapse-toggle [class*=chevron]::before,
.IDX-panel-collapse-toggle [class*=chevron]::after,
.IDX-panel-collapse-toggle [class*=arrow]::before,
.IDX-panel-collapse-toggle [class*=arrow]::after,
.IDX-panel-collapse-toggle [class*=caret]::before,
.IDX-panel-collapse-toggle [class*=caret]::after,
.IDX-panel i::before,
.IDX-panel i::after,
.IDX-panel svg::before,
.IDX-panel svg::after,
.IDX-panel .fa::before,
.IDX-panel .fa::after,
.IDX-panel .fas::before,
.IDX-panel .fas::after,
.IDX-panel .far::before,
.IDX-panel .far::after,
.IDX-panel .fal::before,
.IDX-panel .fal::after,
.IDX-panel .fab::before,
.IDX-panel .fab::after,
.IDX-panel [class*=icon]::before,
.IDX-panel [class*=icon]::after,
.IDX-panel [class*=chevron]::before,
.IDX-panel [class*=chevron]::after,
.IDX-panel [class*=arrow]::before,
.IDX-panel [class*=arrow]::after,
.IDX-panel [class*=caret]::before,
.IDX-panel [class*=caret]::after {
  content: none !important;
  display: none !important;
}

.IDX-panel-title a,
.IDX-panel-title a.IDX-panel-collapse-toggle {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
.IDX-panel-title a::after,
.IDX-panel-title a.IDX-panel-collapse-toggle::after {
  content: "" !important;
  flex-shrink: 0 !important;
  width: 10px !important;
  height: 10px !important;
  margin-left: 16px !important;
  border-right: 2px solid #953a2c !important;
  border-bottom: 2px solid #953a2c !important;
  transition: transform 0.3s ease !important;
  transform: rotate(45deg) !important;
}

.IDX-panel:has(.IDX-in) .IDX-panel-title a::after,
.IDX-panel:has(.IDX-collapse.IDX-in) .IDX-panel-title a::after {
  transform: rotate(-135deg) !important;
}

.IDX-panel:not(:has(.IDX-in)) .IDX-panel-title a::after {
  transform: rotate(45deg) !important;
}

.IDX-label {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #953a2c !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 4px !important;
  display: inline-block !important;
}

.IDX-field {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 16px !important;
  color: #252422 !important;
  margin-bottom: 16px !important;
  line-height: 1.5 !important;
}

.IDX-panel-body .IDX-field {
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(144, 146, 150, 0.1) !important;
}
.IDX-panel-body .IDX-field:last-child {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

.IDX-clamp__target {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #252422 !important;
}

.IDX-clamp__button,
.IDX-btn__link {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  font-style: italic !important;
  color: #953a2c !important;
  text-decoration: underline !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  margin-top: 12px !important;
  cursor: pointer !important;
  transition: opacity 0.2s ease !important;
}
.IDX-clamp__button:hover,
.IDX-btn__link:hover {
  opacity: 0.8 !important;
}

.IDX-similar-listings {
  background: #fffcf2 !important;
  padding: 64px 0 !important;
  margin-top: 48px !important;
}
.IDX-similar-listings h2,
.IDX-similar-listings .IDX-h2 {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 40px !important;
  font-weight: 600 !important;
  color: #252422 !important;
  text-align: center !important;
  margin-bottom: 40px !important;
}
.IDX-similar-listings .IDX-row {
  display: flex !important;
  gap: 24px !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
}

.IDX-similar-listings--item {
  background: #ffffff !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  max-width: 400px !important;
  flex: 1 !important;
  min-width: 280px !important;
}
.IDX-similar-listings--item:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
}
.IDX-similar-listings--item img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
}
.IDX-similar-listings--item a {
  text-decoration: none !important;
}

.IDX-similar-listings--price {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #252422 !important;
  margin-top: 16px !important;
  padding: 0 16px !important;
}

.IDX-similar-listings--address {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 14px !important;
  color: #252422 !important;
  padding: 8px 16px 16px !important;
  line-height: 1.4 !important;
}

.IDX-leadFormWrap,
.IDX-contactForm {
  background: #ffffff !important;
  padding: 32px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(144, 146, 150, 0.2) !important;
}

.IDX-leadFormWrap input[type=text],
.IDX-leadFormWrap input[type=email],
.IDX-leadFormWrap input[type=tel],
.IDX-leadFormWrap textarea {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 16px !important;
  padding: 14px 16px !important;
  border: 1px solid #c0bfbf !important;
  border-radius: 8px !important;
  transition: border-color 0.2s ease !important;
}
.IDX-leadFormWrap input[type=text]:focus,
.IDX-leadFormWrap input[type=email]:focus,
.IDX-leadFormWrap input[type=tel]:focus,
.IDX-leadFormWrap textarea:focus {
  border-color: #953a2c !important;
  outline: none !important;
}
.IDX-leadFormWrap button[type=submit] {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  background-color: #953a2c !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 14px 32px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}
.IDX-leadFormWrap button[type=submit]:hover {
  background-color: rgb(117.5015544041, 45.7388601036, 34.6984455959) !important;
}

.IDX-map-container,
#IDX-detailsMap {
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid rgba(144, 146, 150, 0.2) !important;
}

@media (max-width: 1200px) {
  #IDX-detailsWrapper,
  .IDX-row {
    padding: 0 32px !important;
  }
  .IDX-h2 {
    font-size: 40px !important;
  }
  .IDX-panel-title {
    font-size: 24px !important;
  }
  .IDX-similar-listings h2,
  .IDX-similar-listings .IDX-h2 {
    font-size: 36px !important;
  }
}
@media (max-width: 768px) {
  #IDX-detailsWrapper,
  .IDX-row {
    padding: 0 20px !important;
  }
  .IDX-h2 {
    font-size: 32px !important;
  }
  .IDX-panel-title {
    font-size: 22px !important;
  }
  .IDX-panel-heading {
    padding: 20px !important;
  }
  .IDX-panel-body {
    padding: 0 20px 20px !important;
  }
  .swiper-slide img {
    max-height: 350px !important;
  }
  .swiper-button-prev,
  .swiper-button-next {
    width: 44px !important;
    height: 44px !important;
  }
  .IDX-btn__PL {
    font-size: 16px !important;
    padding: 12px 20px !important;
  }
  .IDX-inline-buttons__lg {
    flex-direction: column !important;
    gap: 12px !important;
  }
  .IDX-inline-buttons__lg .IDX-btn__PL {
    width: 100% !important;
    text-align: center !important;
  }
  .IDX-similar-listings {
    padding: 48px 0 !important;
  }
  .IDX-similar-listings h2,
  .IDX-similar-listings .IDX-h2 {
    font-size: 28px !important;
    margin-bottom: 24px !important;
  }
  .IDX-similar-listings--item {
    max-width: 100% !important;
  }
}
@media print {
  .swiper-button-prev,
  .swiper-button-next,
  .IDX-btn__PL,
  .IDX-similar-listings {
    display: none !important;
  }
}
