/* WordPress integration and accessible replacements; original branding is bundled unchanged. */
html,body{margin:0;padding:0}body{--wp--style--global--content-size:1200px}body .wp-site-blocks{padding:0}a:where(:not(.wp-element-button)){text-decoration:none}button,input,select,textarea{font-family:inherit}button{cursor:pointer}[hidden]{display:none!important}.pride-skip{position:absolute;left:-10000px;top:0;z-index:99999}.pride-skip:focus{left:0;padding:12px;background:white;color:#173a85}:focus-visible{outline:3px solid #1864b4;outline-offset:3px}.Inputfield_comments{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.Inputfield_page_url,.Inputfield_article_title{display:none!important}.pride-form-result{clear:both;padding-top:12px}.pride-form-result:empty{display:none}.pride-form-result.error{color:#aa1810}.pride-form-result.success,.pride-success{padding:15px;background:#e7f2e4;color:#183b12}.pride-modal{width:min(760px,92vw);max-height:90vh;border:0;padding:40px;background:white;color:#111;box-sizing:border-box}.pride-modal::backdrop{background:rgba(0,0,0,.75)}.pride-modal .pride-dialog-close{position:absolute;right:8px;top:8px;background:#163c89;color:white;border:0;padding:5px 12px;font-size:22px}.pride-modal #rates-contact-popup,.pride-modal #article-contact-popup{display:block!important}.pride-modal img{max-width:100%;max-height:72vh;object-fit:contain}.pride-gallery-modal{width:min(1100px,95vw);text-align:center}.pride-gallery-modal .pride-gallery-controls{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.pride-gallery-controls button{padding:8px 18px}.pride-staff-bio{padding:18px;background:#e8edf7;margin-top:12px;font-size:16px;line-height:1.6}#staff-cards{display:flex;flex-wrap:wrap}#staff-cards .staff-card-wrap{float:none}#listing-slider{display:block;position:relative}#listing-slider .listing-slide{display:block}#listing-slider-nav{display:flex;overflow-x:auto;gap:3px;scrollbar-width:none}#listing-slider-nav .nav-slide{flex:0 0 19%;border:0;padding:0;background:none}#listing-slider-nav .nav-slide img{width:100%;display:block}#listing-slider-nav .nav-slide[aria-pressed=true]{outline:3px solid #b92b23;outline-offset:-3px}.pride-property-details{display:grid;grid-template-columns:1fr 2fr;gap:10px;padding:20px;background:#f0f0f0}.pride-property-details dd{margin:0}.pride-property-details dt{font-weight:bold}.pride-listing-enquiry{margin-top:14px}.pride-status{background:#e8edf7;padding:15px}.pride-empty{padding:24px;background:#edf1f8}.pride-calculator{max-width:850px;margin:0 auto 50px}.pride-region{display:flex;gap:20px;flex-wrap:wrap;margin:24px 0;font-weight:bold}.pride-region label{cursor:pointer}.pride-price-input{display:flex;align-items:center;border:2px solid #1b3d83;max-width:430px;margin-top:8px}.pride-price-input span{padding:16px;font-size:24px;background:#e6edfc}.pride-price-input input{font-size:24px;border:0;min-width:0;width:100%;padding:16px;box-sizing:border-box}.pride-fee-table{width:100%;border-collapse:collapse}.pride-fee-table td,.pride-fee-table th{padding:16px 12px;border-bottom:1px solid #ccc;text-align:left}.pride-fee-table td:last-child,.pride-fee-table th:last-child{text-align:right;white-space:nowrap}.pride-fee-table tfoot{background:#173c86;color:white;font-size:22px}.pride-calculator #sale-price-help{font-size:15px}.pride-calculator .btn{margin-top:24px}.pride-modal .FormBuilder{display:block}.pride-modal .Inputfield{float:none;clear:both;width:100%!important;margin-left:0!important}.pride-modal textarea,.pride-modal input:not([type=hidden]){width:100%;box-sizing:border-box}.pride-modal .centre{line-height:1.5}.template-article h1.article-title{font-size:30px}.map-inner iframe{display:block}.top-buttons{display:flex;gap:8px;flex-wrap:wrap}.site-header #desktop-nav li.has-children:focus-within>ul{display:block}.pride-subnav-toggle{background:transparent;color:inherit;border:0;font-size:20px;padding:8px;float:right}
@media(max-width:767px){.pride-fee-table td,.pride-fee-table th{padding:12px 8px;font-size:15px}.pride-fee-table tfoot td,.pride-fee-table tfoot th{font-size:18px}.pride-modal{padding:40px 18px 22px}.top-buttons .btn{flex:1 1 100%;text-align:center}#search-outer.pride-open{height:auto!important}#staff-cards{display:block}.pride-property-details{grid-template-columns:1fr}.pride-fee-table th{max-width:55vw}.FormBuilder .InputfieldColumnWidth{width:100%!important;margin-left:0!important}.pride-calculator .pride-region{gap:12px}}
/* Full-viewport dialogs: independent of legacy page columns and footer forms. */
html.pride-modal-open,html.pride-modal-open body{overflow:hidden!important;overscroll-behavior:none}
dialog.pride-modal{position:fixed!important;inset:0!important;margin:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;max-height:none!important;border:0!important;padding:0!important;overflow:hidden!important;background:#fff;color:#182238;box-shadow:none;z-index:2147483000}
dialog.pride-modal[open]{display:grid!important;grid-template-rows:auto minmax(0,1fr)}
.pride-modal .pride-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px max(20px,env(safe-area-inset-right)) 12px max(20px,env(safe-area-inset-left));padding-top:max(12px,env(safe-area-inset-top));border-bottom:1px solid #dce2eb;background:#fff;color:#163c89;position:relative;z-index:2}
.pride-modal .pride-modal-header h2{color:inherit!important;font-size:20px;line-height:1.3;margin:0!important;font-weight:700}
.pride-modal .pride-dialog-close{position:static!important;display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0!important;border-radius:50%;font-size:32px;line-height:1;background:#163c89;color:#fff;border:0}
.pride-modal .pride-modal-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:28px max(24px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));box-sizing:border-box}
.pride-enquiry-modal .pride-modal-body>*{max-width:820px;margin-left:auto;margin-right:auto}
.pride-enquiry-context{font-size:17px;line-height:1.5;padding:0 0 20px;border-bottom:1px solid #dce2eb;color:#334565}
.pride-modal #pride-listing-contact-popup,.pride-modal #rates-contact-popup,.pride-modal #article-contact-popup{display:block!important;position:static!important;width:100%!important;height:auto!important;max-height:none!important;background:transparent!important;padding:0!important}
.pride-modal form,.pride-modal .Inputfields,.pride-modal .InputfieldContent{position:static!important;display:block!important;width:100%!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;overflow:visible!important;background:transparent!important;color:#182238!important;box-sizing:border-box}
.pride-modal .Inputfield{display:block!important;float:none!important;clear:both!important;width:100%!important;margin:0 0 20px!important;padding:0!important;box-sizing:border-box}
.pride-modal .InputfieldHeader{display:block!important;color:#163c89!important;font-size:15px!important;font-weight:700!important;line-height:1.4!important;margin:0 0 8px!important;padding:0!important;position:static!important}
.pride-modal input:not([type=hidden]):not([type=submit]):not([type=checkbox]):not([type=radio]),.pride-modal textarea,.pride-modal select{display:block;width:100%!important;min-height:48px;padding:12px!important;border:1px solid #9aa9bf!important;border-radius:5px!important;background:#fff!important;color:#172640!important;font-size:16px!important;line-height:1.5!important;box-sizing:border-box!important}
.pride-modal textarea{height:150px!important;min-height:120px;resize:vertical}.pride-modal input[type=submit],.pride-modal button[type=submit]{width:auto!important;min-width:160px;min-height:48px;border:0;border-radius:4px;padding:12px 28px;background:#bc2b23;color:#fff;font-size:17px;font-weight:700}
.pride-modal .Inputfield_comments,.pride-modal .Inputfield_page_url,.pride-modal .Inputfield_article_title{display:none!important}
dialog.pride-gallery-modal{background:#101419!important;color:#fff}.pride-gallery-modal .pride-modal-header{background:#101419;color:#fff;border-bottom:1px solid #303944}.pride-gallery-modal .pride-dialog-close{background:#fff;color:#101419}.pride-gallery-modal .pride-modal-body{padding:0!important;overflow:hidden!important}.pride-full-gallery{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100%;width:100%;min-height:0}.pride-gallery-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;padding:12px;box-sizing:border-box;touch-action:pan-y pinch-zoom}.pride-gallery-stage img{display:block;max-width:100%!important;max-height:100%!important;width:100%;height:100%;object-fit:contain;margin:0!important}.pride-gallery-stage.pride-photo-zoom{display:block;overflow:auto;touch-action:auto}.pride-gallery-stage.pride-photo-zoom img{width:auto;height:auto;max-width:none!important;max-height:none!important;margin:auto!important}.pride-photo-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 16px;background:#101419dd;color:white;border-radius:4px;pointer-events:none;font-size:15px}.pride-gallery-modal .pride-gallery-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin:0!important;padding:12px 20px max(12px,env(safe-area-inset-bottom));background:#101419;border-top:1px solid #303944;min-height:56px;box-sizing:content-box}.pride-gallery-controls button{min-height:44px;min-width:44px;border:1px solid #667282;border-radius:5px;background:#202a36;color:#fff;font-size:16px;padding:8px 16px}.pride-gallery-controls button:first-child,.pride-gallery-controls button:last-child{font-size:30px;line-height:1}.pride-gallery-controls span{min-width:64px;color:#fff;font-size:16px}.pride-gallery-controls button:disabled{opacity:.4}.pride-gallery-modal :focus-visible{outline-color:#fff}.listing-map .map-inner iframe{min-height:300px;width:100%}
@media(max-width:600px){.pride-modal .pride-modal-header h2{font-size:17px}.pride-modal .pride-modal-header{padding-left:16px;padding-right:16px}.pride-modal .pride-modal-body{padding:20px 16px max(24px,env(safe-area-inset-bottom))}.pride-gallery-stage{padding:0}.pride-gallery-modal .pride-gallery-controls{gap:10px;padding-left:10px;padding-right:10px;min-height:48px}.pride-gallery-controls button{padding:8px 10px;font-size:14px}.pride-gallery-controls span{min-width:46px;font-size:14px}.pride-enquiry-context{font-size:15px}.pride-modal input[type=submit]{width:100%!important}}

/* Native image pixels with scrolling; thumbnails appear on desktop only. */
.pride-full-gallery{grid-template-rows:minmax(0,1fr) auto auto}
.pride-gallery-stage.pride-native-photo{overflow:auto;touch-action:pan-x pan-y pinch-zoom;padding:0;align-items:flex-start;justify-content:flex-start}
.pride-gallery-stage.pride-native-photo>img{flex:none;width:auto!important;height:auto!important;max-width:none!important;max-height:none!important;margin:auto!important;object-fit:initial}
.pride-gallery-thumbnails{display:flex;position:relative;gap:8px;overflow-x:auto;min-width:0;padding:10px 16px max(10px,env(safe-area-inset-bottom));background:#101419;border-top:1px solid #303944}
.pride-gallery-thumbnails button{flex:0 0 88px;width:88px;height:66px;padding:2px;border:2px solid transparent;border-radius:4px;background:#202a36}
.pride-gallery-thumbnails button[aria-pressed=true]{border-color:#fff}
.pride-gallery-thumbnails button img{display:block;width:100%;height:100%;max-height:none;object-fit:cover}
@media(max-width:767px){.pride-gallery-thumbnails{display:none}.pride-full-gallery{grid-template-rows:minmax(0,1fr) auto}}

/* Branded 404 page. */
.pride-404{background:#f4f6fa;padding:76px 0 96px}.pride-404 .text{max-width:760px;margin:0 auto;text-align:center}.pride-404-code{margin:0;color:#b92b23;font-size:clamp(64px,12vw,132px);font-weight:700;line-height:.9;letter-spacing:.04em}.pride-404 h1{margin:18px 0 14px;color:#173c86;font-size:clamp(34px,5vw,54px);line-height:1.12}.pride-404-intro{max-width:580px;margin:0 auto 30px;color:#334565;font-size:20px;line-height:1.55}.pride-404 .top-buttons{justify-content:center}.pride-404 .top-buttons .btn{display:inline-block;background:#b92b23;color:#fff;padding:13px 20px;border-radius:3px;font-weight:700}.pride-404 .top-buttons .btn:hover,.pride-404 .top-buttons .btn:focus{background:#173c86;color:#fff}

/* Preserve original footer spacing when rendering native synced-pattern groups. */
#site-footer .footer-info .footer-info-col{margin-top:0}#site-footer .footer-info .footer-info-col>h3,#site-footer .footer-info .footer-info-col>p{margin-top:0;margin-bottom:0}

/* Keep contact details together so DOM and keyboard order match the form workflow. */
.footer-contact .pride-footer-details{float:left;width:50%}.footer-contact .pride-footer-details .Inputfield{width:100%}@media(max-width:767px){.footer-contact .pride-footer-details{float:none;width:100%}}

/* One editable menu supplies both layouts. Home remains mobile-only by default. */
#desktop-nav .pride-mobile-only{display:none}
/* Reserve separate space for contact labels and entered text. */
form.FormBuilder.InputfieldForm[data-pride-form="contact"] .Inputfield:not(.InputfieldSubmit):not(.Inputfield_comments){padding:14px 16px;box-sizing:border-box;height:auto;min-height:0}
form.FormBuilder.InputfieldForm[data-pride-form="contact"] .Inputfield > .InputfieldHeader{position:static;display:block;transform:none;float:none;width:auto;height:auto;margin:0 0 8px;padding:0;line-height:1.4}
form.FormBuilder.InputfieldForm[data-pride-form="contact"] .InputfieldContent{position:static;padding:0}
form.FormBuilder.InputfieldForm[data-pride-form="contact"] input:not([type="hidden"]),form.FormBuilder.InputfieldForm[data-pride-form="contact"] select,form.FormBuilder.InputfieldForm[data-pride-form="contact"] textarea{box-sizing:border-box;width:100%;padding:12px 14px;line-height:1.5;height:auto;min-height:48px}
form.FormBuilder.InputfieldForm[data-pride-form="contact"] textarea{min-height:150px}
@media(max-width:600px){form.FormBuilder.InputfieldForm[data-pride-form="contact"] .InputfieldColumnWidth{width:100%!important;margin-left:0}}

form.FormBuilder.InputfieldForm[data-pride-form="contact"] .Inputfield input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]){padding:12px 14px;min-height:48px;height:auto}
/* Explicit CTA styles override the inherited text-link decoration. */
.text .pride-calculator a.pride-sales-cta,.text .pride-calculator a.pride-sales-cta:visited{display:inline-block;box-sizing:border-box;max-width:100%;background:#b92b23;background-clip:border-box;color:#fff;border:0;border-radius:3px;padding:15px 24px;text-decoration:none;box-shadow:none;font-weight:700;text-align:center;line-height:1.4}
.text .pride-calculator a.pride-sales-cta:hover,.text .pride-calculator a.pride-sales-cta:focus-visible{background:#173c86;background-clip:border-box;color:#fff;text-decoration:none;border:0}
.text .pride-calculator a.pride-sales-cta:focus-visible{outline:3px solid #173c86;outline-offset:4px}
.listing-summary .sold-summary .listing-img:after{content:"Sold";}
