:root{--brand:#ec5044;--brand-hover:#d8442f;--brand-deep:#b03522;--ink:#1a1614;--ink-2:#645b57;--ink-3:#8f8884;--rule:#e8e3e1;--rule-2:#f3f0ee;--band:#f7f4f2;--surface:#ffffff}.enq__form input:focus,.enq__form textarea:focus,.enq__form select:focus,.afxlegacy div.commission-agreement input:focus,.afxlegacy div.commission-agreement textarea:focus,.afxlegacy div.commission-agreement select:focus,main.afxdoc div.form input:focus,main.afxdoc div.form textarea:focus,main.afxdoc div.form select:focus,.iti__tel-input:focus{border-color:var(--ink-3);box-shadow:0 0 0 3px #ec504424}main.afxdoc div.site-message.success{background:#ec50440d;border-color:#ec504438;border-left-color:var(--brand)}.hdr .btn--sm{border-radius:4px}.developments .items,.sales .items{display:grid;gap:2.5rem 1.875rem;grid-template-columns:1fr}@media(min-width:38rem){.developments .items,.sales .items{grid-template-columns:repeat(2,1fr)}}@media(min-width:62rem){.developments .items,.sales .items{grid-template-columns:repeat(3,1fr)}}.developments .item-spacer,.sales .item-spacer{display:none}.developments .item,.sales .item{position:relative;display:flex;flex-direction:column;min-width:0}.developments .item .dummy-link,.sales .item .dummy-link{position:absolute;inset:0;z-index:2}.developments .item .image,.sales .item .image{order:0;position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--band);border-radius:2px}.developments .item .image img,.sales .item .image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.3,1)}.developments .item:hover .image img,.sales .item:hover .image img{transform:scale(1.03)}.developments .item .label,.sales .item .label{order:1;position:relative;z-index:1;align-self:flex-start;margin-top:-2.1rem;background:var(--surface);color:var(--ink);font-size:.875rem;font-weight:500;line-height:1.2;padding:.45rem .8rem;border-radius:0 2px 0 0}.developments .item .text,.sales .item .text{order:2;padding-top:1.1rem}.developments .item .main,.sales .item .main{font-size:1.0625rem;font-weight:400;line-height:1.35;margin:0 0 .4rem}.developments .item .main a,.sales .item .main a{color:var(--ink);text-decoration:none}.developments .item:hover .main a,.sales .item:hover .main a{color:var(--brand-deep)}.developments .item .sub,.sales .item .sub{font-size:.875rem;color:var(--ink-2);line-height:1.5;margin:0 0 .3rem}.developments .item .sub.alt,.sales .item .sub.alt{margin:0;color:var(--brand-deep);font-variant-numeric:tabular-nums}.sales .button{margin-top:2.5rem;display:flex;justify-content:center}.hero--excl{align-items:center;justify-content:center;text-align:center;color:#fff;min-height:clamp(34rem,78vh,44rem);background-position:center;background-size:cover;background-repeat:no-repeat}.hero--excl:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#00000075,#00000057 38%,#00000085)}.hero--excl .hero__in{position:relative;z-index:2;max-width:46rem;margin:0 auto;padding:var(--hdr) var(--gut) 3rem}.hero--excl .hero__logo,.hero--excl .hero__in>img{display:block;height:4.25rem;width:auto;margin:0 auto 2.25rem;object-fit:contain}.hero--excl h1{font-size:clamp(1.6rem,3.1vw,2.4rem);font-weight:400;line-height:1.25;margin:0 0 1rem;max-width:none;text-shadow:0 1px 2px rgba(0,0,0,.4),0 0 18px rgba(0,0,0,.35)}.hero--excl .hero__price{font-size:1.0625rem;font-weight:400;letter-spacing:.01em;margin:0 0 2.25rem;opacity:1;text-shadow:0 1px 2px rgba(0,0,0,.4),0 0 14px rgba(0,0,0,.3)}.hero--excl .btn--light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65)}.hero--excl .btn--light:hover{background:#fff;color:var(--ink);border-color:#fff}body.home .sec__head{padding-bottom:1.5rem;margin-bottom:2.5rem;border-bottom:1px solid var(--rule)}body.home .sec__head h2{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:300;line-height:1.15;margin:0}body.home .sales .item>a.card{flex:1 1 auto;width:100%}body.home .info{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}body.home .info+.info{margin-top:4.5rem}@media(min-width:58rem){body.home .info{grid-template-columns:1fr 1fr;gap:4rem}body.home .info--flip .info__img{order:2}}body.home .info__img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:2px}body.home .info__text h2{font-size:clamp(1.4rem,2.4vw,1.875rem);font-weight:300;line-height:1.2;margin:0 0 1.1rem}body.home .info__text p{font-size:1rem;color:var(--ink-2);line-height:1.7;margin:0 0 1.25rem;max-width:48ch}body.home .info__text .btn{margin-top:.75rem}body.home .services{position:relative;color:#fff;text-align:center;padding-top:6rem;padding-bottom:6rem;background-color:var(--ink);background-position:center;background-size:cover;background-repeat:no-repeat}body.home .services:after{content:"";position:absolute;inset:0;background:#120f0db8}body.home .services .wrap{position:relative;z-index:2}body.home .services h2{font-size:clamp(1.5rem,2.8vw,2.125rem);font-weight:300;line-height:1.25;margin:0 auto 1.25rem;max-width:62rem}body.home .services__body{font-size:1rem;color:#ffffffc7;line-height:1.7;margin:0 auto 2.25rem;max-width:52ch}body.home .services__clients{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.09em;color:#ffffff8c;margin:3.5rem 0 1.5rem}body.home .services__logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2.5rem 3rem}body.home .services__logos img{height:3.25rem;width:auto;max-width:11rem;object-fit:contain;opacity:.9;filter:brightness(0) invert(1)}body.home .past__intro{font-size:1rem;color:var(--ink-2);line-height:1.7;max-width:60ch;margin:0 0 2.5rem}body.home .past__intro p{margin:0 0 1em}body.home .past-developments .button{margin-top:2.5rem;display:flex;justify-content:center}body.home main div.grouped-map{width:100%;height:clamp(22rem,42vw,31.25rem);background:var(--band)}body.home main div.grouped-map img{max-width:none}main.afxaccount div.banner{min-height:clamp(18rem,36vh,23rem);padding-bottom:6.5rem}main.afxaccount div.banner div.account-options{margin-top:.7rem;font-size:.875rem;line-height:1.5;color:#ffffff8c;text-shadow:0 1px 2px rgba(0,0,0,.4)}main.afxaccount div.banner div.account-options a{color:#fff;text-decoration:none;margin:0 .4rem}main.afxaccount div.banner div.account-options a:first-child{margin-left:0}main.afxaccount div.banner div.account-options a:hover{text-decoration:underline;text-underline-offset:3px}main.afxaccount>div.content{padding-bottom:4.5rem}main.afxaccount div.LoginRegisterPro{position:relative;z-index:3;max-width:26.5rem;margin:-4rem auto 0;padding:2.25rem 2.25rem 1.75rem;background:var(--surface);border:1px solid var(--rule);border-radius:2px;box-shadow:0 1px 2px #1a16140d,0 28px 56px -28px #1a161447}main.afxaccount div.LoginRegisterPro:has(form.RegisterForm),main.afxaccount div.LoginRegisterPro:has(form.ProfileForm){max-width:40rem}main.afxaccount div.LoginRegisterPro form.InputfieldForm>h2{margin:0 0 1.5rem;font-size:1.75rem;font-weight:300;line-height:1.15;color:var(--ink)}main.afxaccount div.LoginRegisterPro form.InputfieldForm{display:block}main.afxaccount div.LoginRegisterPro div.Inputfields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.1rem 1rem}main.afxaccount div.LoginRegisterPro div.Inputfields>.Inputfield,main.afxaccount div.LoginRegisterPro div.Inputfields>.Inputfield:not(.InputfieldSubmit){grid-column:1 / -1;float:none;clear:none;min-width:0;width:auto!important;margin:0!important;padding:0;border:0;background:none}main.afxaccount div.LoginRegisterPro div.Inputfields>.InputfieldColumnWidth:not(.InputfieldSubmit){grid-column:span 3}main.afxaccount div.LoginRegisterPro div.Inputfields>.InputfieldColumnWidth[class*=Company]:not(.InputfieldSubmit){grid-column:1 / -1}@media(max-width:33.99rem){main.afxaccount div.LoginRegisterPro div.Inputfields>.InputfieldColumnWidth:not(.InputfieldSubmit){grid-column:1 / -1}}main.afxaccount div.LoginRegisterPro .InputfieldHeader{display:block;margin:0 0 .5rem;padding:0;font-size:.6875rem;font-weight:500;line-height:1.3;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-2)}main.afxaccount div.LoginRegisterPro input[type=text],main.afxaccount div.LoginRegisterPro input[type=email],main.afxaccount div.LoginRegisterPro input[type=password],main.afxaccount div.LoginRegisterPro textarea{display:block;width:100%;height:3rem;margin:0;padding:0 .95rem;font:inherit;font-size:1rem;line-height:1.4;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:2px;box-shadow:none;-webkit-appearance:none;appearance:none;transition:border-color .15s ease,box-shadow .15s ease}main.afxaccount div.LoginRegisterPro textarea{height:auto;min-height:7rem;padding:.75rem .95rem}main.afxaccount div.LoginRegisterPro input::placeholder{color:var(--ink-3)}main.afxaccount div.LoginRegisterPro input:hover,main.afxaccount div.LoginRegisterPro textarea:hover{border-color:#d3cbc8}main.afxaccount div.LoginRegisterPro input:focus,main.afxaccount div.LoginRegisterPro textarea:focus{outline:0;border-color:var(--ink-3);box-shadow:0 0 0 3px #ec504424}main.afxaccount div.LoginRegisterPro input:-webkit-autofill{-webkit-box-shadow:0 0 0 100px #fff inset;-webkit-text-fill-color:var(--ink)}main.afxaccount div.LoginRegisterPro input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 100px #fff inset,0 0 0 3px rgba(236,80,68,.14)}main.afxaccount div.LoginRegisterPro p.description{margin:0 0 .75rem;font-size:.875rem;line-height:1.55;color:var(--ink-2)}main.afxaccount div.LoginRegisterPro p.notes,main.afxaccount div.LoginRegisterPro p.detail{margin:.45rem 0 0;font-size:.8125rem;line-height:1.5;color:var(--ink-3)}main.afxaccount div.LoginRegisterPro p.InputfieldPasswordRow{margin:0 0 .6rem}main.afxaccount div.LoginRegisterPro p.InputfieldPasswordRow:last-child{margin-bottom:0}main.afxaccount div.LoginRegisterPro span.detail{display:block;margin-top:.35rem;font-size:.8125rem;line-height:1.45;opacity:1}main.afxaccount div.LoginRegisterPro .pass-invalid,main.afxaccount div.LoginRegisterPro .pass-short,main.afxaccount div.LoginRegisterPro .pass-same,main.afxaccount div.LoginRegisterPro .pass-common,main.afxaccount div.LoginRegisterPro .pass-fail,main.afxaccount div.LoginRegisterPro .pass-weak,main.afxaccount div.LoginRegisterPro .pass-medium,main.afxaccount div.LoginRegisterPro .confirm-no{color:var(--brand-deep)}main.afxaccount div.LoginRegisterPro .pass-good,main.afxaccount div.LoginRegisterPro .pass-excellent,main.afxaccount div.LoginRegisterPro .confirm-yes{color:#2b6a3c}main.afxaccount div.LoginRegisterPro div.LoginRegisterError{margin-top:.45rem;font-size:.8125rem;line-height:1.45;color:var(--brand-deep)}main.afxaccount div.LoginRegisterPro div.LoginRegisterError small{font-size:inherit}main.afxaccount p.LoginRegisterNotice{margin:0 0 1.5rem;padding:.8rem 1rem;font-size:.875rem;font-weight:500;line-height:1.5;color:var(--brand-deep);background:#ec504412;border:0;border-left:3px solid var(--brand);border-radius:0 2px 2px 0}main.afxaccount p.LoginRegisterNotice.LoginRegisterMessage{color:#2b6a3c;background:#3a8f5217;border-left-color:#3a8f52}main.afxaccount p.LoginRegisterNotice.LoginRegisterWarning{color:#7a5a10;background:#c4921c1a;border-left-color:#c4921c}main.afxaccount p.LoginRegisterNotice a{color:inherit}main.afxaccount div.LoginRegisterPro div.Inputfields>.InputfieldSubmit{padding-top:.5rem}main.afxaccount div.LoginRegisterPro .InputfieldSubmit button{display:flex;align-items:center;justify-content:center;width:100%;height:3rem;margin:0;padding:0 2rem;font:inherit;font-size:.8125rem;font-weight:500;line-height:1;letter-spacing:.09em;text-transform:uppercase;color:#fff;background:var(--brand);border:0;border-radius:2px;cursor:pointer;transition:background-color .18s ease}main.afxaccount div.LoginRegisterPro .InputfieldSubmit button:hover{background:var(--brand-hover)}main.afxaccount div.LoginRegisterPro ul.LoginRegisterLinks{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;list-style:none;margin:1.5rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--rule-2)}main.afxaccount div.LoginRegisterPro ul.LoginRegisterLinks li{margin:0;padding:0}main.afxaccount div.LoginRegisterPro ul.LoginRegisterLinks li:not([class]){display:none}main.afxaccount div.LoginRegisterPro ul.LoginRegisterLinks a{font-size:.8125rem;line-height:1.4;color:var(--ink-2);text-decoration:none;transition:color .15s ease}main.afxaccount div.LoginRegisterPro ul.LoginRegisterLinks a:hover{color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px}main.afxaccount div.LoginRegisterPro .afxpass{position:relative}main.afxaccount div.LoginRegisterPro .afxpass input[type]{padding-right:3rem}main.afxaccount div.LoginRegisterPro .afxpass__btn{position:absolute;top:0;right:0;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;color:var(--ink-3);background:none;border:0;border-radius:2px;cursor:pointer;transition:color .15s ease}main.afxaccount div.LoginRegisterPro .afxpass__btn:hover{color:var(--ink)}main.afxaccount div.LoginRegisterPro .afxpass__btn svg{width:1.125rem;height:1.125rem}main.afxaccount div.LoginRegisterPro .afxpass__btn .is-shown,main.afxaccount div.LoginRegisterPro .afxpass__btn.is-on .is-hidden{display:none}main.afxaccount div.LoginRegisterPro .afxpass__btn.is-on .is-shown{display:block}@media(max-width:39.99rem){main.afxaccount div.banner{padding-bottom:5rem}main.afxaccount div.LoginRegisterPro{margin-top:-3rem;padding:1.75rem 1.35rem 1.35rem}main.afxaccount div.LoginRegisterPro form.InputfieldForm>h2{font-size:1.5rem;margin-bottom:1.25rem}}body[data-page=services] main.afxdoc section.general-content.text div.content{max-width:calc(50rem + var(--gut) * 2);text-align:center}body[data-page=services] main.afxdoc section.general-content.text p{font-size:clamp(1.125rem,1.6vw,1.3125rem);font-weight:300;line-height:1.65;color:var(--ink)}main.afxdoc section.general-content.afxsvc,main.afxdoc section.general-content+section.general-content.afxsvc{padding:3.5rem 0 5.5rem}main.afxdoc section.general-content.afxsvc .afxsvc__ico{display:flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:2px;transition:background-color .2s ease,border-color .2s ease,color .2s ease}main.afxdoc section.general-content.afxsvc .afxsvc__ico svg{width:1.375rem;height:1.375rem}main.afxdoc section.general-content.afxsvc ol.afxsvc__steps{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);list-style:none;margin:0 0 4.5rem;padding:0}main.afxdoc section.general-content.afxsvc ol.afxsvc__steps:before{content:"";position:absolute;top:1.75rem;left:10%;right:10%;height:1px;background:var(--rule)}main.afxdoc section.general-content.afxsvc ol.afxsvc__steps li{position:relative;margin:0;padding:0}main.afxdoc section.general-content.afxsvc a.afxsvc__step{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:0 .5rem;text-align:center;text-decoration:none;color:var(--ink)}main.afxdoc section.general-content.afxsvc a.afxsvc__step .afxsvc__ico{width:3.5rem;height:3.5rem;margin-bottom:1rem;background:var(--surface);border:1px solid var(--rule);color:var(--brand)}main.afxdoc section.general-content.afxsvc a.afxsvc__step:hover .afxsvc__ico{background:var(--brand);border-color:var(--brand);color:#fff}main.afxdoc section.general-content.afxsvc a.afxsvc__step .afxsvc__n{font-size:.6875rem;font-weight:500;line-height:1.4;letter-spacing:.09em;color:var(--ink-3)}main.afxdoc section.general-content.afxsvc a.afxsvc__step .afxsvc__name{font-size:1rem;font-weight:500;line-height:1.35;color:var(--ink);transition:color .18s ease}main.afxdoc section.general-content.afxsvc a.afxsvc__step:hover .afxsvc__name{color:var(--brand-deep)}main.afxdoc section.general-content.afxsvc div.afxsvc__list{border-top:1px solid var(--rule)}main.afxdoc section.general-content.afxsvc div.afxsvc__item{border-bottom:1px solid var(--rule);scroll-margin-top:calc(var(--hdr) + 1.5rem)}main.afxdoc section.general-content.afxsvc h2.afxsvc__h{margin:0;font-size:inherit;font-weight:inherit;line-height:inherit}main.afxdoc section.general-content.afxsvc button.acc__t{display:flex;align-items:center;gap:1.25rem;width:100%;padding:1.5rem 0;font:inherit;color:var(--ink);text-align:left;background:none;border:0;cursor:pointer}main.afxdoc section.general-content.afxsvc button.acc__t .afxsvc__ico{width:3rem;height:3rem;background:var(--rule-2);color:var(--brand)}main.afxdoc section.general-content.afxsvc .acc.is-open button.acc__t .afxsvc__ico,main.afxdoc section.general-content.afxsvc button.acc__t:hover .afxsvc__ico{background:var(--brand);color:#fff}main.afxdoc section.general-content.afxsvc button.acc__t .afxsvc__n{flex:0 0 1.75rem;font-size:.75rem;font-weight:500;letter-spacing:.09em;color:var(--ink-3)}main.afxdoc section.general-content.afxsvc .afxsvc__title{flex:1 1 auto;min-width:0;font-size:clamp(1.25rem,2.1vw,1.625rem);font-weight:300;line-height:1.2;transition:color .18s ease}main.afxdoc section.general-content.afxsvc button.acc__t:hover .afxsvc__title{color:var(--brand-deep)}main.afxdoc section.general-content.afxsvc .afxsvc__count{flex:0 0 auto;font-size:.6875rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}main.afxdoc section.general-content.afxsvc svg.acc__i{flex:0 0 2.25rem;width:2.25rem;height:2.25rem;padding:.5rem;color:var(--ink-2);border:1px solid var(--rule);border-radius:2px;transition:transform .25s ease,border-color .18s ease,color .18s ease}main.afxdoc section.general-content.afxsvc .acc.is-open svg.acc__i{transform:rotate(180deg)}main.afxdoc section.general-content.afxsvc button.acc__t:hover svg.acc__i{border-color:var(--ink-3);color:var(--ink)}main.afxdoc section.general-content.afxsvc div.afxsvc__body{display:grid;grid-template-columns:1fr;gap:1.75rem;padding:0 0 2.5rem 7.25rem}@media(min-width:62rem){main.afxdoc section.general-content.afxsvc div.afxsvc__body{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:3.5rem;align-items:start}}main.afxdoc section.general-content.afxsvc div.afxsvc__text p{margin:0 0 1em;padding:0;font-size:1rem;line-height:1.75;color:var(--ink-2)}main.afxdoc section.general-content.afxsvc div.afxsvc__text p:last-child{margin-bottom:0}main.afxdoc section.general-content.afxsvc div.afxsvc__sol{padding:1.5rem 1.75rem 1.6rem;background:var(--band);border-radius:2px}main.afxdoc section.general-content.afxsvc div.afxsvc__sol h3{margin:0 0 1rem;font-size:.6875rem;font-weight:500;line-height:1.3;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-2)}main.afxdoc section.general-content.afxsvc div.afxsvc__sol ul{display:grid;gap:.65rem;list-style:none;margin:0;padding:0}main.afxdoc section.general-content.afxsvc div.afxsvc__sol li{display:flex;align-items:flex-start;gap:.7rem;margin:0;font-size:.9375rem;line-height:1.45;color:var(--ink)}main.afxdoc section.general-content.afxsvc div.afxsvc__sol li svg{flex:0 0 1rem;width:1rem;height:1rem;margin-top:.18rem;color:var(--brand)}@media(max-width:61.99rem){main.afxdoc section.general-content.afxsvc ol.afxsvc__steps{display:flex;gap:.25rem;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;margin:0 calc(var(--gut) * -1) 3rem;padding:0 var(--gut) .25rem}main.afxdoc section.general-content.afxsvc ol.afxsvc__steps::-webkit-scrollbar{display:none}main.afxdoc section.general-content.afxsvc ol.afxsvc__steps:before{display:none}main.afxdoc section.general-content.afxsvc ol.afxsvc__steps li{flex:0 0 8rem;scroll-snap-align:start}main.afxdoc section.general-content.afxsvc div.afxsvc__body{padding-left:0}}@media(max-width:39.99rem){main.afxdoc section.general-content.afxsvc button.acc__t{gap:.9rem;padding:1.2rem 0}main.afxdoc section.general-content.afxsvc button.acc__t .afxsvc__ico{width:2.5rem;height:2.5rem}main.afxdoc section.general-content.afxsvc button.acc__t .afxsvc__n,main.afxdoc section.general-content.afxsvc .afxsvc__count{display:none}}.rq__chip[aria-pressed=true]{background:#ec504412}
