:root{--bg:#0c1c32;--text:#f5f3ee;--muted:#b9c4d2;--gold:#d3b778;color-scheme:dark}
body{background:#0c1c32;font-size:18px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ad843c;outline-offset:5px}
.agency-header.nav,.agency-home .agency-header.nav{position:relative;background:#0c1c32;padding:22px 5%;gap:24px}.agency-header.nav .brand{display:flex;flex-direction:column;gap:7px;font-size:32px;letter-spacing:1px}.brand b{font-weight:400;color:#d3b778}.agency-header.nav .brand small,.agency-footer .brand small{font:500 11px/1.5 Manrope,Arial,sans-serif;letter-spacing:.25px;text-transform:none;display:block}.agency-header.nav nav{gap:23px}.agency-header.nav nav>a{font-size:14px}.language-switch{display:flex;gap:10px;border-left:1px solid #ffffff30;padding-left:20px;font-size:13px}.language-switch [aria-current]{color:#d3b778;text-decoration:underline;text-underline-offset:6px}
.simple-hero{position:relative;min-height:min(740px,85svh);display:flex;align-items:center;overflow:hidden;background:#0c1c32}.simple-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}.simple-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#07182bed 0%,#07182ba6 45%,#07182b15 100%)}.simple-hero-copy{position:relative;z-index:1;padding:65px 7%;max-width:940px}.simple-hero h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(39px,4.5vw,72px);font-weight:500;line-height:1.13;letter-spacing:-2px;margin:0;color:#fff}.simple-hero h1 em{color:#d3b778;font-style:normal}.simple-hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.8;color:#edf0f5;max-width:580px;margin:25px 0 32px}.simple-hero .eyebrow{color:#e3cb96;font-size:12px;letter-spacing:1.5px}
.button,.outline-button,.agency-inner .button,.agency-inner .outline-button,.catalogue-page .button{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:17px 25px;min-height:54px;border-radius:7px;font:700 16px/1.5 Manrope,Arial,sans-serif;background:#d3b778;color:#10233c;border:1px solid #d3b778;box-shadow:0 5px 18px #00000010}.button:hover,.agency-inner .button:hover{background:#e5c990;transform:translateY(-2px)}.simple-hero .outline-button{background:#0c1c32c9;color:#fff;border-color:#dfc58e}.outline-button:hover{background:#193654;color:#fff}.intent-actions{gap:16px}.intent-actions a{min-width:215px}.text-button{display:inline-block;font-size:16px;color:#8b6425;border-bottom:1px solid currentColor;padding:4px 0;margin-right:24px}
.compact-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;padding:54px 7%;background:#faf9f6;color:#172b46}.compact-intro h2,.reviews-panel h2{font:500 clamp(26px,2.8vw,39px)/1.25 Manrope,Arial,sans-serif;letter-spacing:-1px;margin:0}.compact-intro p,.reviews-panel p{font-size:17px;line-height:1.8;margin:0 0 16px}.compact-intro .eyebrow{font-size:12px;color:#8b6425}.reviews-panel{padding:40px 7%;display:flex;justify-content:space-between;gap:32px;align-items:center;background:#142a46;color:#fff}.reviews-panel .eyebrow{color:#d3b778;font-size:11px;margin-bottom:12px}.reviews-panel p{margin:12px 0 0;color:#cbd5e2}.reviews-panel .button{flex-shrink:0}
.agency-inner,.catalogue-page{--text:#172b46;--muted:#61718a;--gold:#936e2e;background:#faf9f6;color:#172b46;color-scheme:light}.inner-banner{padding:52px 7% 32px;background:#f0f2f5}.agency-inner h1{font-size:clamp(36px,4vw,58px)}.agency-inner h1 em{color:#946c27}.agency-inner .eyebrow{font-size:12px;color:#8b6425}.inner-banner>p:not(.eyebrow){font-size:18px;max-width:680px;color:#53647b;line-height:1.7}
.enquiry-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:9%;padding:42px 7% 60px;scroll-margin-top:25px}.business-contact h2{font-size:28px}.business-contact>a{display:block;color:#172b46;font-size:20px;margin:18px 0;overflow-wrap:anywhere}.business-contact p{font-size:17px;color:#53647b;line-height:1.8}.demo-lead-form{padding:30px;background:#fff;border:1px solid #dbe0e8;border-radius:10px}.agency-inner label{font-size:15px;color:#304665;margin-bottom:20px}.agency-inner input,.agency-inner select,.agency-inner textarea{font-size:17px;color:#172b46;border-color:#c5cfdb;padding:13px 0}.agency-inner .form-disclosure{font-size:14px;line-height:1.7;color:#61718a;margin:0 0 20px}.lead-status{font-size:15px;color:#7b591d}.company-story{display:grid;grid-template-columns:1.5fr 1fr;gap:7%;padding:38px 7% 65px;align-items:start}.company-story p{font-size:18px;line-height:1.85;color:#435570;margin:0 0 24px}.company-story img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:8px;position:sticky;top:30px}.company-story h2{font-size:28px;margin:34px 0 24px}
.agency-footer{background:#0c1c32;color:#fff;margin:0;padding:42px 7% 20px;border:0}.footer-main{grid-template-columns:1.3fr 1fr .8fr .6fr;gap:30px}.agency-footer .brand{font-size:30px;display:block;color:#d3b778}.agency-footer .brand small{max-width:240px}.footer-main h2{color:#d3b778;font-size:16px}.footer-main>div>a:not(.brand),.footer-main p{font-size:14px;color:#d3dce7;line-height:1.8}.footer-bottom{font-size:12px;border-color:#ffffff26}.footer-bottom a,.footer-bottom span{font-size:12px;color:#b9c4d2}
.catalogue-page .nav{background:#0c1c32}.catalogue-page input,.catalogue-page select,.catalogue-page textarea{color:#172b46}.listing-open,.listing-card .listing-price,.detail-enquiry-card .listing-price{color:#172b46}.catalogue-page .listing-photo .tag{background:#10233ce8}.catalogue-page dialog{color:#172b46}.catalogue-heading .button,.pagination button[aria-current=page]{background:#172b46;color:#fff}.catalogue-page .search-panel label,.catalogue-page .search-panel legend{color:#53647b;font-size:13px}.catalogue-page .search-panel input,.catalogue-page .search-panel select{font-size:15px}.catalogue-page .listing-card h3{font-size:20px}.catalogue-page .listing-location,.catalogue-page .listing-summary,.catalogue-page .listing-specs{font-size:13px}.catalogue-page .results-toolbar>p,.catalogue-page .view-toolbar button,.catalogue-page .sort-label select{font-size:14px}
@media(max-width:1100px){.agency-header.nav nav{gap:15px}.agency-header.nav nav>a{font-size:12px}.agency-header.nav .brand small{max-width:225px}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.agency-header.nav{padding:18px 6%}.agency-header.nav .brand{font-size:27px}.agency-header.nav .brand small{font-size:10px}.agency-header.nav .menu-toggle{display:block;background:transparent;color:#d3b778;font-size:27px;border:1px solid #d3b77866;border-radius:5px;padding:7px 12px}.agency-header.nav nav{display:none;position:absolute;top:100%;left:0;right:0;background:#0c1c32;padding:24px 6%;flex-direction:column;align-items:stretch;gap:22px}.agency-header.nav.menu-open nav{display:flex}.agency-header.nav nav>a{font-size:17px}.language-switch{border:0;padding:0}.simple-hero{min-height:610px}.simple-hero-copy{padding:55px 6%}.simple-hero:after{background:linear-gradient(90deg,#07182be8,#07182b50)}.compact-intro{gap:25px;padding:40px 6%}.enquiry-layout{gap:35px;grid-template-columns:1fr;padding:30px 6% 45px}.business-contact{border-bottom:1px solid #dbe0e8;padding-bottom:15px}.business-contact>a{display:inline-block;margin:10px 25px 10px 0}.company-story{grid-template-columns:1fr}.company-story img{position:static;max-width:450px;order:-1;aspect-ratio:2;object-position:center}.reviews-panel{padding:35px 6%}.agency-footer{padding:36px 6% 20px}}
@media(max-width:560px){.simple-hero{min-height:620px}.simple-hero>img{object-position:60% center}.simple-hero h1{font-size:40px;letter-spacing:-1.2px}.simple-hero-copy>p:not(.eyebrow){font-size:17px}.simple-hero .eyebrow{line-height:1.8;font-size:11px}.intent-actions{flex-direction:column}.intent-actions a{width:100%;min-width:0}.compact-intro{grid-template-columns:1fr}.reviews-panel{display:block}.reviews-panel .button{margin-top:20px;width:100%}.demo-lead-form{padding:22px 18px}.form-row{grid-template-columns:1fr;gap:0}.agency-inner .demo-lead-form .button{width:100%}.company-story{padding:30px 6% 45px}.footer-main{grid-template-columns:1fr 1fr;gap:25px}.footer-main>div:first-child{grid-column:1/-1}.footer-main>div>a:not(.brand),.footer-main p{font-size:14px}.footer-bottom{display:flex;flex-wrap:wrap;gap:14px}.inner-banner{padding:35px 6% 25px}}
.listing-open .listing-photo{display:block}.listing-card h3 a{color:inherit}.listing-card h3 a:hover{text-decoration:underline}.listing-mortgage{margin:0 22px 18px;padding:12px 14px;border:1px solid #d8dfdf;border-radius:8px;background:#f0f5f3;color:#254d43}.listing-mortgage>a{font-size:15px;font-weight:700;color:#254d43;text-decoration:underline;text-underline-offset:3px;display:inline-block;line-height:1.5}.listing-mortgage small{display:block;font-size:11px;line-height:1.7;color:#53665e;margin-top:5px}.detail-enquiry-card .listing-mortgage{margin:8px 0 22px}.list-mode .listing-open{grid-template-rows:auto auto auto auto 1fr auto}.list-mode .listing-photo{grid-row:1/7}.list-mode .listing-mortgage{grid-column:2}.list-mode .listing-mortgage{margin:0 22px 14px}@media(max-width:600px){.list-mode .listing-mortgage{margin:0 14px 10px;padding:8px}.list-mode .listing-mortgage>a{font-size:12px}.list-mode .listing-mortgage small{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.agency-header nav{gap:30px}
.agency-header nav a.nav-cta{border:1px solid #c08a4c;color:#f4efe6;padding:10px 18px;border-radius:2px}
.agency-header nav a.nav-cta:hover{background:#c08a4c26}
.listing-calc{margin-top:40px;padding:28px;border:1px solid #c08a4c55;border-radius:4px;background:#c08a4c0d}
.listing-calc h2{font:600 24px/1.2 Montserrat,Manrope,Arial,sans-serif;margin:0 0 6px}
.listing-calc-sub{margin:0 0 20px;opacity:.8}
.listing-calc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.listing-calc label{display:flex;flex-direction:column;gap:6px;font-size:13px;margin:0}
.listing-calc input{padding:12px;border:1px solid #c08a4c66;border-radius:3px;background:transparent;color:inherit;font-size:16px}
.listing-calc-result{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:16px;margin:24px 0 14px;padding-top:20px;border-top:1px solid #c08a4c33}
.listing-calc-result span{display:block;font-size:12px;opacity:.7;margin-bottom:4px}
.listing-calc-result strong{font:700 28px Montserrat,Manrope,sans-serif;color:#b07a3c}
.listing-calc-result b{font-size:17px}
.listing-calc small{opacity:.65}
@media(max-width:700px){.listing-calc-grid,.listing-calc-result{grid-template-columns:1fr 1fr}}
