*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f4ef;color:#202522;font-family:'DM Sans',sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.topbar{height:86px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;background:#101513;color:#f7f3eb;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px;font-family:'Playfair Display',serif;letter-spacing:2px;font-size:17px}.brand small{display:block;font:9px 'DM Sans';letter-spacing:2.2px;color:#b9a889;margin-top:3px}.brand-mark{width:39px;height:39px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font:25px 'Playfair Display';border-radius:50%}.nav{display:flex;align-items:center;gap:30px;font-size:12px;letter-spacing:1px;text-transform:uppercase}.nav a{opacity:.86}.nav a:hover{color:var(--gold)}.nav-cta{border:1px solid var(--gold);padding:12px 18px;color:var(--gold)}.menu-toggle{display:none;background:none;color:white;border:0;font-size:24px}.hero{min-height:690px;display:flex;align-items:center;position:relative;background:#1b2420 center/cover no-repeat;color:#fff;padding:8vw}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,15,12,.82),rgba(8,15,12,.24)),linear-gradient(0deg,rgba(0,0,0,.3),transparent)}.hero-content{position:relative;max-width:720px;animation:rise .9s ease both}.eyebrow{text-transform:uppercase;letter-spacing:3px;color:var(--gold);font-size:11px;font-weight:700}.hero h1{font:clamp(48px,7vw,88px)/1.02 'Playfair Display',serif;margin:20px 0}.hero p{max-width:530px;color:#e7e4dd;font-size:17px}.hero-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.btn{border:0;padding:15px 23px;display:inline-flex;gap:20px;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:1.2px;font-size:11px;font-weight:700;cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-3px);filter:brightness(1.08)}.btn-gold{background:var(--gold);color:#171914}.btn-outline{border:1px solid #e8e1d3;color:#fff;background:transparent}.section{padding:88px 7vw}.section.dark{background:#101513;color:#f7f3eb}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:36px}.section h2,.page-hero h1{font:clamp(34px,4vw,54px)/1.1 'Playfair Display',serif;margin:10px 0}.section-intro{max-width:570px;color:#747a73}.dark .section-intro{color:#b7b9b3}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.property-card{background:#fff;box-shadow:0 12px 38px #1b21130d;transition:.3s;overflow:hidden}.property-card:hover{transform:translateY(-7px);box-shadow:0 20px 50px #1b211322}.property-image{height:245px;background:#d8d8d1 center/cover;position:relative}.status{position:absolute;top:16px;left:16px;background:#101513;color:#fff;padding:7px 11px;font-size:9px;letter-spacing:1.4px;text-transform:uppercase}.property-info{padding:22px}.price{font:25px 'Playfair Display';color:#92784b}.property-info h3{font:23px 'Playfair Display';margin:5px 0}.address{color:#85877f;font-size:12px}.specs{display:flex;gap:18px;border-top:1px solid #eee;padding-top:15px;margin-top:17px;color:#5c635c;font-size:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.split-image{min-height:480px;background:center/cover}.quote{font:clamp(25px,3vw,38px)/1.35 'Playfair Display';color:#f3eee4}.gold-line{height:1px;width:70px;background:var(--gold);margin:22px 0}.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:36px}.feature{border-top:1px solid #d9d5ca;padding-top:22px}.feature b{font:22px 'Playfair Display'}.feature p{color:#777;font-size:14px}.cta-band{background:#d9cfbd;padding:55px 7vw;display:flex;justify-content:space-between;align-items:center;gap:20px}.cta-band h2{font:36px 'Playfair Display';margin:0}.footer{background:#101513;color:#eae7df;padding:55px 7vw;display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer>div{display:flex;flex-direction:column;gap:10px}.footer a,.footer p{font-size:13px;color:#b8b9b1}.footer b{color:var(--gold);font-size:11px;letter-spacing:2px;text-transform:uppercase}.copyright{grid-column:1/-1;border-top:1px solid #343b35;padding-top:20px;font-size:11px!important;color:#858b83!important}.page-hero{padding:75px 7vw;background:#101513;color:#f7f3eb}.page-hero p{color:#b8b9b1}.content{max-width:1100px;margin:auto;padding:65px 24px}.form-card,.panel{background:#fff;padding:30px;box-shadow:0 12px 45px #0000000b}.form-card label,.admin-form label{display:block;font-size:12px;font-weight:600;color:#555;margin:0 0 16px}.form-card input,.form-card textarea,.form-card select,.admin-form input,.admin-form textarea,.admin-form select{display:block;width:100%;border:1px solid #deded8;padding:13px;margin-top:7px;font:14px 'DM Sans';background:#fff;color:#222}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.consent{display:flex!important;align-items:center;gap:9px}.consent input{width:auto!important}.muted{color:#8a8d86;font-size:11px}.hp{position:absolute;left:-9999px}.calculator{display:grid;grid-template-columns:1fr 1fr;gap:25px}.calc-result{background:#101513;color:#fff;padding:30px}.calc-result strong{display:block;font:42px 'Playfair Display';color:var(--gold)}.calc-result p{color:#c2c3bc}.calc-table{width:100%;border-collapse:collapse;margin-top:18px}.calc-table td{padding:10px 0;border-bottom:1px solid #343b35;font-size:13px}.calc-table td:last-child{text-align:right}.filterbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}.filterbar input,.filterbar select{padding:12px;border:1px solid #ddd;background:white}.detail-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:35px}.gallery-main{width:100%;height:440px;object-fit:cover}.detail-thumbs{display:flex;gap:10px;margin-top:10px;overflow:auto}.detail-thumbs img{width:110px;height:80px;object-fit:cover;cursor:pointer}.admin-wrap{min-height:100vh;background:#f1f1ec;padding:40px 5vw}.admin-nav{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0}.admin-nav a{padding:10px 15px;background:#101513;color:white;font-size:12px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stat{background:white;padding:22px}.stat strong{display:block;font:32px 'Playfair Display'}.notice{padding:13px 16px;background:#e8efe7;margin-bottom:18px}.notice.error{background:#f7e6e3}.table{width:100%;border-collapse:collapse;background:white}.table th,.table td{text-align:left;padding:12px;border-bottom:1px solid #eee;font-size:12px}.table th{background:#f5f3ee}.reveal{opacity:0;transform:translateY(20px);transition:.7s}.reveal.visible{opacity:1;transform:none}@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@media(max-width:850px){.nav{display:none;position:absolute;top:86px;left:0;right:0;background:#101513;padding:25px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-toggle{display:block}.property-grid{grid-template-columns:repeat(2,1fr)}.split,.calculator,.detail-grid{grid-template-columns:1fr}.footer{grid-template-columns:1fr 1fr}.feature-row{grid-template-columns:1fr}.hero{min-height:600px}}@media(max-width:560px){.property-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.section{padding:60px 6vw}.section-head{display:block}.footer{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr}.hero h1{font-size:49px}.cta-band{display:block}.cta-band .btn{margin-top:20px}}
/* Client testimonials */
.testimonials-section{background:#f6f4ef;color:#202522}
.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:22px;margin-top:32px}
.testimonial-card{background:#fff;border:1px solid #e5dfd3;border-radius:14px;padding:28px;box-shadow:0 12px 35px rgba(25,30,25,.06)}
.testimonial-stars{color:#b99a66;letter-spacing:3px;font-size:19px;margin-bottom:16px}
.testimonial-card blockquote{margin:0 0 24px;color:#454b45;line-height:1.8}
.testimonial-client{display:flex;flex-direction:column;gap:4px;border-top:1px solid #eee8dd;padding-top:16px}
.testimonial-client small{color:#777}
.admin-wrap .btn-outline{color:#202522!important;border-color:#b99a66!important;background:#fff!important;}


/* Separate rotating client testimonial window */
.testimonials-section {
 background: #eae7df;
 color: #202522;
 padding-top: 75px;
 padding-bottom: 75px;
}
.testimonial-window {
 max-width: 920px;
 margin: 0 auto;
 padding: clamp(28px,5vw,58px);
 text-align: center;
 color: #f6f3ed;
 background: linear-gradient(145deg,#17251f,#26382e);
 border: 1px solid rgba(185,154,102,.65);
 border-radius: 20px;
 box-shadow: 0 22px 65px rgba(20,30,24,.18);
}
.testimonial-window h2 {
 color: #f6f3ed;
 margin: 10px 0 30px;
}
.testimonial-window .eyebrow { color: #d0b47d; }
.testimonial-slide {
 max-width: 720px;
 margin: 0 auto;
 padding: 20px 10px 26px;
 animation: testimonialFade .45s ease;
}
.testimonial-slide[hidden] { display: none !important; }
.testimonial-slide blockquote {
 margin: 0 auto 28px;
 color: #f6f3ed;
 font-family: Georgia,serif;
 font-size: clamp(18px,2.5vw,25px);
 line-height: 1.75;
}
.testimonial-slide .testimonial-client {
 align-items: center;
 border-top: 1px solid rgba(255,255,255,.18);
 padding-top: 20px;
 color: #fff;
}
.testimonial-slide .testimonial-client small { color: #d0c9bb; }
.testimonial-slide .testimonial-stars { color: #d4b477; }
.testimonial-controls {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 22px;
 margin: 12px 0 28px;
}
.testimonial-arrow {
 width: 42px;
 height: 42px;
 border: 1px solid #b99a66;
 border-radius: 50%;
 background: transparent;
 color: #f6f3ed;
 font-size: 27px;
 line-height: 1;
 cursor: pointer;
}
.testimonial-arrow:hover { background: #b99a66; color: #17251f; }
.testimonial-dots { display: flex; gap: 10px; align-items: center; }
.testimonial-dot {
 width: 9px;
 height: 9px;
 padding: 0;
 border: 0;
 border-radius: 50%;
 background: #77847b;
 cursor: pointer;
}
.testimonial-dot.active { background: #d4b477; transform: scale(1.35); }
.testimonial-submit-link { display: inline-flex; margin-top: 4px; }
.testimonial-form-window {
 max-width: 760px;
 margin: 30px auto 70px;
 padding: clamp(22px,4vw,40px);
 background: #f6f4ef;
 color: #202522;
 border: 1px solid #e5dfd3;
 border-radius: 16px;
 box-shadow: 0 12px 35px rgba(25,30,25,.07);
}
.testimonial-form-window label {
 display: block;
 margin: 16px 0;
 font-weight: 600;
}
.testimonial-form-window input,
.testimonial-form-window textarea,
.testimonial-form-window select {
 display: block;
 width: 100%;
 box-sizing: border-box;
 margin-top: 7px;
 padding: 12px 14px;
 border: 1px solid #d5d0c5;
 border-radius: 7px;
 background: #fff;
 color: #202522;
 font: inherit;
}
.testimonial-form-window textarea { min-height: 150px; resize: vertical; }
.testimonial-form-window .notice {
 padding: 13px 16px;
 margin: 15px 0;
 border-radius: 7px;
 background: #e4eee5;
 color: #24432c;
}
.testimonial-form-window .notice.error { background: #f8e7e4; color: #842e25; }
@keyframes testimonialFade {
 from { opacity: .35; transform: translateY(7px); }
 to { opacity: 1; transform: translateY(0); }
}
@media(max-width:600px) {
 .testimonial-window { padding: 25px 18px; }
 .testimonial-slide blockquote { font-size: 18px; }
}
@media(prefers-reduced-motion:reduce) {
 .testimonial-slide { animation: none; }
}


/* Distinct homepage sections and centered testimonial action row */
.path-forward-section {
 background: #f6f4ef;
 color: #202522;
}
.testimonials-section {
 background: #e5dfd3;
 color: #202522;
}
.testimonial-actions {
 display: flex;
 align-items: center;
 justify-content: center;
 flex-wrap: wrap;
 gap: 18px;
 margin: 12px auto 0;
}
.testimonial-actions .testimonial-controls {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 16px;
 margin: 0;
}
.testimonial-actions .testimonial-submit-link {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 margin: 0;
 white-space: nowrap;
}
@media(max-width:600px) {
 .testimonial-actions { gap: 14px; }
}


/* Darker testimonial presentation and centered controls */
.testimonials-section {
    background: #111a15 !important;
    color: #f6f3ed !important;
}
.testimonial-window {
    background: linear-gradient(145deg, #080e0b, #14231a) !important;
    border-color: #b99a66 !important;
    color: #f6f3ed !important;
}
.testimonial-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
    width: 100%;
    margin: 20px auto 0 !important;
}
.testimonial-actions .testimonial-controls {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    margin: 0 !important;
}
.testimonial-arrow,
.testimonial-dot {
    position: relative;
    z-index: 2;
    pointer-events: auto !important;
    cursor: pointer !important;
}
.testimonial-actions .testimonial-submit-link {
    margin: 0 !important;
}


/* Final three-row testimonial layout */
.testimonials-section {
    background: #080d0a !important;
    color: #f6f3ed !important;
    padding-top: 85px !important;
    padding-bottom: 85px !important;
}
.testimonial-window {
    background: linear-gradient(145deg, #050907, #101b14 65%, #17251b) !important;
    border: 1px solid #b99a66 !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.42) !important;
    color: #f6f3ed !important;
}
.testimonial-arrows-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 340px !important;
    margin: 22px auto 18px !important;
}
.testimonial-arrows-row .testimonial-arrow {
    width: 46px;
    height: 46px;
    font-size: 29px;
}
.testimonial-dots-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 13px !important;
    width: 100% !important;
    margin: 0 auto 25px !important;
}
.testimonial-submit-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 auto !important;
}
.testimonial-submit-row .testimonial-submit-link {
    margin: 0 !important;
}
.testimonial-arrow, .testimonial-dot {
    pointer-events: auto !important;
    cursor: pointer !important;
}
@media(max-width:600px) {
    .testimonial-window { padding: 26px 17px !important; }
    .testimonial-arrows-row { max-width: 260px !important; }
}

/* Widen testimonial window closer to screen edges */
.testimonials-section {
    padding-left: 2vw !important;
    padding-right: 2vw !important;
}
.testimonial-window {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}

/* Keep the border tightly around the testimonial content */
.testimonial-window {
    width: fit-content !important;
    max-width: min(1100px, 96%) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Wider testimonial quote border */
.testimonial-window {
    width: 100% !important;
    max-width: 96% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Position testimonial navigation arrows inside opposite border corners */
.testimonial-window {
    position: relative !important;
    padding-left: 75px !important;
    padding-right: 75px !important;
}

.testimonial-window .testimonial-arrows-row {
    position: absolute !important;
    top: 50% !important;
    left: 12px !important;
    right: 12px !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    pointer-events: none !important;
}

.testimonial-window .testimonial-arrow {
    pointer-events: auto !important;
}

@media(max-width:600px) {
    .testimonial-window {
        padding-left: 48px !important;
        padding-right: 48px !important;
    }
    .testimonial-window .testimonial-arrows-row {
        left: 5px !important;
        right: 5px !important;
    }
}

/* Navigation dots centered at the bottom inside testimonial border */
.testimonial-window {
    padding-bottom: 65px !important;
}
.testimonial-window .testimonial-dots-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 13px !important;
    width: 100% !important;
    margin: 20px auto 0 !important;
}

/* Space between testimonial border and button */
.testimonial-submit-row {
    margin-top: 18px !important;
}


/* Contact form privacy messages directly below submit button */
.privacy-assurance {
    display: block;
    margin-top: 14px;
    font-weight: 700;
    line-height: 1.6;
}

.form-card > small.muted {
    display: block;
    margin-top: 8px;
    line-height: 1.5;
}

/* Final testimonial text sizing and width */
.testimonial-window {
    padding-left: 48px !important;
    padding-right: 48px !important;
}

.testimonial-slide {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.testimonial-slide blockquote {
    font-size: 12px !important;
    line-height: 1.7 !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

@media (max-width: 600px) {
    .testimonial-window {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
}

/* Final testimonial comment size and full border width */
html body .testimonials-section .testimonial-window .testimonial-slides,
html body .testimonials-section .testimonial-window .testimonial-slide {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

html body .testimonials-section .testimonial-window .testimonial-slide blockquote {
    font-size: 14px !important;
    line-height: 1.6 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}
