@font-face{font-family:Source;src:url(fonts/source-sans-3.woff2) format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Source;src:url(fonts/source-sans-3-600.woff2) format('woff2');font-weight:600 800;font-display:swap}:root{--purple:#281768;--ink:#26232e;--muted:#655f70;--paper:#f5f3f8;--line:#ddd8e7}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:18px/1.55 Source,Arial,sans-serif;background:#fff}a{color:var(--purple);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8068bf;outline-offset:4px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0 0 1rem}h1,h2,h3{line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(2.2rem,5vw,4.5rem);font-weight:600}h2{font-size:clamp(1.7rem,3vw,2.6rem);font-weight:600}h3{font-size:1.4rem}.container{width:min(1200px,calc(100% - 64px));margin:auto}.topbar{background:var(--purple);color:white;font-size:14px;padding:8px 0}.topbar .container{display:flex;justify-content:space-between;gap:12px}.topbar a{color:inherit;text-decoration:none}.site-header{background:white;border-bottom:1px solid var(--line)}.header-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{width:200px;height:auto}.site-header ul{padding:0;margin:0;list-style:none;display:flex;gap:24px;align-items:center}.site-header a{text-decoration:none;color:var(--ink);font-size:17px}.site-header .current-menu-item>a{color:var(--purple);text-decoration:underline;text-decoration-thickness:2px}.menu-toggle{display:none}.skip{position:absolute;top:-100px;left:20px;background:#fff;z-index:10000;padding:12px}.skip:focus{top:10px}.hero{background:var(--paper);padding:54px 0 60px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.hero-copy>p:not(.eyebrow){font-size:21px;color:var(--muted);max-width:480px}.eyebrow{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);font-weight:600}.hero h1{max-width:550px;color:var(--purple);margin-bottom:24px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 23px;background:var(--purple);color:white;border:1px solid var(--purple);border-radius:7px;text-decoration:none;font-weight:600;cursor:pointer;min-height:48px;text-align:center}.button:hover{background:#402781;color:white}.button.secondary{background:transparent;color:var(--purple)}.button.secondary:hover{background:#eae5f3}.hero-picture{height:430px;position:relative;overflow:hidden;border-radius:60px 8px 60px 8px;background:#e3dcee}.hero-picture>img{width:100%;height:100%;object-fit:cover}.hero-caption{position:absolute;bottom:20px;left:20px;background:#fff;padding:10px 18px;border-radius:5px;color:var(--purple)}.hero-type{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:65px;color:var(--purple);font-weight:600}.hero-type span{font-size:24px}.section{padding-top:70px;padding-bottom:70px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.section-heading h2{margin:0}.text-link{font-weight:600;text-decoration:none}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.property-card,.news-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white}.card-image{position:relative;display:block;aspect-ratio:1.45;background:var(--paper)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.card-image:hover img{transform:scale(1.02)}.badge{position:absolute;left:15px;top:15px;background:#fff;color:var(--purple);padding:5px 13px;border-radius:4px;font-size:14px;font-weight:600}.card-content{padding:24px}.card-content .eyebrow{font-size:12px;letter-spacing:.035em}.card-content h2{font-size:24px;line-height:1.2}.card-content h2 a{color:var(--ink);text-decoration:none}.price{font-weight:600;font-size:23px;color:var(--purple)}.no-photo{height:100%;display:flex;align-items:center;justify-content:center;font-size:17px}.company-strip{background:var(--paper);border-left:5px solid var(--purple);padding:45px 50px}.company-strip h2,.company-strip>p{max-width:760px}.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.map-box{min-height:280px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:24px;text-align:center}.map-box iframe{border:0;width:100%;height:320px}.small{font-size:14px;color:var(--muted)}.site-footer{background:#efedf4;border-top:1px solid var(--line);padding-top:50px}.footer-grid{display:grid;grid-template-columns:1fr 1.3fr .8fr;gap:50px;padding-bottom:40px}.site-footer h2{font-size:20px}.site-footer p,.site-footer a{font-size:16px}.site-footer a{overflow-wrap:anywhere}.footer-logo{width:180px;margin-bottom:20px}.footer-link{display:block;margin-bottom:10px}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:14px}.page-heading{max-width:900px;margin-bottom:40px}.page-heading h1{font-size:clamp(2.4rem,5vw,3.7rem)}.filters{display:flex;align-items:end;gap:20px;padding:24px;background:var(--paper);border-radius:10px}.filters label{flex:1}.filters select{width:100%}input,select,textarea{max-width:100%;display:block;background:white;border:1px solid #a59dad;border-radius:5px;padding:12px;color:var(--ink)}label{font-weight:600}.result-count{margin:25px 0;color:var(--muted)}.pagination{display:flex;gap:12px;justify-content:center;margin-top:35px}.page-numbers{padding:8px 15px;border:1px solid var(--line);text-decoration:none;border-radius:5px}.page-numbers.current{background:var(--purple);color:white}.prose{max-width:850px;overflow-wrap:anywhere}.prose img{border-radius:10px;margin:25px 0}.entry-content h2,.prose h2{font-size:29px;margin-top:36px}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.contact-form{display:grid;gap:20px;padding:30px;background:var(--paper);border-radius:12px}.contact-form input,.contact-form textarea{width:100%;margin-top:5px}.contact-form .check{font-size:16px;display:flex;gap:10px;font-weight:400}.contact-form .check input{width:20px;flex-shrink:0}.form-note{font-size:14px;color:var(--muted);margin:0}.form-honey{position:absolute;left:-9999px}.form-status{padding:15px;background:#eee8fa}.property-heading{display:flex;gap:35px;align-items:center;justify-content:space-between;margin:25px 0}.property-heading h1{font-size:clamp(2rem,4vw,3.2rem)}.property-price{font-size:28px;font-weight:600;color:var(--purple);flex-shrink:0}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-height:600px;overflow:auto;border-radius:12px}.gallery-photo{aspect-ratio:1.45;overflow:hidden}.gallery-photo:first-child{grid-column:span 2;grid-row:span 2}.gallery-photo img{height:100%;width:100%;object-fit:cover}.property-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:60px;margin-top:40px}.property-facts{display:flex;gap:25px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 30px}.property-facts dt{font-size:14px;color:var(--muted)}.property-facts dd{margin:0;font-size:22px;font-weight:600}.inquiry-card{padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:12px;align-self:start}.inquiry-card h2{font-size:26px}.inquiry-card p{font-size:17px}.lightbox{max-width:95vw;max-height:94vh;border:0;background:#fff;padding:20px;border-radius:8px}.lightbox::backdrop{background:#171020df}.lightbox img{max-height:75vh;max-width:85vw;object-fit:contain}.lightbox-close{display:block;margin:0 0 10px auto;background:var(--purple);color:white;border:0;padding:10px 20px;border-radius:5px;cursor:pointer}.empty{grid-column:1/-1;padding:40px;background:var(--paper);border-radius:10px}.news-card> a img{width:100%;aspect-ratio:1.45;object-fit:cover}.news-card time{font-size:14px;color:var(--muted)}@media(max-width:1000px){.header-inner{gap:20px}.site-header ul{gap:14px}.brand img{width:155px}.site-header a{font-size:15px}.hero-grid{gap:30px}.hero-picture{height:380px}.cards{gap:18px}.card-content{padding:20px}.property-layout{gap:30px;grid-template-columns:minmax(0,1fr) 300px}.contact-layout{gap:35px}}@media(max-width:760px){.container{width:calc(100% - 36px)}.topbar{font-size:12px}.header-inner{min-height:88px;flex-wrap:wrap;padding:12px 0}.brand img{width:155px}.menu-toggle{display:flex;gap:14px;padding:10px 14px;align-items:center;background:white;border:1px solid var(--line);border-radius:5px;color:var(--purple)}#principal{display:none;width:100%}#principal.is-open{display:block}#principal ul{display:block;border-top:1px solid var(--line);padding-top:12px}#principal a{display:block;padding:12px;font-size:18px}.hero{padding:35px 0}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-copy>p:not(.eyebrow){font-size:19px}.hero-picture{height:290px;border-radius:35px 8px 35px 8px}.hero h1{max-width:500px}.section{padding-top:45px;padding-bottom:45px}.section-heading{display:block}.section-heading .text-link{display:block;margin-top:16px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card-content h2{font-size:21px}.contact-panel,.footer-grid,.contact-layout,.property-layout{grid-template-columns:1fr;gap:30px}.company-strip{padding:30px}.footer-bottom{flex-wrap:wrap;justify-content:start;gap:12px 25px}.filters{flex-wrap:wrap;padding:20px}.filters label{flex-basis:100%}.filters .button{width:100%}.property-heading{display:block}.property-price{margin-top:15px}.gallery{grid-template-columns:repeat(2,1fr);max-height:520px}.gallery-photo:first-child{grid-row:auto}.contact-form{padding:22px}.property-layout{margin-top:25px}.inquiry-card{order:-1}}@media(max-width:480px){.cards{grid-template-columns:1fr}.actions .button{flex:1;padding:12px}.topbar .container{gap:5px}.hero-caption{font-size:15px}.property-facts{gap:20px}.footer-grid{gap:25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
