{"id":1920,"date":"2026-03-19T12:38:16","date_gmt":"2026-03-19T12:38:16","guid":{"rendered":"https:\/\/www.russell-decoz.com\/single-property\/"},"modified":"2026-03-19T12:38:16","modified_gmt":"2026-03-19T12:38:16","slug":"single-property","status":"publish","type":"page","link":"https:\/\/www.russell-decoz.com\/fr\/single-property\/","title":{"rendered":"Single Property"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1920\" class=\"elementor elementor-1920 elementor-719\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b6d6912 e-flex e-con-boxed e-con e-parent\" data-id=\"b6d6912\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-08ce661 elementor-widget elementor-widget-html\" data-id=\"08ce661\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/swiper@11\/swiper-bundle.min.css\">\r\n<link rel=\"stylesheet\" href=\"https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.css\">\r\n<style>\r\n\r\n  :root {\r\n    --color-primary: #C91D1D;\r\n    --color-secondary: #FABB0F;\r\n    --color-text: #374151;\r\n    --color-title: #111827;\r\n    --color-accent: #FEF8E6;\r\n    --clr-accent: #c0392b;\r\n    --clr-text: #1a1a1a;\r\n    --clr-address: #c0392b;\r\n    --clr-bg: #f4f2ee;\r\n    --clr-card: #ffffff;\r\n    --clr-divider: #eaeaea;\r\n    --ff-primary: \"Cormorant Garamond\", Sans-serif;\r\n    --ff-secondary: \"Montserrat\", Sans-serif;\r\n    --sidebar-w: 390px;\r\n  }\r\n\r\n  \/* \u2500\u2500 PAGE \u2500\u2500 *\/\r\n  .page {\r\n    margin: 0 auto;\r\n  }\r\n\r\n  \/* \u2500\u2500 BREADCRUMB \u2500\u2500 *\/\r\n  .breadcrumb {\r\n    display: flex; align-items: center; gap: 6px;\r\n    font-family: var(--ff-secondary);\r\n    font-size: 0.8rem; font-weight: 600;\r\n    letter-spacing: .07em; text-transform: uppercase;\r\n    color: var(--color-text); opacity: .7;\r\n    margin-bottom: 20px;\r\n  }\r\n  .breadcrumb a { color: inherit; text-decoration: none; }\r\n  .breadcrumb a:hover { color: var(--color-primary); opacity: 1; }\r\n  .breadcrumb .sep { color: var(--color-primary); opacity: 1; }\r\n  .breadcrumb .cur { color: var(--color-primary); opacity: 1; }\r\n\r\n  \/* \u2500\u2500 PROP HEADER (above gallery) \u2500\u2500 *\/\r\n  .prop-header {\r\n    display: flex;\r\n    align-items: flex-start;\r\n    justify-content: space-between;\r\n    gap: 20px;\r\n    margin-bottom: 20px;\r\n    flex-wrap: wrap;\r\n  }\r\n  .prop-header-left { flex: 1; min-width: 260px; }\r\n  .prop-ref {\r\n    font-family: var(--ff-secondary);\r\n    font-size: 0.85rem; font-weight: 700; letter-spacing: .15em;\r\n    text-transform: uppercase; color: var(--color-primary); margin-bottom: 8px;\r\n  }\r\n  .prop-title {\r\n    font-family: var(--ff-primary);\r\n    font-size: clamp(1.6rem, 2.8vw, 2.8rem);\r\n    font-weight: 300; line-height: 1.18;\r\n    text-wrap: pretty;\r\n    color: var(--color-title); margin-bottom: 10px;\r\n  }\r\n  .prop-location {\r\n    display: flex; align-items: center; gap: 6px;\r\n    font-family: var(--ff-secondary); font-size: 0.78rem; font-weight: 600;\r\n    color: var(--clr-address);\r\n  }\r\n  .prop-location svg { flex-shrink: 0; }\r\n\r\n  \/* Brochure button (top-right of header) *\/\r\n  .btn-brochure-top {\r\n    display: inline-flex; align-items: center; gap: 8px;\r\n    padding: 11px 20px;\r\n    border: 1px solid var(--color-primary);\r\n    background: transparent; cursor: pointer; text-decoration: none;\r\n    font-family: var(--ff-secondary); font-size: 0.68rem; font-weight: 500;\r\n    letter-spacing: .1em; text-transform: uppercase; color: var(--color-primary);\r\n    white-space: nowrap; align-self: flex-start;\r\n    transition: background .2s, color .2s;\r\n    margin: auto 0;\r\n  }\r\n  .btn-brochure-top:hover { background: var(--color-primary); color: white; }\r\n  .btn-brochure-top svg { transition: stroke .2s; }\r\n  .btn-brochure-top:hover svg { stroke: white; }\r\n\r\n  \/* \u2500\u2500 GALLERY \u2500\u2500 *\/\r\n  .gallery-section { margin-bottom: 30px; }\r\n\r\n  .swiper-main {\r\n    overflow: hidden; position: relative;\r\n  }\r\n  .swiper-main .swiper-slide {\r\n    aspect-ratio: 16\/8; overflow: hidden;\r\n  }\r\n  .swiper-main .swiper-slide img {\r\n    width: 100%; height: 100%; object-fit: cover; display: block;\r\n  }\r\n\r\n  \/* Nav buttons *\/\r\n  .swiper-main .swiper-button-prev,\r\n  .swiper-main .swiper-button-next {\r\n    width: 42px; height: 42px;\r\n    background: rgba(255,255,255,.93);\r\n    color: var(--color-text);\r\n    box-shadow: 0 2px 12px rgba(0,0,0,.2);\r\n    transition: background .2s, transform .2s;\r\n  }\r\n  .swiper-main .swiper-button-prev:hover,\r\n  .swiper-main .swiper-button-next:hover {\r\n   transform: scale(1.05);\r\n  }\r\n  .swiper-main .swiper-button-prev::after,\r\n  .swiper-main .swiper-button-next::after { font-size: .9rem; font-weight: 900;     color: var(--color-text);\r\n}\r\n\r\n  \/* Pagination *\/\r\n  .swiper-main .swiper-pagination-bullet {\r\n    background: white; opacity: .55; width: 7px; height: 7px;\r\n  }\r\n  .swiper-main .swiper-pagination-bullet-active {\r\n    background: var(--color-secondary); opacity: 1;\r\n    width: 24px; border-radius: 3px; transition: width .3s;\r\n  }\r\n\r\n  \/* Overlays *\/\r\n  .slide-badge {\r\n    position: absolute; top: 16px; left: 16px; z-index: 10;\r\n    background: var(--color-primary); color: white;\r\n    font-family: var(--ff-secondary);\r\n    font-size: 0.6rem; font-weight: 700; letter-spacing: .14em;\r\n    text-transform: uppercase; padding: 5px 14px;\r\n  }\r\n  .slide-counter {\r\n    position: absolute; bottom: 52px; right: 16px; z-index: 10;\r\n    background: rgba(0,0,0,.52); color: white;\r\n    backdrop-filter: blur(6px);\r\n    font-family: var(--ff-secondary); font-size: 0.7rem; font-weight: 500;\r\n    padding: 4px 12px;\r\n  }\r\n\r\n  \/* Thumbs *\/\r\n  .swiper-thumbs { overflow: hidden; }\r\n  .swiper-thumbs .swiper-slide {\r\n    aspect-ratio: 4\/3; overflow: hidden;\r\n    cursor: pointer; opacity: .58;\r\n    transition: opacity .25s;\r\n  }\r\n  .swiper-thumbs .swiper-slide-thumb-active { opacity: 1; }\r\n  .swiper-thumbs .swiper-slide img {\r\n    width: 100%; height: 100%; object-fit: cover; display: block;\r\n    transition: transform .35s;\r\n  }\r\n  .swiper-thumbs .swiper-slide:hover img { transform: scale(1.08); }\r\n\r\n  \/* \u2500\u2500 CONTENT LAYOUT \u2500\u2500 *\/\r\n  .content-layout {\r\n    display: grid;\r\n    grid-template-columns: 1fr var(--sidebar-w);\r\n    gap: 3.5rem;\r\n    align-items: start;\r\n  }\r\n\r\n  \/* \u2500\u2500 STATS BAR \u2500\u2500 *\/\r\n  .stats-bar {\r\n    display: flex; flex-wrap: wrap;\r\n    background: var(--clr-card);\r\n    border: 1px solid var(--clr-divider);\r\n    overflow: hidden; margin-bottom: 28px;\r\n  }\r\n  .stat {\r\n    flex: 1; min-width: 88px;\r\n    padding: 14px 10px;\r\n    display: flex; flex-direction: column;\r\n    align-items: center; gap: 6px; text-align: center;\r\n    border-right: 1px solid var(--clr-divider);\r\n  }\r\n  .stat:last-child { border-right: none; }\r\n  .stat-icon { color: var(--color-primary); display: flex; }\r\n  .stat-icon svg{\r\n    width: 24px;\r\n    height: 24px;\r\n  }\r\n  .stat-lbl {\r\n    font-family: var(--ff-secondary); font-size: 0.75rem;\r\n    text-transform: uppercase; letter-spacing: .08em;\r\n    color: var(--color-text); opacity: .6;\r\n  }\r\n  .stat-val {\r\n    font-family: var(--ff-secondary); font-size: 0.9rem;\r\n    font-weight: 500; color: var(--color-title);\r\n  }\r\n\r\n  \/* \u2500\u2500 SECTION \u2500\u2500 *\/\r\n  .section { margin-bottom: 32px; }\r\n  .section-title {\r\n    font-family: var(--ff-primary);\r\n    font-size: 2.5rem; font-weight: 300;\r\n    color: var(--color-title);\r\n    margin-bottom: 2.5rem; padding-bottom: 10px;\r\n    position: relative;\r\n  }\r\n  .section-title::after {\r\n    content: ''; position: absolute;\r\n    bottom: -2px; left: 0;\r\n    width: 4rem; height: 1px;\r\n    background: var(--color-primary);\r\n  }\r\n\r\n  \/* \u2500\u2500 DESCRIPTION \u2500\u2500 *\/\r\n  .desc-text {\r\n    font-family: var(--ff-secondary);\r\n    font-size: 1rem; line-height: 1.88; color: var(--color-text);\r\n  }\r\n  .desc-text p { margin-bottom: 12px; }\r\n  .desc-extra { display: none; }\r\n  .desc-extra.open { display: block; }\r\n  .read-more {\r\n    background: none; border: none; cursor: pointer;\r\n    font-family: var(--ff-secondary); font-size: 0.8rem; font-weight: 700;\r\n    text-transform: uppercase; letter-spacing: .07em;\r\n    color: var(--color-primary); display: inline-flex; align-items: center;\r\n    gap: 5px; padding: 0; margin-top: 2px; transition: opacity .2s;\r\n  }\r\n  .read-more:hover { opacity: .7; }\r\n\r\n  \/* \u2500\u2500 FEATURES \u2500\u2500 *\/\r\n  .features-grid {\r\n    display: grid;\r\n    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\r\n    gap: 8px;\r\n  }\r\n  .feat {\r\n    display: flex; align-items: center; gap: 9px;\r\n    padding: 9px 13px;\r\n    background: var(--clr-card);\r\n    border: 1px solid var(--clr-divider);\r\n    font-family: var(--ff-secondary); font-size: 1rem; color: var(--color-text);\r\n    transition: border-color .2s, box-shadow .2s;\r\n  }\r\n  .feat:hover {\r\n    border-color: var(--color-primary);\r\n    box-shadow: 0 2px 10px rgba(201,29,29,.08);\r\n  }\r\n  .feat-dot {\r\n    width: 6px; height: 6px;\r\n    background: var(--color-secondary); flex-shrink: 0;\r\n  }\r\n\r\n  \/* \u2500\u2500 VIDEO SECTION \u2500\u2500 *\/\r\n  .video-wrap {\r\n    position: relative; width: 100%;\r\n    aspect-ratio: 16\/9;\r\n    background: var(--color-title);\r\n    overflow: hidden;\r\n  }\r\n  .video-wrap iframe {\r\n    position: absolute; inset: 0;\r\n    width: 100%; height: 100%; border: none; display: block;\r\n  }\r\n  \/* Placeholder if no video yet *\/\r\n  .video-placeholder {\r\n    position: absolute; inset: 0;\r\n    display: flex; flex-direction: column;\r\n    align-items: center; justify-content: center;\r\n    gap: 16px; color: rgba(255,255,255,.7);\r\n    background: linear-gradient(135deg, #1a1a18 0%, #2d2b28 100%);\r\n  }\r\n  .video-placeholder svg { opacity: .5; }\r\n  .video-play-btn {\r\n    width: 68px; height: 68px;\r\n    background: var(--color-primary);\r\n    display: flex; align-items: center; justify-content: center;\r\n    cursor: pointer; transition: transform .2s, background .2s;\r\n  }\r\n  .video-play-btn:hover { background: #a01515; transform: scale(1.08); }\r\n  .video-lbl {\r\n    font-family: var(--ff-secondary); font-size: 0.75rem; font-weight: 600;\r\n    letter-spacing: .1em; text-transform: uppercase;\r\n  }\r\n\r\n  \/* \u2500\u2500 MAP \u2500\u2500 *\/\r\n  #map {\r\n    width: 100%; height: 500px;\r\n    border: 1px solid var(--clr-divider);\r\n    z-index: 0; position: relative;\r\n  }\r\n  \/* Custom Leaflet popup *\/\r\n  .leaflet-popup-content-wrapper {\r\n    border-radius: 0 !important;\r\n    font-family: var(--ff-secondary) !important;\r\n    font-size: 0.8rem !important;\r\n    padding: 0 !important;\r\n    overflow: hidden;\r\n    box-shadow: 0 6px 24px rgba(0,0,0,.18) !important;\r\n    min-width: 200px;\r\n  }\r\n  .leaflet-popup-content { margin: 0 !important; }\r\n  .popup-header {\r\n    background: var(--color-title); padding: 10px 14px;\r\n  }\r\n  .popup-ref {\r\n    font-size: 0.6rem; font-weight: 700; letter-spacing: .12em;\r\n    text-transform: uppercase; color: var(--color-primary); margin-bottom: 3px;\r\n  }\r\n  .popup-title {\r\n    font-family: var(--ff-primary); font-size: 0.95rem;\r\n    font-weight: 400; color: white; line-height: 1.25;\r\n  }\r\n  .popup-body { padding: 10px 14px; background: white; }\r\n  .popup-loc {\r\n    font-size: 0.7rem; color: var(--color-text);\r\n    display: flex; align-items: center; gap: 4px; margin-bottom: 8px;\r\n  }\r\n  .popup-price {\r\n    font-family: var(--ff-primary); font-size: 1.15rem; font-weight: 600;\r\n    color: var(--color-primary); padding-top: 6px;\r\n    border-top: 1px solid var(--clr-divider);\r\n  }\r\n  \/* Custom marker pin *\/\r\n  .custom-marker {\r\n    width: 36px; height: 44px; position: relative;\r\n    display: flex; align-items: flex-start; justify-content: center;\r\n  }\r\n  .marker-pin {\r\n    width: 36px; height: 36px;\r\n    background: var(--color-primary);\r\n    display: flex; align-items: center; justify-content: center;\r\n    box-shadow: 0 3px 14px rgba(201,29,29,.4);\r\n    clip-path: polygon(0% 0%, 100% 0%, 100% 75%, 55% 75%, 50% 100%, 45% 75%, 0% 75%);\r\n  }\r\n\r\n  \/* \u2500\u2500 SIDEBAR \u2500\u2500 *\/\r\n  .sidebar { position: sticky; top: 150px; }\r\n\r\n  \/* Price card *\/\r\n  .price-card {\r\n    background: var(--clr-card);\r\n    border: 1px solid var(--clr-divider);\r\n    overflow: hidden; margin-bottom: 14px;\r\n    box-shadow: 0 4px 28px rgba(0,0,0,.07);\r\n  }\r\n  .price-head {\r\n    background: var(--color-title); padding: 20px 22px;\r\n    display: flex; justify-content: space-between; align-items: flex-start;\r\n  }\r\n  .price-lbl {\r\n    font-family: var(--ff-secondary); font-size: 0.65rem;\r\n    text-transform: uppercase; letter-spacing: .14em;\r\n    color: rgba(255,255,255); margin-bottom: 4px;\r\n  }\r\n  .price-val {\r\n    font-family: var(--ff-primary);\r\n    font-size: 2rem; font-weight: 600; color: white; line-height: 1;\r\n  }\r\n  .price-tag {\r\n    background: var(--color-primary); color: white;\r\n    font-family: var(--ff-secondary); font-size: 0.58rem; font-weight: 700;\r\n    letter-spacing: .12em; text-transform: uppercase;\r\n    padding: 5px 12px; white-space: nowrap; margin-top: 4px;\r\n  }\r\n  .price-body { padding: 20px 22px; }\r\n  .form-heading {\r\n    font-family: var(--ff-primary); font-size: 1.2rem; font-weight: 600;\r\n    color: var(--color-title); margin-bottom: 16px;\r\n  }\r\n\r\n  \/* Form *\/\r\n  .cform { display: flex; flex-direction: column; gap: 10px; }\r\n  .frow { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }\r\n  .fgrp { display: flex; flex-direction: column; gap: 4px; }\r\n  .fgrp label {\r\n    font-family: var(--ff-secondary); font-size: 0.58rem; font-weight: 700;\r\n    text-transform: uppercase; letter-spacing: .09em;\r\n    color: var(--color-text); opacity: .6;\r\n  }\r\n  .fgrp input,\r\n  .fgrp textarea {\r\n    padding: 10px 12px;\r\n    border: 1px solid var(--clr-divider);\r\n    font-family: var(--ff-secondary); font-size: 0.82rem;\r\n    color: var(--color-title); background: var(--clr-bg);\r\n    outline: none; transition: border-color .2s, background .2s;\r\n  }\r\n  .fgrp input:focus,\r\n  .fgrp textarea:focus { border-color: var(--color-primary); background: white; }\r\n  .fgrp textarea { resize: vertical; min-height: 76px; }\r\n  .fcheck {\r\n    display: flex; align-items: flex-start; gap: 8px;\r\n    font-family: var(--ff-secondary); font-size: 0.7rem;\r\n    color: var(--color-text); line-height: 1.45;\r\n  }\r\n  .fcheck input { margin-top: 2px; accent-color: var(--color-primary); flex-shrink: 0; }\r\n  .fcheck a { color: var(--color-primary); }\r\n  .btn-send {\r\n    background: var(--color-primary); color: white;\r\n    border: none; padding: 13px 20px;\r\n    font-family: var(--ff-secondary); font-size: 0.74rem; font-weight: 700;\r\n    letter-spacing: .1em; text-transform: uppercase;\r\n    width: 100%; cursor: pointer;\r\n    transition: background .2s, transform .1s;\r\n  }\r\n  .btn-send:hover { background: var(--color-title); }\r\n  .btn-send:active { transform: scale(.98); }\r\n\r\n  \/* Agent *\/\r\n  .agent-card {\r\n    background: var(--clr-card); border: 1px solid var(--clr-divider);\r\n    padding: 16px 18px;\r\n    display: flex; gap: 14px; align-items: center; margin-bottom: 12px;\r\n  }\r\n  .agent-av {\r\n    width: 50px; height: 50px; flex-shrink: 0;\r\n    background: linear-gradient(135deg, var(--color-primary), var(--color-title));\r\n    display: flex; align-items: center; justify-content: center;\r\n    color: white; font-family: var(--ff-primary); font-size: 1.4rem; font-weight: 600;\r\n  }\r\n  .agent-name {\r\n    font-family: var(--ff-secondary); font-size: 0.88rem;\r\n    font-weight: 700; color: var(--color-title); margin-bottom: 2px;\r\n  }\r\n  .agent-role {\r\n    font-family: var(--ff-secondary); font-size: 0.65rem; font-weight: 500;\r\n    color: var(--color-text); opacity: .55; margin-bottom: 6px;\r\n    text-transform: uppercase; letter-spacing: .06em;\r\n  }\r\n  .agent-tel {\r\n    display: inline-flex; align-items: center; gap: 6px;\r\n    font-family: var(--ff-secondary); font-size: 0.78rem; font-weight: 700;\r\n    color: var(--color-primary); text-decoration: none; transition: opacity .2s;\r\n  }\r\n  .agent-tel:hover { opacity: .75; }\r\n\r\n  \/* \u2500\u2500 RESPONSIVE \u2500\u2500 *\/\r\n  @media (max-width: 1024px) { :root { --sidebar-w: 310px; } }\r\n  @media (max-width: 860px) {\r\n    .content-layout { grid-template-columns: 1fr; }\r\n    .sidebar { position: static; }\r\n    .swiper-main .swiper-slide { aspect-ratio: 16\/10; }\r\n    .prop-header { flex-direction: column; gap: 14px; }\r\n    .btn-brochure-top { align-self: flex-start; }\r\n  }\r\n  @media (max-width: 580px) {\r\n    .stats-bar { flex-direction: column; }\r\n    .stat {\r\n      flex-direction: row; justify-content: flex-start;\r\n      text-align: left; border-right: none;\r\n      border-bottom: 1px solid var(--clr-divider);\r\n    }\r\n    .stat:last-child { border-bottom: none; }\r\n    .frow { grid-template-columns: 1fr; }\r\n    .features-grid { grid-template-columns: 1fr 1fr; }\r\n    .page { padding: 14px 14px 48px; }\r\n    .swiper-main .swiper-slide { aspect-ratio: 4\/3; }\r\n  }\r\n\r\n  \/* Fade-in *\/\r\n  .fade { opacity: 0; transform: translateY(14px); transition: opacity .5s ease, transform .5s ease; }\r\n  .fade.in { opacity: 1; transform: translateY(0); }\r\n<\/style>\r\n\r\n<div class=\"page\">\r\n\r\n  <!-- BREADCRUMB -->\r\n  <div class=\"breadcrumb fade\">\r\n    <a href=\"#\">Home<\/a><span class=\"sep\">\u203a<\/span>\r\n    <a href=\"#\">Properties<\/a><span class=\"sep\">\u203a<\/span>\r\n    <span class=\"cur\">Elegant Luxury Villa<\/span>\r\n  <\/div>\r\n\r\n  <!-- \u2500\u2500 PROP HEADER \u2014 above gallery \u2500\u2500 -->\r\n  <div class=\"prop-header fade\">\r\n    <div class=\"prop-header-left\">\r\n      <div class=\"prop-ref\">HOME2443V<\/div>\r\n      <h1 class=\"prop-title\">Elegant 5-Bedroom Luxury Villa with Pool & Sea Views near Tavira<\/h1>\r\n      <div class=\"prop-location\">\r\n        <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\">\r\n          <path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"\/>\r\n          <circle cx=\"12\" cy=\"10\" r=\"3\"\/>\r\n        <\/svg>\r\n        Tavira, Algarve\r\n      <\/div>\r\n    <\/div>\r\n    <!-- Brochure button aligned top-right -->\r\n    <a href=\"#\" class=\"btn-brochure-top\">\r\n      <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\">\r\n        <path d=\"M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4\"\/>\r\n        <polyline points=\"7 10 12 15 17 10\"\/>\r\n        <line x1=\"12\" y1=\"15\" x2=\"12\" y2=\"3\"\/>\r\n      <\/svg>\r\n      Download Brochure\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <!-- \u2500\u2500 GALLERY \u2500\u2500 -->\r\n  <div class=\"gallery-section fade\">\r\n    <div class=\"swiper swiper-main\" id=\"sMain\">\r\n      <div class=\"swiper-wrapper\">\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-e6dc9fe2-8ba6-4b3f-8e68-9da8223483c4.jpg\" alt=\"Exterior\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-cf384570-b283-47a0-bc2d-012ee8e78acd.jpg\" alt=\"Living room\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-2c2b839a-3ad3-4643-991f-13303b4071ce.jpg\" alt=\"Kitchen\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-59f02f66-9066-4f0a-975e-9ab27965e26c.jpg\" alt=\"Master bedroom\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-ddebc631-0292-4d4f-91ca-5b50245053fd.jpg\" alt=\"Garden\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-16c83233-0628-411d-b2e3-8dd2effe92f3.jpg\" alt=\"Sea view\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-d2ad146f-b3d1-453e-80fb-9acd956cbb6b.jpg\" alt=\"Terrace\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-6e3ac090-f6bf-43ae-9c01-f0969f8fe5fc.jpg\" alt=\"Facade\"><\/div>\r\n      <\/div>\r\n      <div class=\"swiper-button-prev\"><\/div>\r\n      <div class=\"swiper-button-next\"><\/div>\r\n      <div class=\"swiper-pagination\"><\/div>\r\n      <span class=\"slide-badge\">HOME2443V<\/span>\r\n      <span class=\"slide-counter\" id=\"counter\">1 \/ 8<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"swiper swiper-thumbs\" id=\"sThumbs\">\r\n      <div class=\"swiper-wrapper\">\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-e6dc9fe2-8ba6-4b3f-8e68-9da8223483c4.jpg\" alt=\"\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-cf384570-b283-47a0-bc2d-012ee8e78acd.jpg\" alt=\"\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-2c2b839a-3ad3-4643-991f-13303b4071ce.jpg\" alt=\"\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-59f02f66-9066-4f0a-975e-9ab27965e26c.jpg\" alt=\"\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-ddebc631-0292-4d4f-91ca-5b50245053fd.jpg\" alt=\"\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-16c83233-0628-411d-b2e3-8dd2effe92f3.jpg\" alt=\"\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-d2ad146f-b3d1-453e-80fb-9acd956cbb6b.jpg\" alt=\"\"><\/div>\r\n        <div class=\"swiper-slide\"><img decoding=\"async\" src=\"https:\/\/cdnp.proppy.app\/i\/n\/1846\/3185\/1846-3185-a44879f1a94658ab7e008588b1aebec0d7ac7697b612309b6e26d99431b98f56-6e3ac090-f6bf-43ae-9c01-f0969f8fe5fc.jpg\" alt=\"\"><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div><!-- \/gallery-section -->\r\n\r\n  <!-- \u2500\u2500 MAIN CONTENT \u2500\u2500 -->\r\n  <div class=\"content-layout\">\r\n\r\n    <!-- LEFT COLUMN -->\r\n    <div>\r\n\r\n      <!-- Stats bar -->\r\n      <div class=\"stats-bar fade\">\r\n        <div class=\"stat\">\r\n          <span class=\"stat-icon\">\r\n            <svg width=\"16\" height=\"10\" viewBox=\"0 0 16 10\" fill=\"none\"><path d=\"M0 9.625V3.5H0.875V0H14.875V3.5H15.75V9.625H14.875V7.875H0.875V9.625H0ZM8.3125 3.5H14V0.875H8.3125V3.5ZM1.75 3.5H7.4375V0.875H1.75V3.5ZM0.875 7H14.875V4.375H0.875V7Z\" fill=\"currentColor\"><\/path><\/svg>\r\n          <\/span>\r\n          <span class=\"stat-lbl\">Bedrooms<\/span>\r\n          <span class=\"stat-val\">5<\/span>\r\n        <\/div>\r\n        <div class=\"stat\">\r\n          <span class=\"stat-icon\">\r\n            <svg width=\"16\" height=\"15\" viewBox=\"0 0 16 15\" fill=\"none\"><path d=\"M0 10.0288V9.15381H4.30763V7.4375H1.75V6.5625H5.18263V9.15381H7.4375V3.11631C7.4375 2.24219 7.74032 1.50427 8.34597 0.902563C8.95147 0.300854 9.68946 0 10.5599 0C11.1404 0 11.6812 0.152541 12.1826 0.457625C12.6841 0.762854 13.0656 1.18242 13.3269 1.71631L14.1144 3.30816L13.3302 3.70869L12.5261 2.1C12.3305 1.7271 12.0551 1.42975 11.6998 1.20794C11.3444 0.985978 10.9624 0.875 10.5538 0.875C9.93125 0.875 9.40202 1.09288 8.96613 1.52863C8.53038 1.96452 8.3125 2.49375 8.3125 3.11631V9.15381H10.5674V6.5625H14V7.4375H11.4424V9.15381H15.75V10.0288H0ZM1.75 14.875V10.0288H2.625V14H13.125V10.0288H14V14.875H1.75Z\" fill=\"currentColor\"><\/path><\/svg>\r\n          <\/span>\r\n          <span class=\"stat-lbl\">Bathrooms<\/span>\r\n          <span class=\"stat-val\">5<\/span>\r\n        <\/div>\r\n        <div class=\"stat\">\r\n          <span class=\"stat-icon\">\r\n            <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\r\n              <rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"0\"\/><path d=\"M3 9h18M9 21V9\"\/>\r\n            <\/svg>\r\n          <\/span>\r\n          <span class=\"stat-lbl\">Living Area<\/span>\r\n          <span class=\"stat-val\">270 m\u00b2<\/span>\r\n        <\/div>\r\n        <div class=\"stat\">\r\n          <span class=\"stat-icon\">\r\n            <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\r\n              <polygon points=\"12 2 2 7 12 12 22 7 12 2\"\/><polyline points=\"2 17 12 22 22 17\"\/><polyline points=\"2 12 12 17 22 12\"\/>\r\n            <\/svg>\r\n          <\/span>\r\n          <span class=\"stat-lbl\">Plot Area<\/span>\r\n          <span class=\"stat-val\">1787 m\u00b2<\/span>\r\n        <\/div>\r\n        <div class=\"stat\">\r\n          <span class=\"stat-icon\">\r\n            <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\r\n              <circle cx=\"12\" cy=\"12\" r=\"5\"\/><line x1=\"12\" y1=\"1\" x2=\"12\" y2=\"3\"\/><line x1=\"12\" y1=\"21\" x2=\"12\" y2=\"23\"\/><line x1=\"4.22\" y1=\"4.22\" x2=\"5.64\" y2=\"5.64\"\/><line x1=\"18.36\" y1=\"18.36\" x2=\"19.78\" y2=\"19.78\"\/><line x1=\"1\" y1=\"12\" x2=\"3\" y2=\"12\"\/><line x1=\"21\" y1=\"12\" x2=\"23\" y2=\"12\"\/><line x1=\"4.22\" y1=\"19.78\" x2=\"5.64\" y2=\"18.36\"\/><line x1=\"18.36\" y1=\"5.64\" x2=\"19.78\" y2=\"4.22\"\/>\r\n            <\/svg>\r\n          <\/span>\r\n          <span class=\"stat-lbl\">Energy Rating<\/span>\r\n          <span class=\"stat-val energy\">A<\/span>\r\n        <\/div>\r\n        <div class=\"stat\">\r\n          <span class=\"stat-icon\">\r\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"currentColor\" class=\"bi bi-p-circle-fill\" viewBox=\"0 0 16 16\" id=\"P-Circle-Fill--Streamline-Bootstrap\">\r\n                <desc>\r\n                  P Circle Fill Streamline Icon: https:\/\/streamlinehq.com\r\n                <\/desc>\r\n                <path d=\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.5 4.002V12h1.283V9.164h1.668C10.033 9.164 11 8.08 11 6.586c0 -1.482 -0.955 -2.584 -2.538 -2.584zm2.77 4.072c0.893 0 1.419 -0.545 1.419 -1.488s-0.526 -1.482 -1.42 -1.482H6.778v2.97z\" stroke-width=\"1\"><\/path>\r\n              <\/svg>\r\n          <\/span>\r\n          <span class=\"stat-lbl\">Garage<\/span>\r\n          <span class=\"stat-val\">Yes<\/span>\r\n        <\/div>\r\n        <div class=\"stat\">\r\n          <span class=\"stat-icon\">\r\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewBox=\"0 0 24 24\" id=\"Swimming-Pool-Stairs--Streamline-Ultimate\">\r\n                <desc>\r\n                  Swimming Pool Stairs Streamline Icon: https:\/\/streamlinehq.com\r\n                <\/desc>\r\n                <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M0.75 22.8139c1.06668 0.4301 2.23439 0.545 3.36444 0.3311 1.13005 -0.214 2.17494 -0.7478 3.01056 -1.5381 1.11433 1.055 2.5905 1.6429 4.125 1.6429s3.0107 -0.5879 4.125 -1.6429c1.0521 0.9959 2.429 1.5775 3.8765 1.6374 1.4474 0.06 2.8677 -0.4058 3.9985 -1.3114\" stroke-width=\"1.5\"><\/path>\r\n                <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M17.25 18.75v-15c0 -0.79565 0.3161 -1.55871 0.8787 -2.12132C18.6913 1.06607 19.4544 0.75 20.25 0.75c0.7956 0 1.5587 0.31607 2.1213 0.87868 0.5626 0.56261 0.8787 1.32567 0.8787 2.12132\" stroke-width=\"1.5\"><\/path>\r\n                <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M8.25 18.75v-15c0 -0.79565 0.31607 -1.55871 0.87868 -2.12132C9.69129 1.06607 10.4544 0.75 11.25 0.75c0.7956 0 1.5587 0.31607 2.1213 0.87868 0.5626 0.56261 0.8787 1.32567 0.8787 2.12132\" stroke-width=\"1.5\"><\/path>\r\n                <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M8.25 11.25h9\" stroke-width=\"1.5\"><\/path>\r\n                <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M8.25 15.75h9\" stroke-width=\"1.5\"><\/path>\r\n                <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M8.25 6.75h9\" stroke-width=\"1.5\"><\/path>\r\n              <\/svg>\r\n          <\/span>\r\n          <span class=\"stat-lbl\">Pool<\/span>\r\n          <span class=\"stat-val\">Yes<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- About -->\r\n      <div class=\"section fade\">\r\n        <h2 class=\"section-title\">About the Property<\/h2>\r\n        <div class=\"desc-text\">\r\n          <p>Step into refined Mediterranean living with this magnificent five-bedroom residence nestled in the sought-after countryside near Tavira, in the heart of the Sotavento Algarvio.<\/p>\r\n          <div class=\"desc-extra\" id=\"descExtra\">\r\n            <p>Poised on a generous 1,787 m\u00b2 private estate with lush landscaped gardens with zoned automatic irrigation, this property blends contemporary luxury with serene natural beauty  just moments from coastal charm and amenities.<\/p>\r\n            <p>This beautifully appointed home spans 270 m\u00b2 of expertly crafted living space. Inside, discover an open-plan layout that flows effortlessly from the living area to an integrated, fully equipped kitchen. Large glass sliding doors immerse the interior in natural light and offer effortless indoor-outdoor living. <\/p>\r\n          <\/div>\r\n          <button class=\"read-more\" onclick=\"toggleDesc(this)\">\r\n            Read more\r\n            <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" id=\"rmIcon\"><polyline points=\"6 9 12 15 18 9\"\/><\/svg>\r\n          <\/button>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- Features -->\r\n      <div class=\"section fade\">\r\n        <h2 class=\"section-title\">Features & Amenities<\/h2>\r\n        <div class=\"features-grid\">\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Terrace<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Heating<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Furnished<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Washing Machine<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Dishwasher<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Garden<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Air Conditioning<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Laundry Room<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Driveway<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Fitted Wardrobes<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Storage Room<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Double Glazing<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Electric Shutters<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Bread Oven<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Equipped Kitchen<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Quiet Location<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Gym<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Solar Heating<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>AC Pre-installation<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Balcony<\/div>\r\n          <div class=\"feat\"><span class=\"feat-dot\"><\/span>Sea View<\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- Video -->\r\n      <div class=\"section fade\">\r\n        <h2 class=\"section-title\">Property Video<\/h2>\r\n        <div class=\"video-wrap\">\r\n          <!-- Replace src with real YouTube embed URL when available -->\r\n          <div class=\"video-placeholder\">\r\n            <div class=\"video-play-btn\">\r\n              <svg width=\"26\" height=\"26\" viewBox=\"0 0 24 24\" fill=\"white\" stroke=\"none\">\r\n                <polygon points=\"5 3 19 12 5 21 5 3\"\/>\r\n              <\/svg>\r\n            <\/div>\r\n            <span class=\"video-lbl\">Property Walkthrough Video<\/span>\r\n            <svg width=\"56\" height=\"56\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\">\r\n              <rect x=\"2\" y=\"7\" width=\"20\" height=\"15\" rx=\"0\"\/><polyline points=\"17 2 12 7 7 2\"\/>\r\n            <\/svg>\r\n          <\/div>\r\n          \r\n          <iframe width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/CR8RZJV8Zlw?si=yzbYmnODsk3ZURUS\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>        \r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- Location -->\r\n      <div class=\"section fade\">\r\n        <h2 class=\"section-title\">Location<\/h2>\r\n        <div id=\"map\"><\/div>\r\n      <\/div>\r\n\r\n    <\/div><!-- \/left -->\r\n\r\n    <!-- SIDEBAR -->\r\n    <div class=\"sidebar\">\r\n\r\n      <div class=\"price-card\">\r\n        <div class=\"price-head\">\r\n          <div>\r\n            <div class=\"price-lbl\">Sale Price<\/div>\r\n            <div class=\"price-val\">\u20ac 1.375,000<\/div>\r\n          <\/div>\r\n          <span class=\"price-tag\">For Sale<\/span>\r\n        <\/div>\r\n        <div class=\"price-body\">\r\n          <div class=\"form-heading\">Send a Message<\/div>\r\n          <div class=\"cform\">\r\n            <div class=\"fgrp\"><label>Name<\/label><input type=\"text\" placeholder=\"Your name\"><\/div>\r\n            <div class=\"fgrp\"><label>Email<\/label><input type=\"email\" placeholder=\"email@example.com\"><\/div>\r\n            <div class=\"fgrp\"><label>Phone<\/label><input type=\"tel\" placeholder=\"+351 000 000 000\"><\/div>\r\n            <div class=\"fgrp\"><label>Message<\/label><textarea placeholder=\"I am interested in this property and would like to schedule a viewing...\"><\/textarea><\/div>\r\n            <div class=\"fcheck\">\r\n              <input type=\"checkbox\" id=\"nl\">\r\n              <label for=\"nl\">I would like to receive other property sales related information from Portugal Property Hub.<\/label>\r\n            <\/div>\r\n            <div class=\"fcheck\">\r\n              <input type=\"checkbox\" id=\"pp\" required>\r\n              <label for=\"pp\">I agree to my details being stored and processed in accordance with the <a href=\"#\">privacy policy<\/a>.*<\/label>\r\n            <\/div>\r\n            <button class=\"btn-send\" id=\"btnSend\">Send Message<\/button>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"agent-card\">\r\n        <div class=\"agent-av\">J<\/div>\r\n        <div>\r\n          <div class=\"agent-name\">Joey Decoz<\/div>\r\n          <div class=\"agent-role\">Russel & Decoz<\/div>\r\n          <a href=\"tel:+351913652583\" class=\"agent-tel\">\r\n            <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\">\r\n              <path d=\"M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07A19.5 19.5 0 013.07 9.81a19.79 19.79 0 01-3.07-8.67A2 2 0 012 0h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L6.09 7.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 14.92v2z\"\/>\r\n            <\/svg>\r\n            +351 968 818 892\r\n          <\/a>\r\n        <\/div>\r\n      <\/div>\r\n\r\n    <\/div><!-- \/sidebar -->\r\n\r\n  <\/div><!-- \/content-layout -->\r\n<\/div><!-- \/page -->\r\n\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/swiper@11\/swiper-bundle.min.js\"><\/script>\r\n<script src=\"https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.js\"><\/script>\r\n<script>\r\n  \/\/ Thumbs swiper\r\n  const thumbs = new Swiper('#sThumbs', {\r\n    spaceBetween: 3,\r\n    freeMode: true,\r\n    watchSlidesProgress: true,\r\n    breakpoints: {\r\n      0:    { slidesPerView: 4 },\r\n      480:  { slidesPerView: 5 },\r\n      768:  { slidesPerView: 6 },\r\n      1024: { slidesPerView: 8 },\r\n    }\r\n  });\r\n\r\n  \/\/ Main swiper\r\n  const mainSw = new Swiper('#sMain', {\r\n    spaceBetween: 0,\r\n    loop: true,\r\n    navigation: { nextEl: '.swiper-button-next', prevEl: '.swiper-button-prev' },\r\n    pagination: { el: '.swiper-pagination', clickable: true },\r\n    thumbs: { swiper: thumbs },\r\n    on: {\r\n      slideChange() {\r\n        document.getElementById('counter').textContent =\r\n          (this.realIndex + 1) + ' \/ ' + this.slides.length;\r\n      }\r\n    }\r\n  });\r\n\r\n  \/\/ Read more toggle\r\n  function toggleDesc(btn) {\r\n    const extra = document.getElementById('descExtra');\r\n    const icon  = document.getElementById('rmIcon');\r\n    const open  = extra.classList.toggle('open');\r\n    btn.childNodes[0].textContent = open ? 'Read less ' : 'Read more ';\r\n    icon.style.transform = open ? 'rotate(180deg)' : 'rotate(0)';\r\n    icon.style.transition = 'transform .3s';\r\n  }\r\n\r\n  \/\/ Form feedback\r\n  document.getElementById('btnSend').addEventListener('click', function () {\r\n    this.textContent = '\u2713 Message Sent!';\r\n    this.style.background = '#16a34a';\r\n    setTimeout(() => {\r\n      this.textContent = 'Send Message';\r\n      this.style.background = '';\r\n    }, 3000);\r\n  });\r\n\r\n  \/\/ Scroll fade-in\r\n  const obs = new IntersectionObserver(entries => {\r\n    entries.forEach(e => { if (e.isIntersecting) e.target.classList.add('in'); });\r\n  }, { threshold: 0.06 });\r\n  document.querySelectorAll('.fade').forEach(el => obs.observe(el));\r\n\r\n  \/\/ \u2500\u2500 Leaflet \/ OpenStreetMap \u2500\u2500\r\n  \/\/ Vale Formoso, Loul\u00e9 \u2014 approximate coordinates\r\n  const LAT = 37.1380, LNG = -8.0050;\r\n\r\n  const map = L.map('map', {\r\n    center: [LAT, LNG],\r\n    zoom: 14,\r\n    scrollWheelZoom: false,\r\n    zoomControl: true,\r\n  });\r\n\r\n  \/\/ OpenStreetMap tiles\r\n  L.tileLayer('https:\/\/{s}.tile.openstreetmap.org\/{z}\/{x}\/{y}.png', {\r\n    maxZoom: 19,\r\n    attribution: '\u00a9 <a href=\"https:\/\/www.openstreetmap.org\/copyright\">OpenStreetMap<\/a> contributors'\r\n  }).addTo(map);\r\n\r\n  \/\/ Custom icon using DivIcon\r\n  const pinIcon = L.divIcon({\r\n    className: '',\r\n    iconSize: [36, 44],\r\n    iconAnchor: [18, 44],\r\n    popupAnchor: [0, -46],\r\n    html: `<div class=\"custom-marker\">\r\n      <div class=\"marker-pin\">\r\n        <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"white\" stroke-width=\"2.5\">\r\n          <path d=\"M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z\"\/>\r\n          <polyline points=\"9 22 9 12 15 12 15 22\"\/>\r\n        <\/svg>\r\n      <\/div>\r\n    <\/div>`\r\n  });\r\n\r\n  \/\/ Popup content\r\n  const popupContent = `\r\n    <div>\r\n      <div class=\"popup-header\">\r\n        <div class=\"popup-ref\">HOME2443V<\/div>\r\n        <div class=\"popup-title\">Elegant 5-Bedroom Luxury Villa with Pool & Sea Views near Tavira<\/div>\r\n      <\/div>\r\n      <div class=\"popup-body\">\r\n        <div class=\"popup-loc\">\r\n          <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#c0392b\" stroke-width=\"2.5\">\r\n            <path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"\/>\r\n            <circle cx=\"12\" cy=\"10\" r=\"3\"\/>\r\n          <\/svg>\r\n          Tavira, Algarve\r\n        <\/div>\r\n        <div class=\"popup-price\">\u20ac 1.375,000<\/div>\r\n      <\/div>\r\n    <\/div>`;\r\n\r\n  L.marker([LAT, LNG], { icon: pinIcon })\r\n    .addTo(map)\r\n    .bindPopup(popupContent, { maxWidth: 240 })\r\n    .openPopup();\r\n\r\n  \/\/ Slight radius circle to indicate approximate area\r\n  L.circle([LAT, LNG], {\r\n    radius: 320,\r\n    color: '#C91D1D',\r\n    fillColor: '#C91D1D',\r\n    fillOpacity: 0.07,\r\n    weight: 1.5,\r\n    dashArray: '5, 6',\r\n  }).addTo(map);\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Home\u203a Properties\u203a Elegant Luxury Villa HOME2443V Elegant 5-Bedroom Luxury Villa with Pool &#038; Sea Views near Tavira Tavira, Algarve Download Brochure HOME2443V 1 \/ 8 Bedrooms 5 Bathrooms 5 Living Area 270 m\u00b2 Plot Area 1787 m\u00b2 Energy Rating A P Circle Fill Streamline Icon: https:\/\/streamlinehq.com Garage Yes Swimming Pool Stairs Streamline Icon: https:\/\/streamlinehq.com Pool [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-1920","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.russell-decoz.com\/fr\/wp-json\/wp\/v2\/pages\/1920","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.russell-decoz.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.russell-decoz.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.russell-decoz.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.russell-decoz.com\/fr\/wp-json\/wp\/v2\/comments?post=1920"}],"version-history":[{"count":0,"href":"https:\/\/www.russell-decoz.com\/fr\/wp-json\/wp\/v2\/pages\/1920\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.russell-decoz.com\/fr\/wp-json\/wp\/v2\/media?parent=1920"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}