.pixel8-gallery{--pixel8-gallery-ratio:3/2;--pixel8-gallery-fit:cover;--pixel8-gallery-radius:8px;--pixel8-gallery-accent:#333;width:100%;min-width:0}
.pixel8-gallery__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;border-radius:var(--pixel8-gallery-radius);background:#f3f3f3;scrollbar-width:thin;position:relative}
.pixel8-gallery .pixel8-gallery__slide{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always;aspect-ratio:var(--pixel8-gallery-ratio)}
.pixel8-gallery__slide>a{display:block;width:100%;height:100%}
.pixel8-gallery .pixel8-gallery__slide img{width:100%;height:100%;display:block;object-fit:var(--pixel8-gallery-fit);max-width:100%}
.pixel8-gallery__controls{display:none;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}
.pixel8-gallery[data-ready] .pixel8-gallery__controls{display:flex}
.pixel8-gallery .pixel8-gallery__controls button{border:1px solid var(--pixel8-gallery-accent);border-radius:4px;color:var(--pixel8-gallery-accent);background:transparent;font:inherit;font-size:24px;line-height:1;min-width:44px;min-height:44px;padding:8px;cursor:pointer}
.pixel8-gallery .pixel8-gallery__controls button:disabled{opacity:.35;cursor:default}
.pixel8-gallery__counter{font-variant-numeric:tabular-nums;font-size:.9em}
.pixel8-gallery__thumbnails{display:none;gap:8px;overflow-x:auto;margin-top:12px;padding:3px;scrollbar-width:thin}
.pixel8-gallery[data-ready] .pixel8-gallery__thumbnails{display:flex}
.pixel8-gallery .pixel8-gallery__thumbnails button{flex:0 0 76px;width:76px;min-height:52px;aspect-ratio:3/2;padding:0;border:2px solid transparent;border-radius:4px;background:transparent;overflow:hidden;cursor:pointer}
.pixel8-gallery .pixel8-gallery__thumbnails button[aria-current=true]{border-color:var(--pixel8-gallery-accent)}
.pixel8-gallery__thumbnails img{display:block;width:100%;height:100%;object-fit:cover}
.pixel8-gallery :is(button,a):focus-visible,.pixel8-gallery__track:focus-visible{outline:3px solid var(--pixel8-gallery-accent);outline-offset:3px}
.pixel8-documents{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:0;justify-content:center;align-items:center;}
.pixel8-documents a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid currentColor;border-radius:4px;text-decoration:none}
.pixel8-disclaimer{font-size:.875rem;line-height:1.65}
.pixel8-disclaimer p:last-child{margin-bottom:0}
.pixel8-walkaround{display:block;width:100%;min-width:0}
.pixel8-video{position:relative;width:100%;height:0;padding-top:56.25%;box-sizing:content-box;overflow:hidden}
.pixel8-video iframe{position:absolute;inset:0;display:block;width:100%;height:100%!important;min-height:0!important;max-height:none;border:0;margin:0}
.pixel8-room{margin-bottom:45px}
.pixel8-rooms .pixel8-room>h3,.pixel8-walkaround>h2,.pixel8-property-section-heading{color:#13294b;font-size:var(--pixel8-section-title-size,1.75rem);font-weight:600;line-height:1.25;margin:0 0 28px}
.pixel8-rooms .pixel8-room>h3:after,.pixel8-walkaround>h2:after,.pixel8-property-section-heading:after{content:"";display:block;width:64px;height:2px;background:#91946e;margin-top:20px}
.pixel8-room__size{font-weight:600;margin:0 0 8px}
.pixel8-editor-placeholder{padding:16px;border:1px dashed #aaa;font:14px/1.5 sans-serif;color:#555}
@media(prefers-reduced-motion:reduce){.pixel8-gallery__track{scroll-behavior:auto}}
.pixel8-property-fact{display: inline-flex;align-items: center;gap: 10px;color: #13294b}
.pixel8-property-fact svg {width: 30px;height: 30px;flex-shrink: 0}

.pixel8-property-fact__icon{display:inline-block;width:30px;height:30px;flex:0 0 30px;background-color:currentColor;-webkit-mask:center / contain no-repeat;mask:center / contain no-repeat}
.pixel8-property-fact__icon--bedrooms{-webkit-mask-image:url("icons/bedrooms.svg");mask-image:url("icons/bedrooms.svg")}
.pixel8-property-fact__icon--bathrooms{-webkit-mask-image:url("icons/bathrooms.svg");mask-image:url("icons/bathrooms.svg")}
.pixel8-property-fact__icon--rooms{-webkit-mask-image:url("icons/rooms.svg");mask-image:url("icons/rooms.svg")}

.pixel8-property-back a{display:inline-flex;align-items:center;gap:.5em;padding:10px 20px;border:1px solid #13294b;border-radius:3px;color:#13294b;background:transparent;text-decoration:none;font-size:1rem;line-height:1.4}
.pixel8-property-back a:hover,.pixel8-property-back a:focus-visible{background:#13294b;color:#fff}

.pixel8-location-map{min-width:0}
.pixel8-location-map__canvas{display:block;width:100%;height:400px;border:0}
.pixel8-location-map__links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:12px 0 0;font-size:.875rem;color:#13294b}
.pixel8-location-map__links a{color:#13294b;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.pixel8-location-map__canvas{height:300px}}

.pixel8-location-map__canvas{position:relative;z-index:0;background:#eaeae7}
.pixel8-location-map__canvas img.leaflet-marker-icon{max-width:none!important;max-height:none!important}

/* Optional Elementor wrapper classes hide the whole styled container when empty. */
body.pixel8-empty-gallery .pixel8-section-gallery,
body.pixel8-empty-essentials .pixel8-section-essentials,
body.pixel8-empty-about .pixel8-section-about,
body.pixel8-empty-video .pixel8-section-video,
body.pixel8-empty-rooms .pixel8-section-rooms,
body.pixel8-empty-map .pixel8-section-map,
body.pixel8-empty-floorplans .pixel8-section-floorplans,
body.pixel8-empty-epc .pixel8-section-epc,
body.pixel8-empty-whatsapp .pixel8-section-whatsapp,
body.pixel8-empty-fact-bedrooms .pixel8-section-fact-bedrooms,
body.pixel8-empty-fact-bathrooms .pixel8-section-fact-bathrooms,
body.pixel8-empty-fact-rooms .pixel8-section-fact-rooms,
body.pixel8-empty-tour .pixel8-section-tour,
body.pixel8-empty-price .pixel8-section-price,
body.pixel8-empty-field-address .pixel8-section-field-address,
body.pixel8-empty-field-reference .pixel8-section-field-reference,
body.pixel8-empty-field-status .pixel8-section-field-status,
body.pixel8-empty-field-type .pixel8-section-field-type,
body.pixel8-empty-field-price-raw .pixel8-section-field-price-raw,
body.pixel8-empty-field-price-per .pixel8-section-field-price-per,
body.pixel8-empty-field-price-description .pixel8-section-field-price-description,
body.pixel8-empty-field-address-1 .pixel8-section-field-address-1,
body.pixel8-empty-field-address-2 .pixel8-section-field-address-2,
body.pixel8-empty-field-location .pixel8-section-field-location,
body.pixel8-empty-field-bedrooms .pixel8-section-field-bedrooms,
body.pixel8-empty-field-bathrooms .pixel8-section-field-bathrooms,
body.pixel8-empty-field-rooms .pixel8-section-field-rooms,
body.pixel8-empty-field-description .pixel8-section-field-description,
body.pixel8-empty-field-latitude .pixel8-section-field-latitude,
body.pixel8-empty-field-longitude .pixel8-section-field-longitude{display:none!important}
.pixel8-virtual-tour{min-width:0}
.pixel8-virtual-tour iframe{display:block;width:100%;height:480px;border:0}
.pixel8-virtual-tour>p{margin:12px 0 0}
.pixel8-virtual-tour>p a{color:#13294b;text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.pixel8-virtual-tour iframe{height:320px}}

.pixel8-property-gone a{display:inline-block;background:#13294b;color:#fff;padding:12px 24px;text-decoration:none}

.pixel8-property-back{position:relative}
.pixel8-property-back .pixel8-property-print{display:none}
@media(min-width:1025px) and (hover:hover) and (pointer:fine){
.pixel8-property-back .pixel8-property-print{display:inline-flex;align-items:center;gap:7px;position:absolute;right:var(--pixel8-print-right,0px);top:50%;transform:translateY(-50%);padding:0;border:0;border-radius:0;background:transparent;color:#13294b;white-space:nowrap;text-decoration:underline;text-underline-offset:3px;font-size:.875rem}
.pixel8-property-back .pixel8-property-print:hover,.pixel8-property-back .pixel8-property-print:focus{background:transparent;color:#13294b}
}
@media print{.pixel8-property-print{display:none!important}}

.pixel8-property-print .pixel8-print-icon{display:block;flex:0 0 18px;width:18px;height:18px}

/* Keep iOS-detected address links consistent with property headings. */
body.single-property .elementor-heading-title a[x-apple-data-detectors],
body.single-property .elementor-heading-title a[href^="x-apple-data-detectors:"]{
 color:inherit!important;font:inherit!important;text-decoration:none!important;border-bottom:0!important;box-shadow:none!important
}
/* Shared polished controls; cards retain their existing single-viewport layout. */
.pixel8-gallery.pixel8-gallery--polished{--pixel8-gallery-accent:#13294b}
.pixel8-gallery.pixel8-gallery--polished .pixel8-gallery__controls button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;font-size:24px;border:1px solid #13294b33;border-radius:50%;background:#fff;color:#13294b;box-shadow:0 2px 8px #0002}
.pixel8-gallery.pixel8-gallery--polished .pixel8-gallery__controls button:hover{background:#13294b;color:#fff}
.pixel8-gallery.pixel8-gallery--polished .pixel8-gallery__counter{background:#13294b;color:#fff;border-radius:20px;padding:6px 14px;font-size:.85rem;line-height:1.4}
.pixel8-gallery.pixel8-gallery--polished .pixel8-gallery__controls button:focus-visible,.pixel8-gallery.pixel8-gallery--polished .pixel8-gallery__thumbnails button:focus-visible{outline:3px solid #91946e;outline-offset:3px}
/* Production sidebar layout, shared by the shortcode and Elementor gallery widget. */
.pixel8-gallery.pixel8-gallery--sidebar{display:grid;grid-template-areas:"photo" "thumbs";grid-template-columns:minmax(0,1fr);--pixel8-gallery-radius:0px}
.pixel8-gallery--sidebar .pixel8-gallery__track{grid-area:photo;aspect-ratio:var(--pixel8-gallery-ratio);scrollbar-width:none}
.pixel8-gallery--sidebar .pixel8-gallery__track::-webkit-scrollbar{display:none}
.pixel8-gallery--sidebar .pixel8-gallery__slide{height:100%;min-height:0}
.pixel8-gallery--sidebar .pixel8-gallery__controls{grid-area:photo;z-index:1;align-self:end;position:relative;margin:0;padding:16px;pointer-events:none}
.pixel8-gallery--sidebar .pixel8-gallery__controls button{pointer-events:auto}
.pixel8-gallery--sidebar .pixel8-gallery__thumbnails{display:flex;grid-area:thumbs;gap:10px;padding:4px;margin-top:12px}
.pixel8-gallery.pixel8-gallery--sidebar .pixel8-gallery__thumbnails button{flex:0 0 68px;width:68px;min-height:46px;border:3px solid transparent;border-radius:0;opacity:.6;transition:opacity .18s ease}
.pixel8-gallery.pixel8-gallery--sidebar .pixel8-gallery__thumbnails button:hover,.pixel8-gallery.pixel8-gallery--sidebar .pixel8-gallery__thumbnails button[aria-current=true]{opacity:1}
.pixel8-gallery.pixel8-gallery--sidebar .pixel8-gallery__thumbnails button[aria-current=true]{border-color:#91946e}
@media(min-width:768px){
.pixel8-gallery--sidebar.has-thumbnails{grid-template-areas:"thumbs photo";grid-template-columns:100px minmax(0,1fr);gap:14px}
.pixel8-gallery--sidebar.has-thumbnails .pixel8-gallery__thumbnails{flex-direction:column;height:0;min-height:100%;margin:0;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}
.pixel8-gallery.pixel8-gallery--sidebar.has-thumbnails .pixel8-gallery__thumbnails button{flex:0 0 62px;width:88px;min-height:62px}
}
@media(max-width:767px){.pixel8-gallery--sidebar .pixel8-gallery__controls{padding:10px}}
@media(prefers-reduced-motion:reduce){.pixel8-gallery.pixel8-gallery--sidebar .pixel8-gallery__thumbnails button{transition:none}}

.pixel8-property-address-mobile{display:none}
@media(max-width:767px){.pixel8-property-address-desktop{display:none}.pixel8-property-address-mobile{display:inline}}

.pixel8-property-back{display:flex;justify-content:center;align-items:center;width:100%;box-sizing:border-box;min-width:0}
.pixel8-property-back a:not(.pixel8-property-print),.pixel8-property-back a:not(.pixel8-property-print):hover,.pixel8-property-back a:not(.pixel8-property-print):focus-visible{display:inline-flex;gap:18px;padding:5px 0 7px;border:0;border-bottom:1px solid #91946e;border-radius:0;background:transparent;color:#c05131;text-decoration:none;font-size:1rem;line-height:1.5}
.pixel8-property-back a:not(.pixel8-property-print):hover{color:#a33e24}
.pixel8-property-back a:focus-visible{outline:2px solid #13294b;outline-offset:4px}
.pixel8-property-back .pixel8-link-arrow{width:18px;height:18px;flex:0 0 18px}
.pixel8-property-back .pixel8-property-print,.pixel8-property-back .pixel8-property-print:hover,.pixel8-property-back .pixel8-property-print:focus{color:#c05131;background:transparent;text-decoration:none;border-bottom:1px solid #91946e;padding-bottom:7px}
@media(min-width:768px){.pixel8-property-back{justify-content:flex-start}.pixel8-property-back>a:not(.pixel8-property-print){position:relative;left:var(--pixel8-back-left,0px)}}

.pixel8-rooms .pixel8-room>h3{font-size:calc(var(--pixel8-section-title-size,1.75rem) * .9)}

/* The three separate Elementor headings form one compact, centred facts row. */
@media(max-width:1024px){
 .elementor .elementor-element:is(.e-grid,.e-flex):has(> .elementor-widget-heading .pixel8-property-fact){display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:16px clamp(20px,5vw,36px)!important}
 .elementor .elementor-element:is(.e-grid,.e-flex):has(> .elementor-widget-heading .pixel8-property-fact)> .elementor-widget-heading{flex:0 0 auto!important;width:auto!important;max-width:100%;margin:0!important;--container-widget-width:auto;--container-widget-flex-grow:0}
 .elementor-widget-heading:has(.pixel8-property-fact) .elementor-heading-title{margin:0;line-height:1.2;text-align:center}
 .elementor-widget-heading .pixel8-property-fact{gap:8px;white-space:nowrap;vertical-align:middle}
}
/* Prevent a saved Elementor height/flex setting squeezing the responsive video. */
.elementor .e-con:has(> .elementor-widget-shortcode .pixel8-walkaround),
.elementor .e-con:has(> .e-con-inner > .elementor-widget-shortcode .pixel8-walkaround){height:auto!important;max-height:none!important;--height:auto;--min-height:0px}
.elementor .elementor-widget-shortcode:has(.pixel8-walkaround){width:100%;min-width:0;height:auto!important;flex-shrink:0}
.elementor .elementor-widget-shortcode:has(.pixel8-walkaround) .elementor-shortcode{width:100%;min-width:0}

.pixel8-whatsapp-button.pixel8-whatsapp-button{display:inline-block;max-width:100%;padding:0;border:0;border-radius:0;background:transparent;line-height:0;text-decoration:none;box-shadow:none}
.pixel8-whatsapp-button.pixel8-whatsapp-button:hover,.pixel8-whatsapp-button.pixel8-whatsapp-button:focus{background:transparent;border:0;text-decoration:none;box-shadow:none}
.pixel8-whatsapp-button.pixel8-whatsapp-button:focus-visible{outline:2px solid #13294b;outline-offset:4px}
.pixel8-whatsapp-button img{display:block;width:175px;max-width:100%;height:auto;margin:0;mix-blend-mode:multiply}
