@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;700;800&display=swap');
.premium-home {
    --sp-gold:#ffd700;
    --sp-ink:#171916;
    --sp-muted:#555c4e;
    --sp-line:#e6e5df;
    background:#fff;
    color:var(--sp-ink);
    font-family:'DM Sans',Arial,sans-serif;
    font-size:14px
}
.premium-home * {
    box-sizing:border-box
}
.premium-home .wrapper {
    display:block;
    height:auto;
    min-height:100%;
    overflow:clip
}
.premium-home .navigation {
    position:relative!important;
    background:#fff;
    box-shadow:none;
    border-bottom:1px solid var(--sp-line)
}
.premium-home .navigation>.container {
    width:min(1320px,94%)
}
.premium-home .secondary-navigation {
    position:relative;
    background:#171916;
    height:32px;
    min-height:0;
    opacity:1!important;
    color:#ddd
}
.premium-home .secondary-navigation .container {
    width:min(1320px,94%)
}
.premium-home .secondary-navigation .user-area {
    padding:5px 0;
    line-height:22px
}
.premium-home .secondary-navigation .user-area a {
    color:#e6d5b6;
    font-size:11px;
    letter-spacing:.3px
}
.premium-home .secondary-navigation .actions a {
    padding:0 14px
}
.premium-home .navigation .navbar {
    padding:23px 0
}
.premium-home .navigation .navbar .navbar-nav>li>a {
    color:#34362f;
    font-family:'DM Sans',sans-serif;
    font-size:13px;
    font-weight:500;
    padding:12px 13px;
    border:0
}
.premium-home .navigation .navbar .navbar-nav>li>a:hover {
    color:#725200
}
.premium-home .navigation .navbar .navbar-nav>li>a:after {
    display:none
}
.premium-home .navigation .navbar-brand img {
    width:166px!important
}
.premium-home .navigation .navbar-toggle .icon-bar {
    background:#252820
}
.premium-home .navigation .navbar-toggle {
    border:1px solid #ddd;
    border-radius:4px
}
.sp-home {
    margin:0;
    background:white
}
.sp-home a {
    color:inherit;
    text-decoration:none
}
.sp-home a:hover {
    color:inherit
}
.sp-home h1,.sp-home h2,.sp-home h3,.sp-home p {
    margin:0;
    padding:0;
    border:0
}
.sp-home h1,.sp-home h2 {
    font-family:Georgia,'Times New Roman',serif;
    font-weight:400;
    letter-spacing:-1.4px
}
.sp-home h2 {
    font-size:40px;
    line-height:1.18
}
.sp-home h3 {
    font-family:'Manrope',Arial,sans-serif;
    font-weight:600
}
.sp-home button,.sp-home input {
    font:inherit
}
.sp-home button {
    cursor:pointer
}
.sp-home button:focus-visible,.sp-home a:focus-visible,.sp-home input:focus-visible,.sp-home [tabindex]:focus-visible {
    outline:3px solid #ffd700;
    outline-offset:5px
}
.sp-home [hidden] {
    display:none!important
}
.sp-container {
    width:min(1240px,90%);
    margin:0 auto
}
.sp-section {
    padding-top:88px;
    padding-bottom:88px
}
.sp-eyebrow {
    font-family:'DM Sans',sans-serif;
    font-size:10px;
    letter-spacing:2.1px;
    font-weight:700;
    color:#725200;
    margin-bottom:17px;
    text-transform:uppercase;
    line-height:1.5
}
.sp-hero {
    height:570px;
    position:relative;
    background:#262821;
    isolation:isolate;
    overflow:hidden
}
.sp-hero-image {
    position:absolute;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    z-index:-3;
    animation:sp-hero-zoom 14s ease-out both
}
.sp-hero-shade {
    position:absolute;
    inset:0;
    z-index:-2;
    background:linear-gradient(90deg,rgba(15,19,16,.88) 0%,rgba(15,19,16,.6) 42%,rgba(15,19,16,.09) 100%),linear-gradient(0deg,rgba(15,19,16,.2),transparent 50%)
}
.sp-hero-content {
    padding-top:79px;
    color:white
}
.sp-hero .sp-eyebrow {
    color:#ffe45c;
    display:flex;
    gap:12px;
    align-items:center
}
.sp-hero .sp-eyebrow>span {
    width:27px;
    height:1px;
    background:#ffd700
}
.sp-hero h1 {
    font-size:67px;
    line-height:1.09;
    max-width:760px;
    color:white
}
.sp-hero h1 em {
    color:#ffe45c;
    font-weight:400
}
.sp-hero-content>p {
    margin-top:24px;
    color:#e0e0d9;
    font-size:15px;
    line-height:1.8;
    font-weight:400
}
.sp-hero-bottom {
    display:flex;
    gap:46px;
    align-items:center;
    margin-top:48px;
    font-size:10px;
    letter-spacing:1.3px;
    color:#d4d6ce
}
.sp-hero-bottom>a {
    border-bottom:1px solid #ad9a77;
    padding-bottom:7px;
    font-size:11px;
    letter-spacing:0
}
.sp-hero-bottom i {
    margin-left:16px
}
.sp-hero-mark {
    position:absolute;
    right:5%;
    bottom:111px;
    color:#fff;
    letter-spacing:4px;
    font-size:10px;
    line-height:1.8;
    writing-mode:vertical-rl;
    opacity:.75
}
.sp-search-wrap {
    position:relative;
    z-index:3;
    margin-top:-55px
}
.sp-search-panel {
    background:white;
    box-shadow:0 14px 45px #17191612;
    border:1px solid #e9e7e1;
    border-radius:6px;
    padding:0 30px 25px
}
.sp-search-tabs {
    display:flex;
    gap:30px;
    align-items:center;
    border-bottom:1px solid var(--sp-line);
    margin-bottom:22px
}
.sp-search-tabs button,.sp-search-tabs a {
    background:none;
    border:0;
    padding:20px 0 16px;
    font-size:13px;
    color:#555c4e;
    position:relative
}
.sp-search-tabs .active {
    color:#1b1d18;
    font-weight:700
}
.sp-search-tabs .active:after {
    content:'';
    position:absolute;
    bottom:-1px;
    left:0;
    right:0;
    background:#ffd700;
    height:3px
}
.sp-search-tabs a span {
    margin-left:8px;
    color:#725200
}
.sp-search-form {
    display:flex;
    align-items:center;
    gap:25px
}
.sp-search-location {
    flex:1;
    display:flex;
    gap:17px;
    align-items:center;
    min-width:0
}
.sp-search-location>i {
    font-size:21px;
    color:#725200
}
.sp-search-location label {
    width:100%;
    margin:0
}
.sp-search-location label>span {
    font-size:9px;
    letter-spacing:1.6px;
    font-weight:700;
    display:block;
    margin-bottom:5px
}
.sp-search-location input {
    border:0!important;
    padding:0!important;
    margin:0!important;
    box-shadow:none!important;
    background:transparent!important;
    width:100%;
    height:25px!important;
    font-size:14px!important;
    color:#333!important;
    border-radius:0
}
.sp-filter-button {
    background:transparent;
    border:0;
    border-left:1px solid #e4e4df;
    padding:14px 8px 14px 24px;
    white-space:nowrap;
    color:#55584f
}
.sp-filter-button i {
    margin-right:8px
}
.sp-button {
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:15px;
    font-size:13px;
    font-weight:650;
    padding:19px 27px;
    border:1px solid transparent;
    border-radius:3px;
    white-space:nowrap;
    transition:background .2s,transform .2s
}
.sp-button-gold {
    background:linear-gradient(110deg,#ffd700 0%,#ffeb7a 48%,#ffd700 100%);
    color:#171916!important;
    border-color:#e4bd00;
    box-shadow:0 3px 14px #ffd70026
}
.sp-button-gold:hover {
    background:linear-gradient(110deg,#ffe45c,#fff0a1,#ffe45c);
    box-shadow:0 5px 20px #ffd70045;
    transform:translateY(-2px)
}
.sp-popular-searches {
    display:flex;
    align-items:center;
    gap:23px;
    padding:19px 5px 0;
    font-size:11px;
    color:#555c4e;
    flex-wrap:wrap
}
.sp-popular-searches>span {
    color:#555c4e
}
.sp-popular-searches>a:hover {
    color:#725200
}
.sp-section-heading {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:25px;
    margin-bottom:34px
}
.sp-section-heading p {
    font-size:13px;
    color:#555c4e;
    line-height:1.8;
    margin-top:13px
}
.sp-text-link {
    font-size:12px;
    font-weight:600;
    display:inline-flex;
    align-items:center;
    gap:22px;
    padding-bottom:7px;
    white-space:nowrap;
    border-bottom:1px solid #d6a900;
    color:#353a2e!important
}
.sp-text-link:hover {
    color:#725200!important
}
.sp-text-link>span {
    font-size:19px;
    color:#725200
}
.sp-spotlight {
    border:1px solid #e4e4dc;
    border-radius:5px;
    overflow:hidden;
    background:#f7f7f2;
    position:relative
}
.sp-spotlight-slide {
    display:grid;
    grid-template-columns:1.12fr 1fr;
    animation:sp-slide-in .6s ease both
}
.sp-spotlight-photo {
    position:relative;
    min-height:350px;
    overflow:hidden;
    background:#dedfd7
}
.sp-spotlight-photo>img {
    width:100%;
    height:100%;
    object-fit:cover;
    position:absolute;
    inset:0;
    transition:transform 6s
}
.is-active .sp-spotlight-photo>img {
    animation:sp-photo-drift 8s ease-out both
}
.sp-photo-label {
    position:absolute;
    left:23px;
    top:23px;
    font-size:9px;
    letter-spacing:1.4px;
    background:#fffef1ed;
    border-radius:2px;
    padding:9px 13px;
    color:#363a2c;
    font-weight:600
}
.sp-photo-label>span {
    margin:0 9px;
    color:#725200
}
.sp-spotlight-copy {
    padding:35px 38px 74px;
    min-width:0
}
.sp-spotlight-copy .sp-eyebrow {
    font-size:9px;
    margin-bottom:13px
}
.sp-spotlight-copy h3 {
    font-family:Georgia,serif;
    font-weight:400;
    font-size:29px;
    line-height:1.2;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    letter-spacing:-.6px
}
.sp-spotlight-copy>p {
    margin-top:13px;
    font-size:12px;
    line-height:1.6;
    color:#555c4e
}
.sp-spotlight-copy>p>i {
    margin-right:6px;
    color:#725200
}
.sp-specs {
    display:flex;
    gap:19px;
    flex-wrap:wrap;
    color:#555c4e;
    font-size:11px
}
.sp-specs i {
    margin-right:5px;
    color:#555c4e
}
.sp-spotlight .sp-specs {
    margin-top:22px
}
.sp-spotlight-price {
    font-size:24px;
    font-family:'Manrope',sans-serif;
    font-weight:700;
    margin:21px 0 16px
}
.sp-spotlight-price small {
    font-size:12px;
    font-weight:400;
    color:#555c4e
}
.sp-spotlight-controls {
    position:absolute;
    bottom:18px;
    left:56%;
    right:25px;
    display:flex;
    gap:9px;
    align-items:center;
    z-index:2
}
.sp-spotlight-controls>span {
    font-size:10px;
    letter-spacing:1px;
    color:#555c4e;
    white-space:nowrap;
    margin-right:7px
}
.sp-spotlight-controls button,.sp-rail-controls button {
    width:32px;
    height:32px;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    border:1px solid #dcdfd3;
    border-radius:50%;
    background:transparent;
    font-size:16px;
    color:#3f4435
}
.sp-spotlight-controls button:hover,.sp-rail-controls button:hover {
    background:#e8e3d5;
    border-color:#d6a900
}
.sp-slide-dots {
    display:flex;
    gap:5px;
    flex:1
}
.sp-slide-dots button {
    height:5px;
    width:14px;
    border:0;
    border-radius:3px;
    background:#dddcd3;
    padding:0
}
.sp-slide-dots button.active {
    width:27px;
    background:#ffd700
}
.sp-spotlight-controls #sp-slide-pause {
    font-size:10px;
    border:0
}
.sp-listing-toolbar {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin:32px 0 20px
}
.sp-pill-group {
    display:flex;
    gap:8px
}
.sp-pill-group button {
    border:1px solid #e4e5dc;
    border-radius:30px;
    background:#fff;
    padding:9px 19px;
    font-size:11px;
    color:#555c4e
}
.sp-pill-group button.active {
    background:#22271e;
    border-color:#22271e;
    color:#fff
}
.sp-rail-controls {
    display:flex;
    gap:9px
}
.sp-property-rail {
    display:flex;
    gap:22px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:thin;
    scrollbar-color:#d6a900 #f5f5f0;
    padding:0 1px 15px
}
.sp-property-card {
    flex:0 0 calc((100% - 44px)/3);
    min-width:0;
    border:1px solid #e6e7df;
    border-radius:4px;
    overflow:hidden;
    scroll-snap-align:start;
    background:white;
    transition:border-color .2s
}
.sp-property-card:hover {
    border-color:#ffd700
}
.sp-card-image {
    height:215px;
    position:relative;
    overflow:hidden;
    background:#efeee7
}
.sp-card-image>img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s
}
.sp-property-card:hover .sp-card-image>img {
    transform:scale(1.045)
}
.sp-card-badge {
    position:absolute;
    top:15px;
    left:15px;
    background:#fffcf4eb;
    padding:7px 10px;
    border-radius:2px;
    font-size:8px;
    letter-spacing:1px;
    font-weight:600
}
.sp-card-arrow {
    position:absolute;
    bottom:14px;
    right:14px;
    width:30px;
    height:30px;
    background:#ffffffed;
    border-radius:50%;
    display:grid;
    place-items:center;
    font-size:17px
}
.sp-card-copy {
    padding:22px
}
.sp-card-price {
    font-family:'Manrope',sans-serif;
    font-size:21px;
    font-weight:750;
    margin-bottom:10px
}
.sp-card-price small {
    font-size:11px;
    color:#555c4e;
    font-weight:400
}
.sp-card-copy h3 {
    font-size:14px;
    line-height:1.6;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.sp-card-copy>p {
    font-size:11px;
    margin-top:5px;
    color:#555c4e;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.sp-card-copy .sp-specs {
    margin-top:20px;
    padding-top:15px;
    border-top:1px solid #edeee8
}
.sp-empty {
    padding:50px;
    background:#f6f5ef
}
.sp-empty p {
    margin:15px 0
}
.sp-lifestyle-section {
    background:#f6f6f1
}
.sp-lifestyle-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px
}
.sp-lifestyle-card {
    height:365px;
    position:relative;
    overflow:hidden;
    background:#36392f;
    border-radius:4px;
    color:white!important;
    isolation:isolate
}
.sp-lifestyle-card:after {
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,#11160fea,transparent 95%);
    z-index:-1
}
.sp-lifestyle-card>img {
    position:absolute;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:-2;
    transition:transform .7s
}
.sp-lifestyle-card:hover>img {
    transform:scale(1.05)
}
.sp-lifestyle-card>div {
    position:absolute;
    bottom:29px;
    left:26px;
    right:38px
}
.sp-lifestyle-card div>span {
    font-size:9px;
    letter-spacing:1.5px;
    color:#ffe45c
}
.sp-lifestyle-card h3 {
    font-family:Georgia,serif;
    font-weight:400;
    font-size:28px;
    line-height:1.2;
    margin-top:13px;
    letter-spacing:-.5px
}
.sp-lifestyle-card p {
    font-size:11px;
    margin-top:12px;
    color:#d4d6ca;
    line-height:1.7
}
.sp-lifestyle-card>b {
    position:absolute;
    right:22px;
    bottom:27px;
    font-size:22px;
    color:#ffe45c;
    font-weight:400
}
.sp-destination-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:50px
}
.sp-destination-grid>a {
    display:flex;
    gap:20px;
    align-items:center;
    border-top:1px solid var(--sp-line);
    padding:26px 0;
    transition:padding .2s
}
.sp-destination-grid>a:hover {
    padding-left:10px
}
.sp-destination-number {
    font-size:11px;
    color:#725200;
    letter-spacing:1px
}
.sp-destination-grid h3 {
    font-size:17px;
    letter-spacing:-.4px
}
.sp-destination-grid p {
    font-size:12px;
    color:#555c4e;
    margin-top:7px
}
.sp-destination-grid a>span:last-child {
    margin-left:auto;
    font-size:22px;
    color:#725200
}
.sp-tools-section {
    background:#f5f5ef
}
.sp-tools-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px;
    align-items:center
}
.sp-tools-intro>p {
    color:#555c4e;
    font-size:13px;
    line-height:1.9;
    max-width:390px;
    margin-top:23px;
    margin-bottom:22px
}
.sp-tool-link {
    display:flex;
    gap:20px;
    align-items:center;
    border-top:1px solid #dddfd2;
    padding:22px 0
}
.sp-tool-link>i {
    color:#725200;
    font-size:20px;
    width:26px
}
.sp-tool-link h3 {
    font-size:14px
}
.sp-tool-link p {
    font-size:11px;
    color:#555c4e;
    margin-top:6px;
    line-height:1.6
}
.sp-tool-link>span {
    margin-left:auto;
    color:#725200;
    font-size:20px
}
.sp-calculator {
    padding:32px;
    background:#fff;
    border:1px solid #e3e5d8;
    border-radius:5px;
    box-shadow:0 8px 30px #24291b05
}
.sp-calculator-heading {
    display:flex;
    gap:20px;
    justify-content:space-between;
    align-items:center
}
.sp-calculator-heading .sp-eyebrow {
    font-size:9px;
    margin-bottom:9px
}
.sp-calculator h3 {
    font-size:18px;
    line-height:1.6;
    letter-spacing:-.5px
}
.sp-calculator-heading>i {
    font-size:26px;
    color:#725200
}
.sp-calc-fields {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:19px;
    margin-top:24px
}
.sp-calc-fields label {
    font-size:11px;
    color:#555c4e;
    font-weight:400;
    margin:0
}
.sp-calc-fields input {
    width:100%;
    margin:8px 0 0!important;
    border:1px solid #dedfd5!important;
    border-radius:3px!important;
    background:#fbfbf7!important;
    height:43px!important;
    font-size:14px!important;
    box-shadow:none!important;
    color:#282d21!important;
    padding:10px 12px!important
}
.sp-calc-result {
    margin:27px 0 15px;
    padding:20px 0;
    border-top:1px solid #e8e9e1;
    border-bottom:1px solid #e8e9e1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px
}
.sp-calc-result>span {
    font-size:11px;
    color:#555c4e;
    max-width:100px;
    line-height:1.8
}
.sp-calc-result output {
    font-family:'Manrope',sans-serif;
    font-size:30px;
    letter-spacing:-1px;
    font-weight:700;
    color:#7b6134;
    padding:0
}
.sp-calculator .sp-calc-note {
    font-size:10px;
    color:#555c4e;
    line-height:1.8;
    margin-bottom:18px
}
.sp-calculator .sp-text-link {
    font-size:10px;
    gap:12px
}
.sp-agent-cta {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:#1c211a;
    border-radius:5px;
    color:white;
    padding:51px 55px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px
}
.sp-agent-cta .sp-eyebrow {
    color:#ffe45c;
    font-size:9px
}
.sp-agent-cta h2 {
    font-size:39px;
    line-height:1.2;
    color:#faf9f3
}
.sp-agent-cta p {
    font-size:12px;
    line-height:1.9;
    color:#aeb5a5;
    margin-top:17px
}
.sp-cta-orbit {
    position:absolute;
    z-index:-1;
    right:70px;
    top:-160px;
    width:520px;
    height:520px;
    border:1px solid #ffd70030;
    border-radius:50%;
    animation:sp-orbit 35s linear infinite
}
.sp-cta-orbit:before,.sp-cta-orbit:after {
    content:'';
    position:absolute;
    border:1px solid #ffd70025;
    border-radius:50%;
    inset:38px
}
.sp-cta-orbit:after {
    inset:85px
}
/* Match the legacy footer selector specificity so inherited gold/black rules cannot win. */
.premium-home .seo_footer_container {
    min-width:0!important;
    background:#111310;
}
.premium-home .seo_footer {
    float:none;
    background:#111310;
    color:#fff;
    border-top:2px solid #ffd700;
    padding:35px 0;
}
.premium-home .seo_footer_listing a {
    color:#f3f4ef;
    font-size:12px;
    font-weight:400;
    line-height:1.7;
}
.premium-home .seo_footer_listing a:hover,
.premium-home .seo_footer_listing a:focus-visible {
    color:#ffe45c;
    text-decoration:underline;
}
.premium-home #seo_footer_tab .nav-tabs {
    border-bottom:1px solid #41463c!important;
}
.premium-home #seo_footer_tab ul li a {
    color:#fff;
    font-size:12px;
    font-weight:500;
    border:1px solid transparent;
    border-radius:3px 3px 0 0;
}
.premium-home #seo_footer_tab ul li a:hover,
.premium-home #seo_footer_tab ul li a:focus,
.premium-home #seo_footer_tab ul li.active a {
    color:#ffe45c;
    background:#25291f;
    border-color:#5a604f;
    border-bottom-color:#ffd700;
}
.premium-home #page-footer {
    height:auto;
    background:#0d0f0c;
    color:#fff;
}
.premium-home #page-footer .inner #footer-main {
    background:#111310;
    color:#fff;
    border-top:1px solid #353b2d;
    padding:50px 0 45px;
}
.premium-home #page-footer #footer-main p,
.premium-home #page-footer #footer-main address,
.premium-home #page-footer #footer-main strong,
.premium-home #page-footer #footer-main a {
    color:#fff;
    font-size:13px;
    line-height:1.9;
}
.premium-home #page-footer #footer-main .title {
    color:#fff;
    font-family:'Manrope',sans-serif;
    font-size:13px;
    font-weight:700;
    margin-bottom:23px;
}
.premium-home #page-footer #footer-main a:hover,
.premium-home #page-footer #footer-main a:focus-visible,
.premium-home #page-footer #footer-main .link-arrow:after {
    color:#ffe45c;
}
.premium-home #page-footer #footer-main .list-links li {
    padding-bottom:5px;
}
.premium-home #page-footer .sp-footer-brand {
    display:inline-block;
    margin:0 0 22px;
}
.premium-home #page-footer .sp-footer-brand img {
    display:block;
    max-width:100%;
    height:auto;
}
.premium-home #page-footer .inner #footer-copyright {
    background:#0b0d0a;
    color:#fff;
    font-size:12px;
    border-top:1px solid #353b2d;
    padding:19px 0;
}
.premium-home #page-footer .inner #footer-copyright a {
    color:#ffe45c;
}
.premium-home #footer-thumbnails {
    display:none;
}
.sp-reveal {
    opacity:1
}
.sp-motion .sp-reveal {
    opacity:0;
    transform:translateY(22px);
    transition:opacity .8s ease,transform .8s ease
}
.sp-motion .sp-reveal.is-visible {
    opacity:1;
    transform:none
}
@keyframes sp-hero-zoom {
    from {
        transform:scale(1.055)
    }
    to {
        transform:scale(1)
    }
}
@keyframes sp-photo-drift {
    from {
        transform:scale(1)
    }
    to {
        transform:scale(1.035)
    }
}
@keyframes sp-slide-in {
    from {
        opacity:.25;
        transform:translateX(12px)
    }
    to {
        opacity:1;
        transform:none
    }
}
@keyframes sp-orbit {
    to {
        transform:rotate(360deg)
    }
}
@media(min-width:1500px) {
    .sp-hero {
        height:620px
    }
    .sp-hero-content {
        padding-top:100px
    }
    .sp-hero h1 {
        font-size:76px
    }
}
@media(max-width:1100px) {
    .premium-home .navigation .navbar .navbar-nav>li>a {
        padding-left:8px;
        padding-right:8px;
        font-size:11px
    }
    .premium-home .navigation .navbar-brand img {
        width:145px!important
    }
    .sp-hero h1 {
        font-size:59px
    }
    .sp-tools-grid {
        gap:40px
    }
    .sp-section {
        padding-top:68px;
        padding-bottom:68px
    }
    .sp-home h2 {
        font-size:34px
    }
    .sp-spotlight-copy {
        padding:30px 25px 75px
    }
    .sp-spotlight-copy h3 {
        font-size:25px
    }
    .sp-lifestyle-card h3 {
        font-size:24px
    }
    .sp-lifestyle-card>div {
        left:22px
    }
    .sp-card-image {
        height:185px
    }
    .sp-card-copy {
        padding:18px
    }
    .sp-specs {
        gap:12px
    }
    .sp-property-card {
        flex-basis:calc((100% - 22px)/2.5)
    }
    .sp-search-form {
        gap:15px
    }
    .sp-search-panel {
        padding-left:25px;
        padding-right:25px
    }
    .sp-filter-button {
        font-size:12px;
        padding-left:15px
    }
    .sp-button {
        padding:18px 22px
    }
}
@media(max-width:767px) {
    .premium-home .navigation .navbar {
        padding:17px 0
    }
    .premium-home .navigation .navbar .collapse {
        display:none!important
    }
    .premium-home .navigation .navbar .collapse.in {
        display:block!important
    }
    .premium-home .navigation .navbar-collapse {
        width:100%;
        border:0;
        margin:0;
        padding:10px 0 0
    }
    .premium-home .navigation .navbar .navbar-nav {
        float:none;
        margin:0
    }
    .premium-home .navigation .navbar .navbar-nav>li>a {
        font-size:13px;
        padding:11px 5px
    }
    .premium-home .navbar-header {
        width:100%
    }
    .premium-home .navigation .navbar-toggle {
        margin:0
    }
    .premium-home .navigation .navbar-brand {
        padding:3px 0!important
    }
    .premium-home .secondary-navigation {
        height:30px
    }
    .sp-container {
        width:90%
    }
    .sp-hero {
        height:510px
    }
    .sp-hero-content {
        padding-top:60px
    }
    .sp-hero h1 {
        font-size:48px;
        letter-spacing:-1.7px
    }
    .sp-hero-content>p {
        font-size:13px;
        margin-top:23px
    }
    .sp-hero .sp-eyebrow {
        font-size:8px;
        letter-spacing:1.6px
    }
    .sp-hero-shade {
        background:linear-gradient(90deg,#10170ee0,#10170e65),linear-gradient(0deg,#11180b55,transparent)
    }
    .sp-hero-bottom {
        margin-top:30px;
        gap:20px
    }
    .sp-hero-bottom>span {
        display:none
    }
    .sp-hero-mark {
        display:none
    }
    .sp-search-wrap {
        margin-top:-61px
    }
    .sp-search-panel {
        padding:0 20px 20px
    }
    .sp-search-tabs {
        gap:23px;
        margin-bottom:19px
    }
    .sp-search-tabs button,.sp-search-tabs a {
        font-size:11px;
        padding-top:18px
    }
    .sp-search-form {
        flex-wrap:wrap;
        gap:17px 10px
    }
    .sp-search-location {
        flex-basis:100%;
        padding-bottom:18px;
        border-bottom:1px solid #e5e6dc
    }
    .sp-search-location input {
        font-size:12px!important
    }
    .sp-filter-button {
        border:0;
        padding:12px 0;
        font-size:11px;
        flex:1;
        text-align:left
    }
    .sp-search-form>.sp-button {
        font-size:12px;
        padding:15px 20px
    }
    .sp-popular-searches {
        gap:13px 18px;
        padding-top:18px;
        font-size:10px
    }
    .sp-popular-searches>span {
        flex-basis:100%
    }
    .sp-section {
        padding:54px 0
    }
    .sp-section-heading {
        display:block;
        margin-bottom:26px
    }
    .sp-section-heading>.sp-text-link {
        margin-top:18px
    }
    .sp-home h2 {
        font-size:32px;
        letter-spacing:-.8px
    }
    .sp-eyebrow {
        font-size:8px;
        letter-spacing:1.7px;
        margin-bottom:12px
    }
    .sp-section-heading p {
        font-size:12px;
        margin-top:12px
    }
    .sp-spotlight-slide {
        grid-template-columns:1fr
    }
    .sp-spotlight-photo {
        min-height:240px
    }
    .sp-spotlight-copy {
        padding:25px 23px 69px
    }
    .sp-spotlight-copy h3 {
        font-size:26px
    }
    .sp-spotlight-copy>p {
        min-height:0
    }
    .sp-spotlight-controls {
        left:23px;
        right:23px;
        bottom:17px
    }
    .sp-spotlight-price {
        margin:19px 0 13px;
        font-size:24px
    }
    .sp-spotlight .sp-specs {
        margin-top:16px
    }
    .sp-photo-label {
        top:16px;
        left:16px;
        font-size:8px
    }
    .sp-listing-toolbar {
        margin-top:24px;
        gap:8px
    }
    .sp-pill-group {
        gap:5px
    }
    .sp-pill-group button {
        padding:8px 12px;
        font-size:10px
    }
    .sp-rail-controls {
        gap:5px
    }
    .sp-rail-controls button {
        width:28px;
        height:28px
    }
    .sp-property-rail {
        gap:15px
    }
    .sp-property-card {
        flex-basis:83%
    }
    .sp-card-image {
        height:215px
    }
    .sp-card-copy {
        padding:20px
    }
    .sp-lifestyle-grid {
        grid-template-columns:1fr;
        gap:17px
    }
    .sp-lifestyle-card {
        height:280px
    }
    .sp-lifestyle-card>div {
        bottom:25px
    }
    .sp-lifestyle-card h3 {
        font-size:29px
    }
    .sp-destination-grid {
        grid-template-columns:1fr
    }
    .sp-destination-grid>a {
        padding:23px 0
    }
    .sp-destination-grid h3 {
        font-size:16px
    }
    .sp-tools-grid {
        grid-template-columns:1fr;
        gap:30px
    }
    .sp-tools-intro>p {
        font-size:12px
    }
    .sp-calculator {
        padding:25px 22px
    }
    .sp-calculator h3 {
        font-size:17px
    }
    .sp-calc-fields {
        gap:17px 13px
    }
    .sp-calc-fields input {
        font-size:13px!important
    }
    .sp-calc-result output {
        font-size:27px
    }
    .sp-agent-cta {
        padding:35px 25px;
        flex-direction:column;
        align-items:flex-start;
        gap:26px
    }
    .sp-agent-cta h2 {
        font-size:33px
    }
    .sp-agent-cta p br {
        display:none
    }
    .sp-cta-orbit {
        right:-180px
    }
    .premium-home #page-footer #footer-main .row>div {
        margin-bottom:25px
    }
    .premium-home #page-footer #footer-main {
        padding:35px 0 10px
    }
    .premium-home .seo_footer {
        padding-top:24px
    }
    .premium-home #footer-copyright .container {
        gap:20px
    }
    .sp-empty {
        padding:30px
    }
}
@media(prefers-reduced-motion:reduce) {
    .sp-home *, .sp-home *:before, .sp-home *:after {
        animation:none!important;
        transition:none!important;
        scroll-behavior:auto!important
    }
    .sp-motion .sp-reveal {
        opacity:1;
        transform:none
    }
}
.sp-icon-library {
    position:absolute;
    width:0;
    height:0;
    overflow:hidden
}
.sp-home .sp-icon {
    display:inline-block;
    width:1.15em;
    height:1.15em;
    vertical-align:-.18em;
    fill:none;
    stroke:currentColor;
    stroke-width:1.55;
    stroke-linecap:round;
    stroke-linejoin:round;
    flex-shrink:0
}
.sp-hero-bottom .sp-icon {
    margin-left:14px
}
.sp-search-location>.sp-icon {
    width:22px;
    height:22px;
    color:#725200
}
.sp-filter-button>.sp-icon {
    margin-right:7px
}
.sp-specs .sp-icon {
    margin-right:5px;
    color:#555c4e
}
.sp-spotlight-copy>p>.sp-icon {
    margin-right:6px;
    color:#725200
}
.sp-tool-link>.sp-icon {
    width:24px;
    height:24px;
    color:#725200
}
.sp-calculator-heading>.sp-icon {
    width:28px;
    height:28px;
    color:#725200
}
.sp-home .sp-property-card a:focus-visible {
    display:block;
    outline-offset:-3px
}

@media (max-width:767px) {
    .premium-home .navigation .navbar .navbar-toggle {
        position:relative;
        width:36px;
        height:30px;
        padding:5px 7px;
        border-radius:3px;
    }
    .premium-home .navigation .secondary-navigation .user-area {
        float:right;
    }
}

/* Bright gold belongs on dark surfaces and fills; dark ink keeps light surfaces legible. */
.premium-home .secondary-navigation .user-area a {
    color:#ffe45c;
}
.sp-search-location input::placeholder {
    color:#5b6255;
    opacity:1;
}
.sp-hero h1,
.sp-hero-content>p,
.sp-hero .sp-eyebrow,
.sp-hero-bottom {
    text-shadow:0 2px 14px #0009;
}
.sp-lifestyle-card:after {
    background:linear-gradient(0deg,#0b1008fa 0%,#0b1008d9 32%,#0b100855 65%,transparent 100%);
}
.sp-lifestyle-card p {
    color:#fff;
}
.sp-lifestyle-card div>span {
    color:#ffe45c;
}
.sp-photo-label>span {
    color:#725200;
}
.sp-agent-cta p {
    color:#f0f2e9;
}
.sp-home button:focus-visible,
.sp-home a:focus-visible,
.sp-home input:focus-visible,
.sp-home [tabindex]:focus-visible {
    outline:3px solid #795b00;
    box-shadow:0 0 0 2px #fff;
}
.premium-home #page-footer a:focus-visible,
.premium-home .seo_footer a:focus-visible {
    outline:2px solid #ffe45c;
    outline-offset:5px;
}
