:root{--re-green:#087a45;--re-green-deep:#054c31;--re-green-dark:#033c29;--re-red:#ce2b37;--re-red-dark:#a51f2b;--re-white:#fff;--re-warm:#f7faf8;--re-ink:#161a18;--re-muted:#66706b;--re-line:#e4ebe7;--re-shadow:0 24px 70px rgba(5,76,49,.12);--re-shadow-soft:0 10px 35px rgba(13,35,25,.08);--re-r1:12px;--re-r2:20px;--re-r3:32px;--re-r4:46px;--re-shell:min(1480px,calc(100% - 64px));}
.re-public{background:#fff;color:var(--re-ink);font-size:16px}.re-shell{width:var(--re-shell);margin-inline:auto}.re-public h1,.re-public h2,.re-public h3{letter-spacing:-.045em}.re-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--re-green);font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.re-kicker:before{content:"";width:28px;height:2px;background:linear-gradient(90deg,var(--re-green) 0 33%,#fff 33% 66%,var(--re-red) 66%);box-shadow:0 0 0 1px #dde4df}.re-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:800;transition:.25s ease}.re-btn:hover{transform:translateY(-2px);box-shadow:var(--re-shadow-soft)}.re-btn-sm{min-height:42px;padding:0 17px;font-size:13px}.re-btn-green{color:#fff;background:linear-gradient(135deg,var(--re-green),var(--re-green-deep))}.re-btn-red{color:#fff;background:linear-gradient(135deg,var(--re-red),var(--re-red-dark))}.re-btn-light{background:#fff;color:var(--re-green-deep)}.re-btn-outline,.re-btn-outline-light{border-color:var(--re-line);background:#fff;color:var(--re-ink)}.re-btn-outline-light{border-color:rgba(255,255,255,.35);background:transparent;color:#fff}.re-link{display:inline-flex;align-items:center;gap:8px;color:var(--re-green);font-weight:800}.re-link svg{transition:transform .2s}.re-link:hover svg{transform:translateX(4px)}
.re-header{position:sticky;top:0;z-index:800;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(229,235,231,.8);transition:.25s}.re-header.is-scrolled{box-shadow:0 10px 40px rgba(9,48,32,.08)}.re-topline{background:var(--re-green-dark);color:rgba(255,255,255,.82);font-size:11px}.re-topline .re-shell{height:30px;display:flex;align-items:center;justify-content:space-between}.re-topline div div{display:flex;gap:20px}.re-topline a:hover{color:#fff}.re-header-main{height:78px;display:flex;align-items:center;gap:38px}.re-brand{width:136px;flex:none}.re-brand img{width:100%;max-height:48px;object-fit:contain}.re-nav{display:flex;align-items:center;gap:27px;margin-left:auto;font-size:14px;font-weight:750}.re-nav>a,.re-nav-group>button{position:relative;border:0;background:none;padding:27px 0;color:#28322e}.re-nav>a:after,.re-nav-group>button:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--re-green);transform:scaleX(0);transition:.2s}.re-nav>a:hover:after,.re-nav>a.active:after,.re-nav-group:hover>button:after{transform:scaleX(1)}.re-nav-group{position:relative}.re-nav-group>button{display:flex;gap:5px;align-items:center;font:inherit}.re-mega{position:absolute;top:68px;left:-24px;min-width:500px;display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:28px;background:#fff;border:1px solid var(--re-line);border-radius:22px;box-shadow:var(--re-shadow);opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s}.re-mega-right{left:auto;right:-20px}.re-nav-group:hover .re-mega{opacity:1;visibility:visible;transform:none}.re-mega div{display:grid;gap:9px}.re-mega strong{margin-bottom:4px;color:var(--re-green);font-size:11px;text-transform:uppercase;letter-spacing:.14em}.re-mega a{padding:7px 9px;border-radius:8px}.re-mega a:hover{background:var(--re-warm);color:var(--re-green)}.re-header-actions{display:flex;align-items:center;gap:8px}.re-icon-link,.re-menu-toggle{width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--re-ink)}.re-icon-link:hover,.re-menu-toggle:hover{background:var(--re-warm)}.re-menu-toggle{display:none}.re-mobile-drawer{display:none}
.re-hero{position:relative;min-height:720px;display:grid;align-items:end;overflow:hidden;background:#0a2419;color:#fff}.re-hero-bg{position:absolute;inset:0}.re-hero-bg img{width:100%;height:100%;object-fit:cover}.re-hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,37,24,.9) 0%,rgba(3,37,24,.6) 45%,rgba(3,37,24,.2) 75%),linear-gradient(0deg,rgba(3,37,24,.65),transparent 55%)}.re-hero-content{position:relative;z-index:2;padding:120px 0 72px}.re-hero-copy{max-width:830px}.re-hero h1{font-size:clamp(52px,6.2vw,96px);line-height:.94;margin:18px 0 24px;font-weight:800}.re-hero h1 em{font-style:normal;color:#fff}.re-hero p{max-width:680px;font-size:19px;color:rgba(255,255,255,.82)}.re-hero-search{margin-top:38px;max-width:1040px;padding:12px;background:rgba(255,255,255,.98);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.25)}.re-search-tabs{display:flex;gap:4px;padding:0 6px 8px}.re-search-tabs button{border:0;background:transparent;padding:10px 15px;border-radius:999px;font-weight:800;color:var(--re-muted)}.re-search-tabs button.active{background:var(--re-green);color:#fff}.re-search-row{display:grid;grid-template-columns:minmax(280px,2fr) 1fr 1fr auto;gap:8px}.re-search-field{display:flex;align-items:center;gap:11px;min-height:58px;padding:0 16px;background:var(--re-warm);border:1px solid var(--re-line);border-radius:15px}.re-search-field svg{color:var(--re-green)}.re-search-field input,.re-search-field select{width:100%;border:0;outline:0;background:transparent}.re-search-submit{width:62px;border:0;border-radius:16px;background:var(--re-red);color:#fff;display:grid;place-items:center}.re-search-submit svg{width:24px;height:24px}.re-search-shortcuts{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;font-size:13px;color:rgba(255,255,255,.8)}.re-search-shortcuts a{display:flex;align-items:center;gap:6px}.re-hero-stats{position:absolute;right:0;bottom:70px;z-index:3;width:270px;display:grid;gap:12px}.re-hero-stat{padding:18px 22px;border-left:2px solid rgba(255,255,255,.45);backdrop-filter:blur(8px)}.re-hero-stat strong{display:block;font-size:25px}.re-hero-stat span{font-size:12px;color:rgba(255,255,255,.7)}
.re-home-advanced{margin-top:9px;color:var(--re-ink)}.re-home-advanced>summary{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:9px;min-height:44px;padding:8px 12px;border-radius:13px;background:#f4f8f6;cursor:pointer;list-style:none}.re-home-advanced>summary::-webkit-details-marker{display:none}.re-home-advanced>summary>svg{width:18px;color:var(--re-green)}.re-home-advanced>summary>svg:last-child{transition:transform .2s}.re-home-advanced[open]>summary>svg:last-child{transform:rotate(180deg)}.re-home-advanced>summary span{font-size:13px;font-weight:900}.re-home-advanced>summary small{color:var(--re-muted);font-size:11px}.re-home-advanced-panel{display:grid;gap:12px;padding:14px 4px 3px}.re-home-advanced-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.re-home-advanced-grid label{display:grid;gap:5px;min-width:0;padding:9px 11px;border:1px solid var(--re-line);border-radius:12px;background:#fff}.re-home-advanced-grid label>span,.re-home-feature-filters legend{color:var(--re-muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.045em}.re-home-advanced-grid input,.re-home-advanced-grid select{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--re-ink)}.re-home-feature-filters{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;border:0}.re-home-feature-filters legend{width:100%;margin-bottom:2px}.re-home-feature-filters label{cursor:pointer}.re-home-feature-filters input{position:absolute;opacity:0;pointer-events:none}.re-home-feature-filters span{display:flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid var(--re-line);border-radius:999px;background:#fff;color:var(--re-muted);font-size:11px;font-weight:750}.re-home-feature-filters input:checked+span{border-color:#8bcaaa;background:#eaf7f0;color:var(--re-green)}.re-home-feature-filters svg{width:13px}.re-home-advanced-panel>p{max-width:none;margin:0;color:var(--re-muted);font-size:10px}
.re-section{padding:105px 0}.re-section-soft{background:var(--re-warm)}.re-section-dark{background:#08271b;color:#fff}.re-heading{max-width:760px;margin-bottom:46px}.re-heading.is-split{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:30px}.re-heading h2{font-size:clamp(38px,4.3vw,66px);line-height:1.02;margin:10px 0 14px}.re-heading p{margin:0;color:var(--re-muted);font-size:18px}.re-section-dark .re-heading p{color:rgba(255,255,255,.66)}.re-intent-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.re-intent-card{position:relative;min-height:330px;overflow:hidden;border-radius:28px;background:#12271f;color:#fff;box-shadow:var(--re-shadow-soft)}.re-intent-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.5s}.re-intent-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,38,25,.9),rgba(4,38,25,.08) 70%)}.re-intent-card:hover img{transform:scale(1.05)}.re-intent-card div{position:absolute;z-index:2;left:24px;right:24px;bottom:24px}.re-intent-card span{font-size:11px;text-transform:uppercase;letter-spacing:.13em}.re-intent-card h3{font-size:27px;margin:5px 0}.re-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.re-property-card{overflow:hidden;border:1px solid var(--re-line);border-radius:26px;background:#fff;box-shadow:var(--re-shadow-soft);transition:.28s}.re-property-card:hover{transform:translateY(-6px);box-shadow:var(--re-shadow)}.re-property-media{position:relative;display:block;height:300px;overflow:hidden;background:#e6ece8}.re-property-media img{width:100%;height:100%;object-fit:cover;transition:.5s}.re-property-card:hover .re-property-media img{transform:scale(1.04)}.re-card-badges{position:absolute;left:16px;top:16px;display:flex;gap:7px;flex-wrap:wrap}.re-card-badges span{padding:7px 10px;border-radius:999px;background:var(--re-green);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase}.re-card-badges .is-red{background:var(--re-red)}.re-card-badges .is-glass{background:rgba(12,25,19,.65);backdrop-filter:blur(8px)}.re-favorite{position:absolute;right:15px;top:15px;width:42px;height:42px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--re-ink)}.re-property-body{padding:21px}.re-property-location{display:flex;align-items:center;gap:6px;color:var(--re-green);font-size:12px;font-weight:800}.re-property-body h3{font-size:22px;line-height:1.12;margin:9px 0 16px}.re-property-specs{display:flex;gap:14px;flex-wrap:wrap;color:var(--re-muted);font-size:12px}.re-property-foot{display:flex;align-items:end;justify-content:space-between;margin-top:20px;padding-top:17px;border-top:1px solid var(--re-line)}.re-property-foot>strong{font-size:22px;color:var(--re-green-deep)}.re-property-foot small{font-size:11px}.re-property-foot>span{display:flex;gap:5px;align-items:center;font-size:12px;font-weight:800}.re-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.re-kpi{padding:38px 26px;border-right:1px solid rgba(255,255,255,.12)}.re-kpi:last-child{border-right:0}.re-kpi strong{display:block;font-size:42px}.re-kpi span{color:rgba(255,255,255,.64)}.re-feature-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.re-feature-image{position:relative;min-height:580px;border-radius:36px;overflow:hidden}.re-feature-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.re-feature-image .re-floating{position:absolute;right:20px;bottom:20px;width:260px;padding:24px;border-radius:22px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:var(--re-shadow)}.re-feature-copy h2{font-size:clamp(40px,4vw,64px);line-height:1.02;margin:12px 0 20px}.re-feature-copy>p{font-size:18px;color:var(--re-muted)}.re-steps{display:grid;gap:15px;margin:30px 0}.re-step{display:grid;grid-template-columns:50px 1fr;gap:15px;align-items:start}.re-step b{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:var(--re-warm);color:var(--re-green)}.re-step h3{margin:2px 0 4px;font-size:17px}.re-step p{margin:0;color:var(--re-muted);font-size:14px}.re-agency-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.re-agency-card{overflow:hidden;border:1px solid var(--re-line);border-radius:26px;background:#fff}.re-agency-cover{height:180px;position:relative;overflow:hidden}.re-agency-cover img{width:100%;height:100%;object-fit:cover}.re-agency-card-body{padding:22px}.re-agency-card-body .agency-logo{width:72px;height:72px;object-fit:contain;background:#fff;border:1px solid var(--re-line);border-radius:18px;padding:8px;margin-top:-60px;position:relative;box-shadow:var(--re-shadow-soft)}.re-agency-card h3{font-size:23px;margin:12px 0 6px}.re-agency-card p{color:var(--re-muted)}.re-cta-band{padding:65px;border-radius:38px;background:linear-gradient(125deg,var(--re-green-dark),var(--re-green) 68%,#13945a);color:#fff;position:relative;overflow:hidden}.re-cta-band:after{content:"";position:absolute;width:260px;height:260px;border:70px solid rgba(255,255,255,.06);border-radius:50%;right:-60px;top:-80px}.re-cta-band h2{font-size:clamp(38px,4vw,62px);margin:10px 0 15px}.re-cta-band p{max-width:700px;color:rgba(255,255,255,.75);font-size:18px}.re-cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.re-editorial-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:20px}.re-editorial-card{border-radius:26px;overflow:hidden;background:#fff;border:1px solid var(--re-line)}.re-editorial-card:first-child{grid-row:span 2}.re-editorial-media{height:220px}.re-editorial-card:first-child .re-editorial-media{height:430px}.re-editorial-media img{width:100%;height:100%;object-fit:cover}.re-editorial-body{padding:22px}.re-editorial-body h3{font-size:23px;margin:8px 0}.re-editorial-card:first-child h3{font-size:32px}.re-editorial-body p{color:var(--re-muted)}
.re-page-hero{position:relative;overflow:hidden;padding:120px 0 80px;background:#092d20;color:#fff}.re-page-hero.is-image{min-height:570px;display:grid;align-items:end}.re-page-hero .bg{position:absolute;inset:0}.re-page-hero .bg img{width:100%;height:100%;object-fit:cover}.re-page-hero .bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,41,27,.9),rgba(3,41,27,.35))}.re-page-hero .re-shell{position:relative;z-index:2}.re-page-hero h1{max-width:920px;font-size:clamp(52px,6vw,90px);line-height:.98;margin:16px 0 22px}.re-page-hero p{max-width:720px;color:rgba(255,255,255,.78);font-size:19px}.re-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.re-service-card{padding:32px;border:1px solid var(--re-line);border-radius:24px;background:#fff}.re-service-card .icon{width:28px;height:28px;color:var(--re-green)}.re-service-card h3{font-size:24px}.re-service-card p{color:var(--re-muted)}.re-wizard{max-width:980px;margin:0 auto;padding:38px;border:1px solid var(--re-line);border-radius:30px;background:#fff;box-shadow:var(--re-shadow)}.re-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.re-field{display:grid;gap:7px}.re-field.full{grid-column:1/-1}.re-field span{font-size:12px;font-weight:800}.re-field input,.re-field select,.re-field textarea{min-height:52px;border:1px solid var(--re-line);border-radius:14px;padding:12px 14px;background:var(--re-warm);outline:0}.re-field input:focus,.re-field select:focus,.re-field textarea:focus{border-color:var(--re-green);box-shadow:0 0 0 4px rgba(8,122,69,.09)}.re-check{display:flex;align-items:flex-start;gap:10px;color:var(--re-muted);font-size:13px}.re-map-stage{min-height:560px;border-radius:32px;overflow:hidden;background:#dce9e2}.re-split-list{display:grid;grid-template-columns:1fr 1fr;gap:28px}.re-dark-card{padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(255,255,255,.05)}.re-dark-card h3{font-size:24px}.re-dark-card p{color:rgba(255,255,255,.66)}.re-prefooter{padding:70px 0;background:linear-gradient(120deg,var(--re-green),var(--re-green-deep));color:#fff}.re-prefooter-grid{display:flex;align-items:end;justify-content:space-between;gap:40px}.re-prefooter h2{font-size:clamp(36px,4vw,60px);margin:12px 0 0}.re-prefooter .re-kicker{color:#fff}.re-prefooter-actions{display:flex;gap:10px;flex-wrap:wrap}.re-footer{padding:70px 0 100px;background:#071710;color:#fff}.re-footer-grid{display:grid;grid-template-columns:1.7fr repeat(4,1fr);gap:38px}.re-footer-brand img{width:150px;filter:brightness(0) invert(1)}.re-footer-brand p{max-width:320px;color:rgba(255,255,255,.58)}.re-italy-line{width:110px;height:4px;display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:20px}.re-italy-line i:nth-child(1){background:#009246}.re-italy-line i:nth-child(2){background:#fff}.re-italy-line i:nth-child(3){background:#ce2b37}.re-footer h3{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#fff}.re-footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:10px}.re-footer a{color:rgba(255,255,255,.62)}.re-footer a:hover{color:#fff}.re-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:28px;margin-top:45px;border-top:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.42);font-size:12px}.re-mobile-bottom{display:none}
[data-reveal]{opacity:0;transform:translateY(10px);transition:opacity .28s ease,transform .28s ease}[data-reveal].is-visible{opacity:1;transform:none}
@media(max-width:1180px){:root{--re-shell:min(100% - 40px,1120px)}.re-nav{display:none}.re-menu-toggle{display:grid}.re-header-actions{margin-left:auto}.re-intent-grid{grid-template-columns:repeat(2,1fr)}.re-property-grid{grid-template-columns:repeat(2,1fr)}.re-hero-stats{display:none}.re-footer-grid{grid-template-columns:1.4fr repeat(2,1fr)}.re-footer-grid>div:nth-child(n+4){margin-top:10px}.re-editorial-grid{grid-template-columns:1fr 1fr}.re-editorial-card:first-child{grid-row:auto;grid-column:1/-1}.re-editorial-card:first-child .re-editorial-media{height:380px}}
@media(max-width:820px){:root{--re-shell:calc(100% - 28px)}.re-topline{display:none}.re-header-main{height:68px}.re-brand{width:118px}.re-header-actions .re-icon-link,.re-header-actions .re-btn{display:none}.re-mobile-drawer{position:fixed;inset:0;z-index:1200;display:block;padding:18px;background:#fff;transform:translateX(100%);transition:.28s}.re-mobile-drawer.is-open{transform:none}.re-mobile-drawer-head{height:60px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--re-line)}.re-mobile-drawer-head img{width:120px}.re-mobile-drawer-head button{width:44px;height:44px;border:0;border-radius:50%;background:var(--re-warm)}.re-mobile-drawer nav{display:grid;padding:18px 0}.re-mobile-drawer nav a{padding:12px 4px;border-bottom:1px solid var(--re-line);font-weight:800}.re-mobile-drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.re-menu-open{overflow:hidden}.re-hero{min-height:760px;align-items:end}.re-hero-content{padding:100px 0 80px}.re-hero h1{font-size:clamp(47px,13vw,72px)}.re-hero p{font-size:16px}.re-hero-search{border-radius:22px;padding:10px}.re-search-row{grid-template-columns:1fr}.re-search-field{min-height:52px}.re-search-submit{width:100%;height:54px}.re-search-shortcuts{font-size:12px}.re-section{padding:72px 0}.re-heading.is-split{display:block}.re-heading h2{font-size:42px}.re-heading p{font-size:16px}.re-intent-grid,.re-property-grid,.re-agency-grid,.re-service-grid,.re-split-list{grid-template-columns:1fr}.re-intent-card{min-height:300px}.re-property-media{height:280px}.re-kpi-grid{grid-template-columns:1fr 1fr}.re-kpi:nth-child(2){border-right:0}.re-kpi:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}.re-feature-layout{grid-template-columns:1fr;gap:40px}.re-feature-image{min-height:430px}.re-feature-image .re-floating{width:calc(100% - 30px);right:15px;bottom:15px}.re-page-hero{padding:90px 0 60px}.re-page-hero.is-image{min-height:500px}.re-page-hero h1{font-size:50px}.re-cta-band{padding:38px 28px;border-radius:28px}.re-form-grid{grid-template-columns:1fr}.re-field.full{grid-column:auto}.re-wizard{padding:24px 18px;border-radius:24px}.re-editorial-grid{grid-template-columns:1fr}.re-editorial-card:first-child{grid-column:auto}.re-editorial-card:first-child .re-editorial-media{height:280px}.re-prefooter-grid{display:block}.re-prefooter-actions{margin-top:26px}.re-footer-grid{grid-template-columns:1fr 1fr;gap:30px}.re-footer-brand{grid-column:1/-1}.re-footer-bottom{display:grid}.re-mobile-bottom{position:fixed;z-index:700;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));height:64px;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.96);border:1px solid var(--re-line);border-radius:22px;box-shadow:0 14px 45px rgba(0,0,0,.16);backdrop-filter:blur(16px)}.re-mobile-bottom a{display:grid;place-items:center;align-content:center;gap:2px;font-size:9px;font-weight:800;color:var(--re-muted)}.re-mobile-bottom a svg{width:20px;height:20px}.re-mobile-bottom a:nth-child(2){color:var(--re-green)}.re-footer{padding-bottom:125px}}
@media(max-width:820px){.re-home-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.re-home-advanced>summary{grid-template-columns:auto auto 1fr auto}.re-home-advanced>summary small{justify-self:end}.re-home-advanced-panel{padding-bottom:8px}}
@media(max-width:520px){.re-home-advanced>summary{grid-template-columns:auto 1fr auto}.re-home-advanced>summary small{display:none}.re-home-advanced-grid{grid-template-columns:1fr}.re-home-feature-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.re-home-feature-filters span{height:100%;border-radius:11px}.re-hero-search:has(.re-home-advanced[open]){padding-bottom:14px}}
@media(max-width:520px){.re-hero{min-height:720px}.re-hero h1{font-size:45px}.re-search-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow:visible;white-space:normal;padding:0 0 9px}.re-search-tabs button{width:100%;min-width:0;min-height:44px;padding:8px 6px;font-size:12px;line-height:1.15;overflow-wrap:anywhere}.re-intent-grid{display:flex;overflow:auto;scroll-snap-type:x mandatory;margin-right:-14px;padding-right:14px}.re-intent-card{min-width:84%;scroll-snap-align:start}.re-property-grid{display:flex;overflow:auto;scroll-snap-type:x mandatory;margin-right:-14px;padding-right:14px}.re-property-card{min-width:88%;scroll-snap-align:start}.re-kpi{padding:25px 14px}.re-kpi strong{font-size:32px}.re-page-hero h1{font-size:44px}.re-footer-grid{grid-template-columns:1fr}.re-footer-brand{grid-column:auto}}
/* Reinforced styling for legacy but fully functional search/detail/customer views */
.re-public .property-search-page{padding:58px 0 95px;background:var(--re-warm)}.re-public .filter-bar{border:1px solid var(--re-line);border-radius:24px;background:#fff;box-shadow:var(--re-shadow-soft);padding:18px}.re-public .filter-pill{border-radius:999px!important}.re-public .listing-card{border:1px solid var(--re-line)!important;border-radius:26px!important;box-shadow:var(--re-shadow-soft)!important;overflow:hidden;background:#fff}.re-public .listing-media{border-radius:0!important}.re-public .listing-title{font-size:24px!important;letter-spacing:-.03em}.re-public .listing-price{color:var(--re-green-deep)!important;font-size:25px!important}.re-public .search-map-panel,.re-public .property-map{border-radius:24px!important;overflow:hidden;border:1px solid var(--re-line)!important;box-shadow:var(--re-shadow-soft)}
.re-public .property-hero{padding:70px 0 46px;background:linear-gradient(180deg,#f4faf6,#fff)!important}.re-public .property-title-row h1{font-size:clamp(42px,5vw,70px)!important}.re-public .property-price-large strong{color:var(--re-green-deep)!important;font-size:40px!important}.re-public .gallery-card,.re-public .detail-card,.re-public .contact-card,.re-public .property-fact-bar{border-color:var(--re-line)!important;border-radius:24px!important;box-shadow:var(--re-shadow-soft)!important}.re-public .gallery-main{height:min(58vw,650px)!important}.re-public .detail-card-heading>span,.re-public .property-fact-bar>div>span{background:#edf8f1!important;color:var(--re-green)!important}.re-public .contact-card.sticky-card{top:132px!important}.re-public .property-kicker span{border-radius:999px!important;background:#edf8f1!important;color:var(--re-green)!important;border-color:#cee8d8!important}
.re-public .article-hero{padding:95px 0 40px!important;background:var(--re-warm)!important}.re-public .article-hero h1{font-size:clamp(42px,5vw,72px)!important}.re-public .article-cover{border-radius:30px!important;box-shadow:var(--re-shadow-soft)}.re-public .article-content{font-size:18px;line-height:1.85}.re-public .comments-section{border-radius:26px!important;border:1px solid var(--re-line);padding:28px;background:#fff}
.re-public .customer-layout,.re-public .customer-dashboard{padding-top:40px}.re-public .panel{border-radius:24px!important;border-color:var(--re-line)!important;box-shadow:var(--re-shadow-soft)!important}.re-public .customer-nav{border-radius:22px!important}
@media(max-width:820px){.re-public .property-detail-grid{grid-template-columns:1fr!important}.re-public .property-title-row{display:grid!important}.re-public .property-price-large{justify-items:start!important}.re-public .gallery-main{height:390px!important}.re-public .results-map-layout{grid-template-columns:1fr!important}.re-public .search-map-panel{position:relative!important;top:auto!important}.re-public .contact-card.sticky-card{position:relative!important;top:auto!important}}

/* ==========================================================================\n   RE.ONE V8.2 — Search, property detail, Magazine article & mobile hardening\n   ========================================================================== */
html,body{max-width:100%;overflow-x:clip}.re-public *{box-sizing:border-box}.re-public img,.re-public video,.re-public iframe,.re-public svg{max-width:100%}.re-public input,.re-public select,.re-public textarea,.re-public button{max-width:100%;font:inherit}.re-public main{min-width:0;overflow:clip}.re-public .shell{width:var(--re-shell);max-width:100%;margin-inline:auto}.re-public .section{padding:90px 0}.re-public .section-soft{background:var(--re-warm)}

/* Search / results */
.re-listing-hero{position:relative;padding:92px 0 42px;background:linear-gradient(125deg,#052f20 0%,#087a45 62%,#0c8c50 100%);color:#fff;overflow:hidden}.re-listing-hero:before{content:"";position:absolute;inset:auto -7% -170px auto;width:500px;height:500px;border-radius:50%;border:105px solid rgba(255,255,255,.045)}.re-listing-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#009246 0 33.33%,#fff 33.33% 66.66%,#ce2b37 66.66%)}.re-listing-hero .re-shell{position:relative;z-index:2}.re-listing-hero-copy{max-width:850px}.re-listing-hero h1{font-size:clamp(48px,6.2vw,88px);line-height:.96;margin:14px 0 18px}.re-listing-hero h1 em{font-style:normal;color:rgba(255,255,255,.72)}.re-listing-hero-copy>p{max-width:690px;font-size:18px;color:rgba(255,255,255,.78)}.re-listing-hero .re-kicker{color:#fff}
.re-listing-search{position:relative;margin-top:38px;padding:12px;border-radius:25px;background:#fff;color:var(--re-ink);box-shadow:0 30px 80px rgba(0,0,0,.22)}.re-listing-search-main{display:grid;grid-template-columns:minmax(300px,2fr) minmax(150px,.8fr) minmax(160px,.9fr) auto;gap:8px}.re-listing-search-main>label{min-width:0;min-height:62px;display:grid;align-content:center;gap:2px;padding:8px 14px;border:1px solid var(--re-line);border-radius:16px;background:var(--re-warm)}.re-listing-search-main>label>span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--re-muted)}.re-listing-search-main input,.re-listing-search-main select{width:100%;min-width:0;border:0;background:transparent;outline:0;color:var(--re-ink)}.re-listing-location{display:flex!important;align-items:center!important;grid-template-columns:auto 1fr!important;gap:10px!important}.re-listing-location svg{color:var(--re-green);width:22px;height:22px}.re-listing-location input{font-size:15px}.re-listing-submit{min-height:62px;white-space:nowrap}.re-listing-search-foot{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:12px 7px 2px;font-size:12px;font-weight:800;color:var(--re-muted)}.re-listing-search-foot a,.re-filter-toggle{display:inline-flex;align-items:center;gap:7px}.re-filter-toggle{border:0;background:none;color:var(--re-green);padding:0;font-weight:900}.re-filter-toggle b{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:var(--re-red);color:#fff;font-size:10px}.re-filter-panel{margin-top:12px;padding:18px;border-top:1px solid var(--re-line);background:#fff;border-radius:0 0 18px 18px}.re-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.re-filter-grid label{display:grid;gap:6px;min-width:0}.re-filter-grid span{font-size:11px;font-weight:800;color:var(--re-muted)}.re-filter-grid input,.re-filter-grid select{width:100%;min-width:0;height:45px;padding:0 11px;border:1px solid var(--re-line);border-radius:11px;background:var(--re-warm)}.re-feature-filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.re-feature-filters label{position:relative;padding:9px 12px;border:1px solid var(--re-line);border-radius:999px;background:#fff;font-size:11px;font-weight:800;cursor:pointer}.re-feature-filters label.active{border-color:var(--re-green);background:#eef8f2;color:var(--re-green)}.re-feature-filters input{position:absolute;opacity:0;pointer-events:none}.re-filter-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}
.re-listing-results{padding-top:70px}.re-results-toolbar{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px}.re-results-toolbar h2{font-size:clamp(34px,3.5vw,52px);margin:8px 0 6px}.re-results-toolbar p{margin:0;color:var(--re-muted)}.re-results-actions{display:flex;align-items:center;gap:8px;flex:none}.re-sort-form select{height:43px;padding:0 35px 0 13px;border:1px solid var(--re-line);border-radius:999px;background:#fff;color:var(--re-ink);font-weight:750}.re-list-map-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.75fr);gap:24px;align-items:start}.re-listing-column{min-width:0}.re-search-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.re-map-card{position:sticky;top:126px;min-width:0;padding:12px;border:1px solid var(--re-line);border-radius:28px;background:#fff;box-shadow:var(--re-shadow-soft);overflow:hidden}.re-map-card-head{display:flex;align-items:center;justify-content:space-between;padding:7px 6px 13px}.re-map-card-head>div{display:grid}.re-map-card-head strong{font-size:17px}.re-map-card-head span{font-size:11px;color:var(--re-muted)}.re-map-card-head button{width:38px;height:38px;border:0;border-radius:50%;background:var(--re-warm);display:none}.re-map-canvas{height:600px;border-radius:20px;background:#dce9e2;overflow:hidden}.re-map-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding-top:10px}.re-map-controls button{min-width:0;min-height:42px;padding:7px;border:1px solid var(--re-line);border-radius:12px;background:#fff;font-size:10px;font-weight:800}.re-map-controls button svg{width:15px;height:15px}.re-map-card>.re-btn{width:100%;margin-top:8px}.re-pagination{display:flex;justify-content:center;gap:6px;margin-top:35px}.re-pagination a{min-width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--re-line);border-radius:50%;background:#fff;font-weight:800}.re-pagination a.active{border-color:var(--re-green);background:var(--re-green);color:#fff}.re-empty-premium{padding:55px 28px;text-align:center;border:1px solid var(--re-line);border-radius:28px;background:#fff}.re-empty-premium>span{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 14px;border-radius:50%;background:#edf7f1;color:var(--re-green)}.re-empty-premium h3{font-size:28px;margin:0 0 8px}.re-empty-premium p{color:var(--re-muted);max-width:530px;margin:0 auto 20px}

/* Property detail: restyle legacy functional markup as V8 */
.re-public .property-hero{padding:54px 0 30px;background:linear-gradient(180deg,#f6faf7,#fff);border-bottom:1px solid var(--re-line)}.re-public .back-link{display:inline-flex;align-items:center;gap:7px;margin-bottom:24px;color:var(--re-green);font-size:12px;font-weight:900}.re-public .property-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end}.re-public .property-title-row>div:first-child{min-width:0}.re-public .property-title-row h1{max-width:930px;font-size:clamp(42px,5.3vw,72px);line-height:1;margin:9px 0 12px;overflow-wrap:anywhere}.re-public .property-title-row p{display:flex;align-items:center;gap:6px;margin:0;color:var(--re-muted);font-size:15px}.re-public .property-kicker{display:flex;gap:8px;flex-wrap:wrap}.re-public .property-kicker span{padding:7px 10px;border-radius:999px;background:#eaf6ef;color:var(--re-green);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.re-public .property-price-large{grid-column:2;display:grid;justify-items:end;align-self:end;padding:18px 0}.re-public .property-price-large span{font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--re-muted)}.re-public .property-price-large strong{font-size:clamp(30px,3vw,44px);color:var(--re-green-deep);white-space:nowrap}.re-public .property-price-large small{font-size:13px;color:var(--re-muted)}.re-public .property-title-actions{grid-column:2;grid-row:1;align-self:start}.re-public .share-bar{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.re-public .fav-btn,.re-public .share-btn{border:1px solid var(--re-line);background:#fff;min-height:42px;border-radius:999px;color:var(--re-ink)}.re-public .fav-btn{display:flex;align-items:center;gap:7px;padding:0 14px;font-weight:800}.re-public .share-btn{width:42px;display:grid;place-items:center}.re-public .share-bar-label,.re-public .share-sep{display:none}.re-public .share-group{display:flex;gap:5px;flex-wrap:wrap}
.re-public .property-detail-section{padding:34px 0 90px;background:#fff}.re-public .property-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.65fr);gap:28px;align-items:start}.re-public .property-main-column,.re-public .property-sidebar{min-width:0}.re-public .gallery-card,.re-public .detail-card,.re-public .contact-card,.re-public .agency-strip-card,.re-public .share-footer-card{border:1px solid var(--re-line);border-radius:28px;background:#fff;box-shadow:var(--re-shadow-soft);overflow:hidden}.re-public .gallery-card{padding:10px}.re-public .gallery-main{position:relative;width:100%;height:clamp(420px,52vw,680px);display:block;border:0;border-radius:21px;overflow:hidden;background:#e7ece9;padding:0}.re-public .gallery-main img{width:100%;height:100%;object-fit:cover}.re-public .gallery-main>span{position:absolute;right:15px;bottom:15px;padding:9px 12px;border-radius:999px;background:rgba(7,23,16,.72);backdrop-filter:blur(10px);color:#fff;font-size:11px;font-weight:800}.re-public .gallery-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:46px;height:46px;border:0;border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(0,0,0,.16);display:grid;place-items:center}.re-public .gallery-nav.prev{left:22px}.re-public .gallery-nav.next{right:22px}.re-public .gallery-thumbnails{display:flex;gap:8px;padding:10px 1px 0;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-inline:contain}.re-public .gallery-thumbnails button{flex:0 0 100px;height:72px;border:2px solid transparent;border-radius:12px;overflow:hidden;padding:0;background:#eee}.re-public .gallery-thumbnails button.active{border-color:var(--re-green)}.re-public .gallery-thumbnails img{width:100%;height:100%;object-fit:cover}.re-public .detail-card{margin-top:22px;padding:28px}.re-public .detail-card-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:22px}.re-public .detail-card-heading>span{width:44px;height:44px;display:grid;place-items:center;flex:none;border-radius:13px;background:#eaf6ef;color:var(--re-green)}.re-public .detail-card-heading small{font-size:9px;font-weight:900;letter-spacing:.15em;color:var(--re-green)}.re-public .detail-card-heading h2{font-size:clamp(25px,2.5vw,35px);margin:3px 0}.re-public .media-tab-list{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px}.re-public .media-tab{flex:none;display:flex;align-items:center;gap:7px;min-height:42px;padding:0 14px;border:1px solid var(--re-line);border-radius:999px;background:#fff;font-weight:800}.re-public .media-tab.active{background:var(--re-green);border-color:var(--re-green);color:#fff}.re-public .media-pane{padding-top:18px}.re-public .media-embed{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#111}.re-public .media-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.re-public .media-empty-note,.re-public .virtual-tour-placeholder{display:flex;align-items:center;gap:15px;padding:24px;border-radius:18px;background:var(--re-warm);color:var(--re-muted)}.re-public .media-empty-note>svg{width:30px;height:30px;color:var(--re-green);flex:none}.re-public .media-empty-note>div{display:grid;gap:3px}.re-public .media-empty-note strong{color:var(--re-ink)}.re-public .floorplan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.re-public .floorplan-grid a{display:grid;gap:8px;padding:10px;border:1px solid var(--re-line);border-radius:16px}.re-public .floorplan-grid img{width:100%;height:220px;object-fit:contain;background:var(--re-warm);border-radius:10px}.re-public .doc-list{display:grid;gap:8px}.re-public .doc-item{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--re-line);border-radius:14px}.re-public .doc-item>svg{color:var(--re-green)}.re-public .doc-item>div{display:grid;min-width:0}.re-public .doc-item small{color:var(--re-muted)}.re-public .doc-open{margin-left:auto;color:var(--re-green);font-weight:800}.re-public .property-fact-bar{display:grid;grid-template-columns:repeat(4,1fr);margin-top:22px;border:1px solid var(--re-line);border-radius:24px;background:#08271b;color:#fff;overflow:hidden}.re-public .property-fact-bar>div{min-width:0;padding:24px 18px;border-right:1px solid rgba(255,255,255,.12)}.re-public .property-fact-bar>div:last-child{border:0}.re-public .property-fact-bar span{color:#71d69e}.re-public .property-fact-bar strong{display:block;margin-top:10px;font-size:24px}.re-public .property-fact-bar small{color:rgba(255,255,255,.58)}.re-public .detail-definition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.re-public .detail-definition-grid>div{min-width:0;padding:16px;border-radius:14px;background:var(--re-warm)}.re-public .detail-definition-grid span{display:block;font-size:10px;color:var(--re-muted);text-transform:uppercase;letter-spacing:.08em}.re-public .detail-definition-grid strong{display:block;margin-top:5px;overflow-wrap:anywhere}.re-public .lead-description{font-size:17px;line-height:1.82;color:#39433f}.re-public .feature-chip-grid{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.re-public .feature-chip-grid span{display:flex;align-items:center;gap:5px;padding:9px 12px;border-radius:999px;background:#edf7f1;color:var(--re-green-deep);font-size:12px;font-weight:800}.re-public .technical-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.re-public .technical-grid dl{margin:0}.re-public .technical-grid dl>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--re-line)}.re-public .technical-grid dt{color:var(--re-muted)}.re-public .technical-grid dd{margin:0;text-align:right;font-weight:800}.re-public .property-map.tall{height:430px;border-radius:18px;overflow:hidden}.re-public .map-help{color:var(--re-muted);font-size:12px}.re-public .sticky-card{position:sticky;top:128px}.re-public .contact-card{padding:24px}.re-public .contact-card-header{display:flex;gap:12px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--re-line)}.re-public .contact-card-header>span{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#eaf6ef;color:var(--re-green)}.re-public .contact-card-header small{display:block;color:var(--re-muted);font-size:9px;font-weight:900}.re-public .contact-card-header strong{display:block}.re-public .contact-card .button{width:100%;min-height:48px;border-radius:999px}.re-public .contact-card .button-primary{background:var(--re-green);border-color:var(--re-green);color:#fff}.re-public .contact-card .button-secondary{background:#fff;border:1px solid var(--re-line)}.re-public .contact-security{display:flex;gap:7px;color:var(--re-muted);font-size:11px}.re-public .form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.re-public .field{display:grid;gap:5px;min-width:0}.re-public .field span{font-size:11px;font-weight:800;color:var(--re-muted)}.re-public .field input,.re-public .field select,.re-public .field textarea{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid var(--re-line);border-radius:12px;background:var(--re-warm)}.re-public .share-footer-section,.re-public .agency-strip{padding:28px 0}.re-public .share-footer-card,.re-public .agency-strip-card{padding:30px}.re-public .share-footer-card{display:flex;justify-content:space-between;align-items:center;gap:28px}.re-public .share-footer-card h2{font-size:34px;margin:6px 0}.re-public .agency-strip-card{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px}.re-public .agency-strip-main,.re-public .agency-strip-side{min-width:0}.re-public .agency-brand{display:flex;align-items:center;gap:12px}.re-public .agency-logo{width:80px;height:56px;object-fit:contain}.re-public .agency-strip-main h2{font-size:36px;margin:14px 0 7px}.re-public .agency-strip-main p{color:var(--re-muted)}.re-public .agency-strip-facts{display:flex;gap:12px 20px;flex-wrap:wrap;padding:0;margin:20px 0;list-style:none;color:var(--re-muted);font-size:12px}.re-public .agency-strip-facts li{display:flex;align-items:center;gap:6px}.re-public .agency-strip-side{display:grid;align-content:center;gap:8px}.re-public .property-grid.compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.re-public .property-card{overflow:hidden;border:1px solid var(--re-line);border-radius:24px;background:#fff;box-shadow:var(--re-shadow-soft)}.re-public .property-image{position:relative;display:block;height:250px;overflow:hidden}.re-public .property-image img{width:100%;height:100%;object-fit:cover}.re-public .property-contract{position:absolute;left:14px;top:14px;padding:7px 10px;border-radius:999px;background:var(--re-green);color:#fff;font-size:10px;font-weight:900}.re-public .property-content{padding:18px}.re-public .property-location{color:var(--re-green);font-size:11px;font-weight:800}.re-public .property-content h3{font-size:21px;margin:8px 0 18px}.re-public .property-footer{display:flex;justify-content:space-between;align-items:center}.re-public .property-footer strong{font-size:21px;color:var(--re-green-deep)}

/* Magazine article */
.re-magazine-article{background:#fff}.re-article-hero{padding:72px 0 48px;background:linear-gradient(180deg,#f4f8f5,#fff)}.re-article-shell{max-width:1020px}.re-article-back{display:inline-flex;align-items:center;gap:6px;color:var(--re-green);font-size:12px;font-weight:900;margin-bottom:42px}.re-article-meta-top{display:flex;align-items:center;gap:10px;color:var(--re-green);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.re-article-meta-top i{width:4px;height:4px;border-radius:50%;background:var(--re-red)}.re-article-hero h1{font-size:clamp(46px,6vw,84px);line-height:.98;margin:15px 0 20px;max-width:1000px}.re-article-lead{max-width:820px;font-size:20px;line-height:1.55;color:var(--re-muted)}.re-article-byline{display:flex;align-items:center;gap:11px;margin-top:28px}.re-author-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--re-green);color:#fff;font-size:12px;font-weight:900}.re-article-byline>div:nth-child(2){display:grid}.re-article-byline>div:nth-child(2) span{font-size:11px;color:var(--re-muted)}.re-article-share-mini{display:flex!important;gap:5px;margin-left:auto}.re-article-share-mini button,.re-article-aside button{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--re-line);border-radius:50%;background:#fff}.re-article-cover-wrap{margin-top:0}.re-article-cover{display:block;width:100%;height:min(64vw,720px);object-fit:cover;border-radius:34px;box-shadow:var(--re-shadow)}.re-article-layout{display:grid;grid-template-columns:150px minmax(0,760px);justify-content:center;gap:45px;padding-top:70px;padding-bottom:95px}.re-article-aside{min-width:0}.re-article-aside-sticky{position:sticky;top:135px;display:grid;gap:13px}.re-article-aside-sticky>span{font-size:9px;font-weight:900;letter-spacing:.15em;color:var(--re-muted)}.re-article-aside-sticky>div{display:flex;gap:5px;flex-wrap:wrap}.re-article-aside-sticky>a{margin-top:8px;color:var(--re-green);font-size:11px;font-weight:900}.re-article-body{min-width:0}.re-article-content{font-size:18px;line-height:1.9;color:#343d39;overflow-wrap:anywhere}.re-article-content>*{max-width:100%}.re-article-content h2{font-size:clamp(29px,3vw,42px);line-height:1.12;margin:2em 0 .55em;color:var(--re-ink)}.re-article-content h3{font-size:27px;margin:1.7em 0 .5em;color:var(--re-ink)}.re-article-content p{margin:0 0 1.3em}.re-article-content img{width:100%;height:auto;border-radius:22px;margin:18px 0}.re-article-content blockquote{margin:35px 0;padding:25px 28px;border-left:4px solid var(--re-red);border-radius:0 18px 18px 0;background:var(--re-warm);font-size:22px;line-height:1.5;color:var(--re-green-deep)}.re-article-content ul,.re-article-content ol{padding-left:1.3em}.re-article-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}.re-article-content th,.re-article-content td{min-width:120px;padding:11px;border:1px solid var(--re-line)}.re-article-content iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:18px}.re-article-end{margin-top:55px;padding:34px;border-radius:24px;background:#08271b;color:#fff}.re-article-end h3{font-size:30px;margin:9px 0}.re-article-end p{margin:0;color:rgba(255,255,255,.66)}.re-comments{margin-top:65px;padding-top:48px;border-top:1px solid var(--re-line)}.re-comments-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.re-comments-heading h2{font-size:40px;margin:6px 0 0}.re-comments-heading>strong{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--re-green);color:#fff}.re-no-comments{padding:20px;border-radius:14px;background:var(--re-warm);color:var(--re-muted)}.re-comment-list{display:grid;gap:12px}.re-comment{display:flex;gap:13px;padding:17px 0;border-bottom:1px solid var(--re-line)}.re-comment-avatar{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:50%;background:#eaf6ef;color:var(--re-green);font-weight:900}.re-comment p{margin:5px 0;color:var(--re-muted)}.re-comment-form{margin-top:28px;padding:25px;border:1px solid var(--re-line);border-radius:22px;background:#fff}.re-comment-form textarea{resize:vertical}.re-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.re-related-grid .re-editorial-card:first-child{grid-row:auto}.re-related-grid .re-editorial-card:first-child .re-editorial-media,.re-related-grid .re-editorial-media{display:block;height:230px}.re-related-grid .re-editorial-card:first-child h3{font-size:23px}

/* General viewport containment */
.re-public .re-shell,.re-public .shell,.re-public .re-header-main,.re-public .re-prefooter-grid,.re-public .re-footer-grid,.re-public .re-hero-content,.re-public .re-section>*{min-width:0}.re-public [class*="grid"]>*{min-width:0}.re-public a,.re-public p,.re-public h1,.re-public h2,.re-public h3,.re-public h4,.re-public strong,.re-public span{overflow-wrap:break-word}.re-public pre,.re-public code{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}

@media(max-width:1100px){.re-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.re-list-map-layout{grid-template-columns:minmax(0,1fr) 340px}.re-public .property-detail-grid{grid-template-columns:minmax(0,1fr) 320px}.re-search-property-grid{grid-template-columns:1fr}.re-public .property-title-row{grid-template-columns:minmax(0,1fr) auto}.re-public .property-title-actions{grid-column:1/-1;grid-row:auto;justify-self:start}.re-public .property-price-large{grid-column:2;grid-row:1}.re-article-layout{grid-template-columns:120px minmax(0,720px);gap:30px}}

@media(max-width:820px){:root{--re-shell:calc(100% - 28px)}.re-public .shell{width:var(--re-shell)}.re-public .section{padding:68px 0}.re-listing-hero{padding:68px 0 28px}.re-listing-hero h1{font-size:48px}.re-listing-hero-copy>p{font-size:15px}.re-listing-search{margin-top:26px;padding:9px;border-radius:20px}.re-listing-search-main{grid-template-columns:1fr}.re-listing-search-main>label,.re-listing-submit{min-height:54px}.re-listing-location{min-height:58px!important}.re-listing-search-foot{gap:12px;padding:10px 5px 3px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}.re-filter-panel{padding:14px 6px 6px}.re-filter-grid{grid-template-columns:1fr 1fr}.re-feature-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.re-feature-filters label{flex:none}.re-results-toolbar{display:grid;align-items:start}.re-results-actions{width:100%;justify-content:space-between}.re-sort-form{min-width:0;flex:1}.re-sort-form select{width:100%;max-width:100%}.re-list-map-layout{grid-template-columns:1fr}.re-search-property-grid{grid-template-columns:1fr}.re-map-card{position:fixed;inset:68px 8px calc(82px + env(safe-area-inset-bottom)) 8px;z-index:650;display:none;padding:10px;border-radius:22px}.re-map-card.is-open{display:block}.re-map-card-head button{display:grid;place-items:center}.re-map-canvas{height:calc(100% - 108px)}.re-map-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.re-map-controls button{font-size:9px}.re-pagination{overflow-x:auto;justify-content:flex-start;padding-bottom:4px}.re-public .property-hero{padding:34px 0 22px}.re-public .property-title-row{grid-template-columns:1fr!important;gap:14px!important}.re-public .property-title-row h1{font-size:42px}.re-public .property-title-actions,.re-public .property-price-large{grid-column:auto!important;grid-row:auto!important;justify-self:stretch}.re-public .property-price-large{justify-items:start!important;padding:2px 0}.re-public .property-price-large strong{white-space:normal}.re-public .share-bar{justify-content:flex-start}.re-public .property-detail-section{padding:20px 0 70px}.re-public .property-detail-grid{grid-template-columns:1fr!important}.re-public .gallery-main{height:min(68vw,450px)!important;min-height:280px}.re-public .gallery-thumbnails button{flex-basis:82px;height:60px}.re-public .detail-card{padding:20px;margin-top:14px;border-radius:22px}.re-public .property-fact-bar{grid-template-columns:1fr 1fr}.re-public .property-fact-bar>div{border-bottom:1px solid rgba(255,255,255,.12)}.re-public .property-fact-bar>div:nth-child(2){border-right:0}.re-public .property-fact-bar>div:nth-last-child(-n+2){border-bottom:0}.re-public .detail-definition-grid{grid-template-columns:1fr 1fr}.re-public .technical-grid{grid-template-columns:1fr}.re-public .sticky-card{position:relative!important;top:auto!important}.re-public .contact-card{padding:20px;border-radius:22px}.re-public .share-footer-card,.re-public .agency-strip-card{display:grid;grid-template-columns:1fr;padding:22px}.re-public .agency-strip-card{gap:18px}.re-public .agency-strip-side{grid-template-columns:1fr}.re-public .property-grid.compact{grid-template-columns:1fr}.re-public .form-grid.two{grid-template-columns:1fr}.re-public .floorplan-grid{grid-template-columns:1fr}.re-article-hero{padding:45px 0 30px}.re-article-back{margin-bottom:25px}.re-article-hero h1{font-size:44px}.re-article-lead{font-size:17px}.re-article-share-mini{display:none!important}.re-article-cover{height:60vw;min-height:260px;border-radius:22px}.re-article-layout{grid-template-columns:1fr;gap:0;padding-top:42px;padding-bottom:68px}.re-article-aside{display:none}.re-article-content{font-size:17px;line-height:1.78}.re-article-content h2{font-size:31px}.re-article-content h3{font-size:24px}.re-article-content blockquote{margin:25px 0;padding:20px;font-size:19px}.re-comment-form{padding:18px}.re-related-grid{grid-template-columns:1fr}.re-related-grid .re-editorial-media,.re-related-grid .re-editorial-card:first-child .re-editorial-media{height:250px}.re-mobile-bottom{max-width:calc(100vw - 20px)}}

@media(max-width:520px){:root{--re-shell:calc(100% - 24px)}.re-public{font-size:15px}.re-header-main{max-width:100%}.re-listing-hero{padding-top:52px}.re-listing-hero h1{font-size:42px}.re-listing-search{margin-left:-3px;margin-right:-3px}.re-listing-search-main>label{padding:7px 11px}.re-listing-search-foot a:last-child{display:none}.re-filter-grid{grid-template-columns:1fr}.re-filter-actions{justify-content:stretch}.re-filter-actions .re-btn{flex:1}.re-results-toolbar h2{font-size:35px}.re-results-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}.re-search-property-grid.re-property-grid{display:grid!important;overflow:visible!important;margin-right:0!important;padding-right:0!important}.re-search-property-grid .re-property-card{min-width:0!important;width:100%}.re-search-property-grid .re-property-media{height:250px}.re-map-card{inset:66px 6px calc(80px + env(safe-area-inset-bottom)) 6px}.re-public .property-title-row h1{font-size:36px}.re-public .property-title-row p{align-items:flex-start;font-size:13px}.re-public .share-group{max-width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.re-public .property-price-large strong{font-size:32px}.re-public .gallery-card{margin-inline:-4px;padding:6px;border-radius:20px}.re-public .gallery-main{height:64vw!important;min-height:235px}.re-public .gallery-nav{width:40px;height:40px}.re-public .gallery-nav.prev{left:12px}.re-public .gallery-nav.next{right:12px}.re-public .detail-card{padding:17px}.re-public .detail-card-heading{gap:10px}.re-public .detail-card-heading>span{width:39px;height:39px}.re-public .property-fact-bar>div{padding:18px 13px}.re-public .property-fact-bar strong{font-size:20px}.re-public .detail-definition-grid{grid-template-columns:1fr}.re-public .feature-chip-grid{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.re-public .feature-chip-grid span{flex:none}.re-public .technical-grid dl>div{display:grid;gap:2px}.re-public .technical-grid dd{text-align:left}.re-public .property-map.tall{height:330px}.re-public .share-footer-card h2{font-size:29px}.re-public .agency-strip-main h2{font-size:29px}.re-public .agency-strip-facts{display:grid}.re-article-hero h1{font-size:38px}.re-article-meta-top{flex-wrap:wrap}.re-article-byline{align-items:flex-start}.re-article-cover{height:68vw;min-height:225px}.re-article-layout{padding-top:32px}.re-article-content{font-size:16.5px}.re-article-end{padding:25px 20px}.re-comments-heading h2{font-size:34px}.re-comments-heading{align-items:center}.re-comment-form .re-form-grid{grid-template-columns:1fr}.re-footer{max-width:100%;overflow:hidden}.re-mobile-drawer{width:100vw;max-width:100vw}.re-mobile-bottom{left:8px;right:8px;max-width:none}}
.re-property-anchor-nav{position:sticky;top:108px;z-index:520;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--re-line)}.re-property-anchor-nav .re-shell{display:flex;gap:24px;overflow-x:auto;scrollbar-width:none}.re-property-anchor-nav .re-shell::-webkit-scrollbar{display:none}.re-property-anchor-nav a{flex:none;padding:15px 0 13px;border-bottom:2px solid transparent;font-size:12px;font-weight:850;color:var(--re-muted)}.re-property-anchor-nav a:hover{color:var(--re-green);border-color:var(--re-green)}.re-similar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:820px){.re-property-anchor-nav{top:68px}.re-property-anchor-nav .re-shell{gap:18px}.re-property-anchor-nav a{padding:12px 0 10px;font-size:11px}.re-similar-grid{grid-template-columns:1fr}}@media(max-width:520px){.re-property-anchor-nav{margin-inline:0}.re-property-anchor-nav .re-shell{width:100%;padding-inline:12px}.re-similar-grid.re-property-grid{display:grid!important;overflow:visible!important;margin-right:0!important;padding-right:0!important}.re-similar-grid .re-property-card{min-width:0!important}}

/* RE.ONE V8.3 HOME MOBILE + iOS */
.re-public h1,.re-public h2,.re-public h3,.re-public h4,.re-public a,.re-public strong{word-break:normal;overflow-wrap:normal;hyphens:none}.re-public p,.re-public li{word-break:normal;overflow-wrap:break-word}
@media(max-width:820px){.re-public [data-reveal]{opacity:1!important;transform:none!important;visibility:visible!important}.re-heading.is-split{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;align-items:start!important}.re-heading.is-split>*{min-width:0;max-width:100%}.re-heading.is-split .re-link,.re-heading.is-split .re-btn{justify-self:start}.re-intent-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important}.re-intent-card{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;min-height:280px!important}.re-section .re-property-grid:not(.re-search-property-grid):not(.re-similar-grid){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important}.re-section .re-property-grid:not(.re-search-property-grid):not(.re-similar-grid)>.re-property-card{width:100%!important;min-width:0!important;max-width:100%!important;flex:none!important}.re-property-body h3,.re-property-body h3 a{white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}.re-editorial-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important}.re-editorial-card,.re-editorial-card:first-child{display:block!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;min-width:0!important;max-width:100%!important}.re-editorial-media,.re-editorial-card:first-child .re-editorial-media{display:block!important;width:100%!important;height:260px!important}.re-editorial-body{display:block!important;width:100%!important;min-width:0!important;padding:20px!important}.re-editorial-body h3,.re-editorial-card:first-child h3{display:block!important;width:100%!important;font-size:25px!important;line-height:1.08!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}.re-editorial-body h3 a{display:block!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}.re-footer{padding-bottom:calc(116px + env(safe-area-inset-bottom))!important}}
@media(max-width:520px){:root{--re-shell:calc(100% - 28px)}.re-shell{max-width:calc(100vw - 28px)!important}.re-section{padding:62px 0!important}.re-heading{margin-bottom:28px!important}.re-heading h2{font-size:clamp(35px,10.5vw,44px)!important;line-height:1.02!important}.re-intent-grid,.re-section .re-property-grid:not(.re-search-property-grid):not(.re-similar-grid){display:grid!important;grid-template-columns:minmax(0,1fr)!important;overflow:visible!important;scroll-snap-type:none!important;margin:0!important;padding:0!important}.re-intent-card,.re-section .re-property-grid:not(.re-search-property-grid):not(.re-similar-grid)>.re-property-card{min-width:0!important;width:100%!important;scroll-snap-align:none!important}.re-intent-card{min-height:250px!important}.re-section .re-property-grid .re-property-media{height:245px!important}.re-property-body{padding:18px!important}.re-property-body h3{font-size:22px!important}.re-editorial-media,.re-editorial-card:first-child .re-editorial-media{height:230px!important}.re-editorial-body{padding:18px!important}.re-editorial-body h3,.re-editorial-card:first-child h3{font-size:23px!important}.re-hero{min-height:auto!important}.re-hero-content{padding:70px 0 54px!important}.re-hero h1{font-size:clamp(42px,12vw,54px)!important}.re-public,.re-public main,.re-public section,.re-public article,.re-public form{max-width:100vw}.re-mobile-bottom{left:8px!important;right:8px!important;width:auto!important;max-width:none!important}}
@media(max-width:360px){:root{--re-shell:calc(100% - 22px)}.re-shell{max-width:calc(100vw - 22px)!important}.re-brand{width:108px}.re-heading h2{font-size:35px!important}.re-editorial-body h3,.re-editorial-card:first-child h3{font-size:21px!important}}

.re-pwa-dialog{max-width:560px;width:calc(100% - 32px);border:0;border-radius:28px;padding:32px;box-shadow:0 30px 80px #0004}.re-pwa-dialog::backdrop{background:#07140fb3;backdrop-filter:blur(5px)}.re-pwa-close{position:absolute;right:18px;top:16px;border:0;background:#eef5f1;border-radius:50%;width:38px;height:38px;font-size:24px}.re-pwa-band{background:linear-gradient(135deg,#075c3a,#0b8f55)}@media(max-width:640px){.re-pwa-dialog{padding:26px 22px}.re-pwa-band .re-cta-actions{display:grid;grid-template-columns:1fr}.re-pwa-band .re-btn{width:100%}}

/* RE.ONE Brand Integration V8.5.4 */
.re-topline{background:linear-gradient(90deg,#006b37,#008f49);color:#fff}
.re-brand{width:168px;display:flex;align-items:center}
.re-brand img{width:100%;height:auto;max-height:64px;object-fit:contain}
.re-header-main{min-height:82px}
.re-footer-brand img{width:190px;max-height:82px;object-fit:contain;filter:brightness(0) invert(1) drop-shadow(0 0 12px rgba(255,255,255,.3))!important;opacity:1}
.re-agency-map-marker{background:transparent!important;border:0!important}.re-agency-map-marker span{position:relative;display:block;width:38px;height:38px;border:4px solid #fff;border-radius:50% 50% 50% 0;background:#079447;transform:rotate(-45deg);box-shadow:0 10px 24px rgba(0,45,26,.32)}.re-agency-map-marker span:after{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff}.re-agency-map-popup{display:grid;gap:5px;min-width:190px}.re-agency-map-popup>a:first-child{font-size:16px;font-weight:900;color:#063d29}.re-agency-map-popup span{color:#65756e;font-size:12px}.re-agency-map-popup a:not(:first-child){font-size:12px;color:#079447}
.re-card-badges .is-open-house{background:#fff;color:#063d29;border:1px solid rgba(255,255,255,.72)}.re-card-badges .is-price-drop{background:#d8222a;color:#fff}.re-property-foot strong{display:grid;line-height:1.05}.re-property-foot strong del,.property-price-large del{font-size:13px;color:#d8222a;text-decoration-thickness:2px}.re-open-house-card{background:linear-gradient(135deg,#f0faf4,#fff)!important}.re-open-house-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:center;gap:12px}.re-open-house-facts>div{display:grid;gap:5px;padding:16px;border-radius:15px;background:#fff;border:1px solid var(--re-line)}.re-open-house-facts span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--re-muted)}.re-price-history-card svg{width:100%;height:230px;padding:14px;border-radius:18px;background:linear-gradient(180deg,#f2faf5,#fff);overflow:visible}.re-price-history-card svg path{fill:none;stroke:#dbe8e0;stroke-width:2}.re-price-history-card svg polyline{fill:none;stroke:#079447;stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.re-price-history-card svg circle{fill:#fff;stroke:#d8222a;stroke-width:5}.re-price-history-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:14px}.re-price-history-legend span{padding:10px 13px;border-radius:999px;background:var(--re-warm)}.re-price-history-legend small{margin-left:auto;color:var(--re-muted)}
.re-property-card[id]{scroll-margin-top:128px}.re-property-card.is-return-target{border-color:#079447;box-shadow:0 0 0 4px rgba(7,148,71,.14),0 22px 60px rgba(3,57,35,.16)}.re-property-open-house{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:17px;padding:11px 12px;border:1px solid rgba(7,148,71,.22);border-radius:15px;background:linear-gradient(135deg,#eef9f3,#fff);color:#063d29}.re-property-open-house-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#087a45;color:#fff}.re-property-open-house-icon svg{width:17px;height:17px}.re-property-open-house>span:nth-child(2){display:grid;gap:2px;min-width:0}.re-property-open-house strong{font-size:12px;text-transform:uppercase;letter-spacing:.04em}.re-property-open-house small{color:#5b6b63;font-size:10px;white-space:normal}.re-property-open-house b{display:flex;align-items:center;gap:4px;color:#087a45;font-size:11px}.re-property-open-house b svg{width:14px;height:14px}@media(max-width:520px){.re-property-card[id]{scroll-margin-top:86px}.re-property-open-house{grid-template-columns:auto minmax(0,1fr);padding:10px}.re-property-open-house b{grid-column:2}}
@media(max-width:820px){.re-open-house-facts{grid-template-columns:1fr}.re-price-history-card svg{height:190px}.re-price-history-legend small{margin-left:0;width:100%}}
.re-open-house-hero{background:radial-gradient(circle at 82% 30%,rgba(34,176,98,.5),transparent 26%),linear-gradient(135deg,#041d14,#087a45)}.re-open-house-hero .re-kicker{color:#91efb9}.re-open-house-filters{display:grid;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:10px;margin:-108px 0 70px;padding:18px;position:relative;z-index:4;border:1px solid rgba(255,255,255,.7);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 20px 55px rgba(0,40,25,.16);backdrop-filter:blur(14px)}.re-open-house-filters label{display:grid;gap:6px}.re-open-house-filters label span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--re-muted)}.re-open-house-filters select{height:52px;padding:0 14px;border:1px solid var(--re-line);border-radius:14px;background:#f6faf7}.re-open-house-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.re-open-house-event{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);overflow:hidden;border:1px solid var(--re-line);border-radius:28px;background:#fff;box-shadow:var(--re-shadow-soft)}.re-open-house-image{position:relative;min-height:350px}.re-open-house-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.re-open-house-image span{position:absolute;left:16px;top:16px;padding:9px 12px;border-radius:999px;background:#fff;color:#063d29;font-size:11px;font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.14)}.re-open-house-body{display:grid;align-content:start;gap:12px;padding:28px}.re-open-house-body>small{font-weight:900;color:var(--re-green);text-transform:uppercase;letter-spacing:.07em}.re-open-house-body h3{margin:0;font-size:28px}.re-open-house-body p{margin:0;color:var(--re-muted);line-height:1.65}.re-open-house-meta{display:grid;gap:8px;margin-top:6px}.re-open-house-meta span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800}.re-open-house-meta svg{width:16px;color:var(--re-green)}.re-open-house-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px}.re-open-house-actions>a:first-child{font-size:12px;font-weight:900;color:var(--re-green)}.re-open-house-booking{border-top:6px solid var(--re-green)}
@media(max-width:1050px){.re-open-house-grid{grid-template-columns:1fr}.re-open-house-event{grid-template-columns:minmax(240px,.75fr) 1fr}}@media(max-width:720px){.re-open-house-filters{grid-template-columns:1fr;margin-top:-70px}.re-open-house-event{grid-template-columns:1fr}.re-open-house-image{min-height:270px}.re-open-house-body{padding:22px}}

/* R24.6.16 · Open House salvabile e condivisibile */
.re-open-house-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px;padding-top:14px;border-top:1px solid var(--re-line)}
.re-open-house-toolbar .fav-btn{min-height:40px;padding:0 13px;font-size:12px}
.re-open-house-toolbar .share-group{display:inline-flex;gap:5px;flex-wrap:wrap}
.re-open-house-detail-actions{margin-top:18px;padding-top:16px;border-top:1px solid var(--re-line);justify-content:flex-start!important}
.re-open-house-detail-actions .share-bar-label{display:inline-flex!important;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--re-muted)}
.re-open-house-toolbar .share-btn{width:40px!important;height:40px!important}
.re-open-house-share-label{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--re-muted);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.re-open-house-share-label svg{width:15px;height:15px;color:var(--re-green)}
.re-open-house-booking .re-open-house-toolbar{max-width:760px;margin-top:18px}
@media(max-width:620px){.re-open-house-toolbar{align-items:stretch}.re-open-house-toolbar .fav-btn{width:100%;justify-content:center}.re-open-house-share-label{margin-left:0}.re-open-house-toolbar .share-group{margin-left:auto}}
.re-mobile-drawer-head img{width:150px;max-height:58px;object-fit:contain}
@media(max-width:820px){.re-brand{width:142px}.re-header-main{height:74px;min-height:74px}.re-mobile-drawer-head img{width:138px}}
@media(max-width:360px){.re-brand{width:126px}}

.re-property-card,.re-service-card,.re-agency-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
@media(hover:hover){.re-property-card:hover,.re-service-card:hover,.re-agency-card:hover{transform:translateY(-3px);box-shadow:0 18px 48px rgba(3,57,35,.11);border-color:rgba(0,126,65,.22)}}
.re-btn-green{background:linear-gradient(135deg,#007b40,#00964d)}
.re-btn-red{background:linear-gradient(135deg,#cf1f2b,#e3202d)}

/* ========================================================================== */
/* MY RE.ONE CLIENT HUB · V8.5.6                                              */
/* ========================================================================== */
.re-customer-hero{background:linear-gradient(135deg,#054b31 0%,#087b48 58%,#0b9a58 100%);color:#fff;padding:74px 0 62px;position:relative;overflow:hidden}
.re-customer-hero:after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-140px;top:-210px;box-shadow:0 0 0 70px rgba(255,255,255,.035),0 0 0 140px rgba(255,255,255,.025)}
.re-customer-hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.55fr);gap:48px;align-items:end;position:relative;z-index:1}.re-customer-hero h1{font-size:clamp(2.7rem,5vw,5.2rem);letter-spacing:-.055em;line-height:.96;margin:10px 0 18px}.re-customer-hero p{max-width:780px;font-size:1.12rem;line-height:1.7;color:rgba(255,255,255,.86)}.re-customer-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.re-btn-ghost-light{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff}.re-customer-agency-card{background:rgba(255,255,255,.96);color:#15231d;border-radius:24px;padding:26px;box-shadow:0 22px 60px rgba(0,0,0,.16)}.re-customer-agency-card>span{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#087b48;font-weight:800}.re-customer-agency-card strong{display:block;font-size:1.35rem;margin:9px 0 4px}.re-customer-agency-card p{color:#66756d;font-size:.95rem;margin:0 0 8px}.re-customer-agency-card a{color:#087b48;font-weight:750}
.re-customer-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:34px;padding-top:36px;padding-bottom:90px;align-items:start}.re-customer-sidebar{position:sticky;top:108px;background:#fff;border:1px solid #e0e9e4;border-radius:24px;padding:18px;box-shadow:0 16px 50px rgba(15,55,38,.07)}.re-customer-profile-mini{display:flex;gap:12px;align-items:center;padding:10px 6px 18px;border-bottom:1px solid #e9efec}.re-customer-profile-mini strong,.re-customer-profile-mini span{display:block}.re-customer-profile-mini span{font-size:.78rem;color:#66756d;margin-top:3px;overflow-wrap:anywhere}.re-customer-avatar{width:43px;height:43px;border-radius:50%;background:linear-gradient(135deg,#087b48,#10a15d);color:#fff;display:grid;place-items:center;font-weight:850}.re-customer-nav-toggle{display:none}.re-customer-sidebar nav{display:grid;gap:4px;padding:14px 0}.re-customer-sidebar nav a{padding:11px 12px;border-radius:11px;color:#344b40;font-weight:700;display:flex;justify-content:space-between}.re-customer-sidebar nav a:hover,.re-customer-sidebar nav a.active{background:#e8f6ee;color:#06683d}.re-customer-sidebar nav b{background:#d7eee1;color:#06683d;border-radius:999px;padding:1px 7px;font-size:.72rem}.re-customer-logout{display:block;border-top:1px solid #e9efec;padding:15px 10px 5px;color:#a61f29;font-weight:750}.re-customer-content{min-width:0}.re-customer-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.re-customer-metrics article{background:#fff;border:1px solid #dce8e2;border-radius:20px;padding:20px;min-width:0;box-shadow:0 9px 28px rgba(12,55,38,.045)}.re-customer-metrics span,.re-customer-metrics small{display:block;color:#607168}.re-customer-metrics span{font-size:.78rem;font-weight:750}.re-customer-metrics strong{display:block;font-size:2.15rem;line-height:1;margin:10px 0 5px;color:#11231b}.re-customer-metrics small{font-size:.72rem}.re-customer-section{background:#fff;border:1px solid #dce7e1;border-radius:28px;padding:30px;margin-top:22px;box-shadow:0 16px 48px rgba(10,50,32,.05);scroll-margin-top:120px}.re-customer-section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}.re-customer-section-head h2{font-size:clamp(1.7rem,3vw,2.35rem);letter-spacing:-.035em;margin:5px 0 0}.re-customer-section-head>p{max-width:520px;color:#586b61}.re-link-arrow{color:#066d40;font-weight:800}.re-customer-split,.re-customer-tabs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.re-customer-split>div,.re-customer-tabs-grid>div{min-width:0}.re-customer-split h3,.re-customer-tabs-grid h3{font-size:1.08rem;margin:0 0 13px}.re-customer-property-list{display:grid;gap:12px}.re-customer-property-list article{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;padding:10px;border:1px solid #dbe7e1;border-radius:17px}.re-customer-property-list img{width:112px;height:92px;object-fit:cover;border-radius:12px}.re-customer-property-list h4{margin:3px 0;font-size:1rem;line-height:1.25}.re-customer-property-list small{color:#066d40;font-weight:750}.re-customer-property-list p{margin:2px 0 6px;color:#586b61;font-size:.84rem}.re-inline-actions{display:flex;gap:11px;flex-wrap:wrap}.re-inline-actions a,.re-inline-actions button{font:inherit;font-size:.78rem;color:#066d40;font-weight:750;background:none;border:0;padding:0;cursor:pointer}.re-empty{padding:22px;border:1px dashed #c4d5cc;border-radius:16px;background:#f7faf8;color:#566a60;line-height:1.55}.re-section-note{color:#61736a;font-size:.85rem;line-height:1.55}.re-timeline-card,.re-offer-card{border:1px solid #dce7e1;border-radius:17px;padding:16px;margin-bottom:10px;background:#fff}.re-timeline-card{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center}.re-timeline-card.owner{border-left:4px solid #b9222d}.re-timeline-date{font-size:.78rem;color:#5d7066;font-weight:750}.re-timeline-card h4,.re-offer-card h4{margin:7px 0 2px}.re-timeline-card p,.re-offer-card p{margin:0;color:#586b61;font-size:.84rem}.re-status-chip{display:inline-flex;padding:5px 9px;border-radius:999px;background:#dff2e7;color:#066d40;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.re-offer-card strong{display:block;font-size:1.4rem;color:#075f39;margin:8px 0}.re-offer-card.received{background:linear-gradient(135deg,#fff,#fff8f8);border-color:#ecd7d9}.re-customer-action-form{margin-top:24px;padding:22px;background:#f7faf8;border:1px solid #d7e5de;border-radius:20px}.re-customer-action-form h3{margin:0 0 16px}.re-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:14px}.re-form-grid label,.re-full-label{display:grid;gap:6px}.re-form-grid label>span,.re-full-label>span{font-size:.76rem;font-weight:750;color:#42584d}.re-form-grid input,.re-form-grid select,.re-form-grid textarea,.re-full-label textarea{width:100%;min-width:0;border:1px solid #c5d5cd;border-radius:11px;background:#fff;color:#152820;padding:11px 12px;font:inherit}.re-full-label{margin-bottom:14px}.re-conversation-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px}.re-conversation-list{display:grid;gap:7px;align-content:start}.re-conversation-list a{position:relative;display:grid;padding:13px;border:1px solid #d9e5df;border-radius:14px;color:#192a22;background:#fff}.re-conversation-list a:hover{border-color:#8ebfa4;background:#f3faf6}.re-conversation-list span{font-size:.68rem;color:#066d40;font-weight:850}.re-conversation-list strong{font-size:.88rem;margin:4px 0}.re-conversation-list small{color:#61736a;font-size:.72rem}.re-conversation-list b{position:absolute;right:8px;top:8px;background:#b9222d;color:#fff;min-width:21px;height:21px;border-radius:50%;display:grid;place-items:center;font-size:.68rem}.re-thread-stack{display:grid;gap:18px;min-width:0}.re-thread{border:1px solid #d9e5df;border-radius:20px;overflow:hidden;scroll-margin-top:120px}.re-thread>header{padding:16px 18px;border-bottom:1px solid #e2ebe6;background:#fafcfb;display:flex;justify-content:space-between;gap:12px}.re-thread>header span:first-child{color:#066d40;font-size:.68rem;font-weight:850;letter-spacing:.08em}.re-thread>header h3{margin:3px 0}.re-thread-messages{padding:18px;display:flex;flex-direction:column;gap:10px;max-height:420px;overflow:auto;background:#f4f7f5}.re-message{max-width:78%;padding:11px 14px;border-radius:16px;background:#fff;border:1px solid #dbe5e0;align-self:flex-start}.re-message.mine{align-self:flex-end;background:#087b48;color:#fff;border-color:#087b48}.re-message small{display:block;margin-top:5px;font-size:.66rem;opacity:.75}.re-chat-composer{display:grid;grid-template-columns:1fr auto;gap:10px;padding:13px;border-top:1px solid #e2ebe6;background:#fff}.re-chat-composer textarea{width:100%;resize:vertical;border:1px solid #c5d5cd;border-radius:12px;padding:11px;font:inherit}.re-new-thread{border-color:#96caad}.re-document-grid{display:grid;gap:10px}.re-document-grid article{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;border:1px solid #dce7e1;border-radius:16px}.re-document-grid article span{font-size:.68rem;color:#066d40;font-weight:850;text-transform:uppercase}.re-document-grid h4{margin:4px 0}.re-document-grid p,.re-document-grid small{margin:0;color:#5c6f65;font-size:.8rem}.re-agency-relations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.re-agency-relations article{padding:20px;border:1px solid #dce7e1;border-radius:18px;background:linear-gradient(145deg,#fff,#f6f9f7)}.re-agency-relations span{font-size:.66rem;letter-spacing:.08em;font-weight:850;color:#066d40}.re-agency-relations h3{margin:7px 0}.re-agency-relations p{color:#5c6f65;font-size:.85rem}.re-customer-auth-card{border-top:4px solid #087b48}.re-customer-auth-card small{display:block;color:#61736a;line-height:1.45;margin-top:5px}
@media(max-width:1180px){.re-customer-metrics{grid-template-columns:repeat(3,1fr)}.re-form-grid{grid-template-columns:repeat(2,1fr)}.re-agency-relations{grid-template-columns:repeat(2,1fr)}}
.re-customer-calendar{margin-bottom:26px;border:1px solid #d6e5dd;border-radius:22px;background:linear-gradient(145deg,#fbfdfc,#f2f8f5);padding:18px;box-shadow:0 12px 34px rgba(10,62,38,.06);min-width:0;overflow:hidden}.re-customer-calendar>header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.re-customer-calendar>header div{display:grid;gap:2px}.re-customer-calendar>header small{font-size:.65rem;letter-spacing:.12em;font-weight:900;color:#087b48}.re-customer-calendar>header strong{font-size:1.35rem;text-transform:capitalize;color:#17352a}.re-customer-calendar>header nav{display:flex;align-items:center;gap:6px}.re-customer-calendar>header button{min-width:42px;min-height:42px;border:1px solid #cbdcd3;border-radius:12px;background:#fff;color:#12663f;font:800 .82rem/1 inherit;cursor:pointer}.re-customer-calendar>header button[data-cal-today]{padding:0 13px}.re-cal-week,.re-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.re-cal-week{margin-bottom:6px}.re-cal-week span{text-align:center;color:#66776f;font-size:.68rem;font-weight:850}.re-cal-grid>.empty{min-height:70px}.re-cal-day{position:relative;display:grid;align-content:space-between;min-width:0;min-height:70px;padding:8px;border:1px solid #dbe7e1;border-radius:12px;background:#fff;color:#213c30;text-align:left;cursor:pointer}.re-cal-day:hover,.re-cal-day:focus-visible{border-color:#58a77b;box-shadow:0 0 0 3px rgba(8,123,72,.1);outline:0}.re-cal-day.today{border-color:#087b48;background:#ecf8f1}.re-cal-day.selected{color:#fff;border-color:#087b48;background:#087b48}.re-cal-day.past{opacity:.68}.re-cal-day strong{font-size:.9rem}.re-cal-dots{display:flex;align-items:center;gap:3px;min-height:8px}.re-cal-dots i{display:block;width:7px;height:7px;border-radius:50%;background:#15945a}.re-cal-dots i.offer,.re-cal-dots i.proposal{background:#b9222d}.re-cal-dots i.billing{background:#d48613}.re-cal-dots i.contract_expiry,.re-cal-dots i.mandate_expiry,.re-cal-dots i.mandate_notice{background:#7b4cc2}.re-cal-day small{font-size:.58rem}.re-cal-selected{margin-top:14px;padding:15px;border:1px solid #d8e6df;border-radius:15px;background:#fff}.re-cal-selected>strong{display:block;text-transform:capitalize;margin-bottom:8px}.re-cal-selected>p{margin:0;color:#607269}.re-cal-event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.re-cal-event{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 10px;padding:11px;border:1px solid #dce7e1;border-left:4px solid #087b48;border-radius:11px;color:#17352a;background:#fbfdfc}.re-cal-event>span{grid-row:1/3;font-size:.7rem;font-weight:850;color:#087b48}.re-cal-event>b{font-size:.82rem;overflow-wrap:anywhere}.re-cal-event>small{font-size:.7rem;color:#61736a}.re-cal-event.offer,.re-cal-event.proposal{border-left-color:#b9222d}.re-cal-event.billing{border-left-color:#d48613}.re-cal-event.contract_expiry,.re-cal-event.mandate_expiry,.re-cal-event.mandate_notice{border-left-color:#7b4cc2}
@media(max-width:900px){.re-customer-hero-grid,.re-customer-layout,.re-conversation-layout{grid-template-columns:1fr}.re-customer-sidebar{position:sticky;top:72px;z-index:40;padding:9px 10px;border-radius:16px}.re-customer-nav-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:48px;padding:8px 11px;color:#17392a;border:0;background:#f2f8f5;border-radius:11px;text-align:left}.re-customer-nav-toggle span{font-size:.7rem;color:#607168;text-transform:uppercase;letter-spacing:.07em}.re-customer-nav-toggle b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.re-customer-nav-toggle i{font-style:normal;font-size:1.25rem;transition:transform .18s}.re-customer-nav-toggle[aria-expanded="true"] i{transform:rotate(180deg)}.re-customer-sidebar nav{display:none;grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(66dvh,560px);overflow-y:auto;padding:9px 0 2px}.re-customer-sidebar nav.open{display:grid}.re-customer-sidebar nav a{min-width:0;white-space:normal}.re-customer-profile-mini,.re-customer-logout{display:none}.re-customer-split,.re-customer-tabs-grid{grid-template-columns:1fr}.re-customer-hero{padding:52px 0 42px}}
@media(max-width:620px){.re-customer-layout{padding-left:12px;padding-right:12px;gap:16px}.re-customer-sidebar nav{grid-template-columns:1fr}.re-customer-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.re-customer-metrics article{padding:15px;border-radius:16px}.re-customer-metrics strong{font-size:1.8rem}.re-customer-section{padding:18px;border-radius:20px}.re-customer-section-head{align-items:flex-start;flex-direction:column}.re-form-grid,.re-agency-relations{grid-template-columns:1fr}.re-customer-property-list article{grid-template-columns:82px minmax(0,1fr)}.re-customer-property-list img{width:82px;height:82px}.re-timeline-card{grid-template-columns:1fr}.re-chat-composer{grid-template-columns:1fr}.re-message{max-width:94%}.re-document-grid article{align-items:flex-start;flex-direction:column}.re-customer-hero{padding:38px 0 32px}.re-customer-hero h1{font-size:2.55rem}.re-customer-hero p{font-size:1rem}.re-customer-agency-card{padding:19px}}
.re-dossier-customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.re-dossier-customer-grid>article{border:1px solid #d6e5dd;border-radius:20px;padding:20px;background:linear-gradient(145deg,#fff,#f7faf8)}.re-dossier-customer-grid header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.re-dossier-customer-grid header span{font-size:.68rem;letter-spacing:.08em;color:#087748;font-weight:850}.re-dossier-customer-grid header h3{margin:5px 0 0}.re-dossier-customer-grid header>strong{font-size:1.9rem;color:#087748}.re-dossier-progress{height:9px;border-radius:999px;background:#e2ece7;overflow:hidden;margin:16px 0}.re-dossier-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#087748,#17a663)}.re-dossier-customer-grid details{border-top:1px solid #e1e9e5;padding-top:12px;margin-top:12px}.re-dossier-customer-grid summary{cursor:pointer;font-weight:800}.re-dossier-customer-grid ul{list-style:none;padding:0;margin:10px 0 0}.re-dossier-customer-grid li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #edf2ef;font-size:.82rem}.re-dossier-customer-grid li b{color:#8d2630;text-align:right}@media(max-width:760px){.re-dossier-customer-grid{grid-template-columns:1fr}}
.re-interaction-history{margin-top:22px;padding-top:18px;border-top:1px solid #e1e9e5}.re-interaction-history>h3{margin:0 0 12px}.re-interaction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.re-interaction-grid>article{padding:14px;border:1px solid #dce7e1;border-radius:13px;background:linear-gradient(145deg,#fff,#fafcfb)}.re-interaction-grid header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.re-interaction-grid header span{display:block;color:#087443;font-size:8px;font-weight:850;letter-spacing:.07em}.re-interaction-grid h4{margin:3px 0 0;font-size:13px}.re-interaction-grid header b{padding:5px 8px;color:#486157;border-radius:999px;background:#eef5f1;font-size:8px}.re-interaction-grid p{margin:9px 0;color:#52675d;font-size:10px;line-height:1.55}.re-interaction-grid>article>small{color:#7b8a83;font-size:8px}@media(max-width:680px){.re-interaction-grid{grid-template-columns:1fr}}
@media(max-width:620px){.re-customer-calendar{padding:12px;margin-inline:-4px}.re-customer-calendar>header{align-items:flex-start}.re-customer-calendar>header strong{font-size:1.05rem}.re-customer-calendar>header button{min-width:38px;min-height:38px}.re-customer-calendar>header button[data-cal-today]{display:none}.re-cal-week,.re-cal-grid{gap:3px}.re-cal-grid>.empty,.re-cal-day{min-height:50px}.re-cal-day{padding:5px;border-radius:9px}.re-cal-dots{gap:2px}.re-cal-dots i{width:5px;height:5px}.re-cal-event-list{grid-template-columns:1fr}.re-cal-event{grid-template-columns:1fr}.re-cal-event>span{grid-row:auto}}

/* RE.ONE 8.6.2 · Cliente 360°, qualità e reputazione */
.re-complaint-thread{border:1px solid #e0e9e4;border-radius:18px;overflow:hidden;background:#fff;margin-bottom:14px}.re-complaint-thread>header{padding:16px 18px;background:#f7faf8;border-bottom:1px solid #e5ece8}.re-complaint-thread>p{padding:0 18px;color:#5f7067;line-height:1.6}.re-thread-message{max-width:82%;padding:11px 14px;border-radius:15px;background:#fff;border:1px solid #dde7e1}.re-thread-message.mine{margin-left:auto;background:#087b48;color:#fff;border-color:#087b48}.re-thread-message strong,.re-thread-message small{display:block;font-size:.7rem}.re-thread-message p{margin:4px 0;line-height:1.5}.re-notification-pref-grid{display:grid;gap:10px}.customer-notification-pref-form{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto auto;gap:12px;align-items:center;padding:12px 14px;background:#fff;border:1px solid #dfe8e3;border-radius:14px}.customer-notification-pref-form label{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#55665d}.re-review-summary{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;align-items:stretch}.re-review-score{display:grid;place-content:center;text-align:center;border-radius:24px;background:linear-gradient(145deg,#063c29,#0b8d50);color:#fff;padding:28px}.re-review-score strong{font-size:4rem;line-height:1}.re-review-score span{font-size:1.35rem;margin:9px 0}.re-review-score small{color:rgba(255,255,255,.75)}.re-listing-quality .re-cta-band{padding:34px}.re-report-form{margin-top:20px}.re-report-form .field span{color:rgba(255,255,255,.82)}.re-report-form input,.re-report-form select,.re-report-form textarea{background:#fff;color:#17251f}.re-report-form .check-row{color:#fff}.re-customer-metrics{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1280px){.re-customer-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.re-review-summary{grid-template-columns:1fr}.customer-notification-pref-form{grid-template-columns:1fr 1fr}.customer-notification-pref-form strong{grid-column:1/-1}}
@media(max-width:620px){.customer-notification-pref-form{grid-template-columns:1fr 1fr}.customer-notification-pref-form .re-btn{grid-column:1/-1}.re-review-score strong{font-size:3.2rem}}

/* R10 · gestione sicura dell'account cliente */
.re-customer-account-actions{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:24px;padding:22px;border:1px solid #ebc9c7;border-radius:20px;background:#fff7f6}.re-customer-account-actions h3{margin:0 0 7px;color:#84251f}.re-customer-account-actions p{max-width:720px;margin:0;color:#6c514e;line-height:1.55}.re-customer-account-actions>div:last-child{display:flex;flex:none;gap:9px;flex-wrap:wrap}.re-btn-danger{border:1px solid #ad2d26;background:#ad2d26;color:#fff}.re-btn-danger:hover,.re-btn-danger:focus-visible{background:#8e211c;color:#fff}.re-customer-delete-dialog{width:min(620px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:hidden;padding:0;border:0;border-radius:24px;color:#17251f;box-shadow:0 30px 90px rgba(23,20,19,.34)}.re-customer-delete-dialog::backdrop{background:rgba(20,13,12,.72);backdrop-filter:blur(5px)}.re-customer-delete-dialog form{display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:calc(100dvh - 24px);overflow:hidden}.re-customer-delete-dialog header,.re-customer-delete-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 22px;background:#fff}.re-customer-delete-dialog header{border-bottom:1px solid #eadedc}.re-customer-delete-dialog footer{justify-content:flex-end;border-top:1px solid #eadedc}.re-customer-delete-dialog h2{margin:4px 0 0;font-size:clamp(23px,5vw,30px)}.re-customer-delete-dialog header>button{width:42px;height:42px;flex:none;border:0;border-radius:50%;background:#f5e9e7;color:#84251f;font-size:27px;cursor:pointer}.re-customer-delete-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:22px}.re-customer-delete-body p{margin:0 0 19px;color:#5f514f;line-height:1.6}.re-customer-delete-body label{display:grid;gap:7px;margin-top:13px;font-weight:750}.re-customer-delete-body input{width:100%;min-height:46px;border:1px solid #d6c4c1;border-radius:11px;padding:10px 12px;font:inherit}.re-customer-delete-dialog[open]{animation:re-dialog-in .16s ease-out}@keyframes re-dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:700px){.re-customer-account-actions{align-items:stretch;flex-direction:column;padding:18px}.re-customer-account-actions>div:last-child{display:grid;grid-template-columns:1fr}.re-customer-delete-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:17px}.re-customer-delete-dialog form{max-height:calc(100dvh - 12px)}.re-customer-delete-dialog header,.re-customer-delete-dialog footer{padding:15px}.re-customer-delete-dialog footer{display:grid;grid-template-columns:1fr}.re-customer-delete-body{padding:18px 15px}.re-customer-delete-body input{font-size:16px}}

/* ===== RE.ONE 8.6.2 · Cliente 360 / Agenda / Qualità ===== */
.re360-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}
.re360-card{grid-column:span 6;background:#fff;border:1px solid rgba(6,86,48,.10);border-radius:24px;padding:22px;box-shadow:0 12px 38px rgba(6,60,39,.07)}
.re360-card--wide{grid-column:1/-1}
.re360-kicker{font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#087846}
.re360-title{font-size:1.22rem;font-weight:800;color:#10392b;margin:.25rem 0 .7rem}
.re360-muted{color:#708078}
.re360-timeline{display:grid;gap:0}
.re360-event{position:relative;padding:0 0 20px 28px;border-left:2px solid #dfece5;margin-left:7px}
.re360-event:before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#078246;box-shadow:0 0 0 5px #e9f5ee}
.re360-event:last-child{border-left-color:transparent}
.re-calendar{background:#fff;border:1px solid rgba(6,86,48,.1);border-radius:24px;overflow:hidden}
.re-calendar-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e9efeb;gap:12px}
.re-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#e5ece8}
.re-calendar-weekday,.re-calendar-day{background:#fff;min-width:0}
.re-calendar-weekday{padding:10px 6px;text-align:center;font-size:.73rem;text-transform:uppercase;font-weight:800;color:#6d7b74}
.re-calendar-day{min-height:104px;padding:8px;cursor:pointer;transition:.15s}
.re-calendar-day:hover,.re-calendar-day.is-selected{background:#f0f8f4}
.re-calendar-day.is-out{opacity:.42}
.re-calendar-date{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:800}
.re-calendar-day.is-today .re-calendar-date{background:#078246;color:#fff}
.re-calendar-dot{display:block;margin-top:5px;padding:4px 6px;border-radius:8px;background:#ecf6f0;color:#126340;font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.re-calendar-dot--proposal{background:#fff0f1;color:#a91e28}
.re-calendar-dot--payment{background:#fff7e6;color:#8c5d00}
.re-calendar-dot--mandate{background:#edf2ff;color:#304b92}
.re-calendar-detail{padding:18px 20px;border-top:1px solid #edf1ef}
.re-notification-list{display:grid;gap:10px}
.re-notification{display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px 16px;border:1px solid #e4ece7;border-radius:16px;background:#fff}
.re-notification.is-unread{border-color:#9fd1b6;background:#f2faf6}
.re-notification-title{font-weight:800;color:#123a2c}
.re-support-card,.re-complaint-card{border:1px solid #e4ece7;border-radius:18px;padding:16px;background:#fff}
.re-complaint-thread{display:grid;gap:10px;margin-top:12px}
.re-complaint-message{max-width:86%;padding:10px 12px;border-radius:14px;background:#f1f5f3}
.re-complaint-message.is-customer{margin-left:auto;background:#e9f6ef}
.re-visit-feedback{margin-top:14px;padding:14px;border-radius:16px;background:#f7faf8;border:1px solid #e4ece7}
.re-payment-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;padding:12px;border-radius:14px;background:#f6faf8}
.re-payment-mini div{min-width:0}
.re-payment-mini strong{display:block;color:#173f30;font-size:.78rem}
.re-payment-mini span{display:block;overflow-wrap:anywhere}
.re-review-response{margin-top:12px;padding:12px 14px;border-left:4px solid #087846;background:#f2f8f5;border-radius:0 12px 12px 0}
.re-best-agencies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.re-best-agency{border:1px solid #e6ece8;border-radius:20px;padding:18px;background:#fff}
.re-stars{letter-spacing:.08em;color:#c53a2d;font-weight:900}
.re-badge-soft{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#edf7f1;color:#17633f;font-size:.72rem;font-weight:800}
@media(max-width:900px){.re360-card{grid-column:1/-1}.re-best-agencies{grid-template-columns:1fr 1fr}.re-calendar-day{min-height:84px}}
@media(max-width:640px){.re360-grid{gap:12px}.re360-card{padding:17px;border-radius:19px}.re-best-agencies{grid-template-columns:1fr}.re-calendar-head{padding:14px}.re-calendar-grid{min-width:560px}.re-calendar{overflow-x:auto}.re-calendar-detail{position:sticky;left:0;background:#fff;min-width:min(100%,560px)}.re-payment-mini{grid-template-columns:1fr}.re-notification{grid-template-columns:1fr}.re-complaint-message{max-width:94%}}
/* RE.ONE Valuation Intelligence 8.6.2 */
.re-valuation-hero{background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.13),transparent 28%),linear-gradient(135deg,#064b31,#087a45 62%,#0b5e3e)}
.re-valuation-hero-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.re-valuation-hero-badges span,.re-ai-chip{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.11);color:#fff;border-radius:999px;padding:8px 13px;font-size:.82rem;font-weight:700}.re-ai-chip{background:#edf8f2;color:#087a45;border-color:#cae7d7;align-self:flex-start}
.re-valuation-calculator{background:#fff}.re-calculator-step{display:flex;align-items:center;gap:13px;margin:30px 0 18px}.re-calculator-step>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#087a45;color:#fff;font-weight:900}.re-calculator-step strong{display:block;font-size:1.05rem}.re-calculator-step small{color:#66766e}.re-valuation-details{margin-top:22px;border:1px solid #dce8e2;border-radius:16px;padding:16px 18px}.re-valuation-details summary{cursor:pointer;font-weight:800;color:#075a3a}.re-valuation-submit{margin-top:24px}.re-form-note{font-size:.83rem;color:#738078;margin-top:10px}
.re-valuation-result-section{background:#f5f8f6}.re-valuation-report{background:#fff;border:1px solid #dbe6e0;border-radius:28px;padding:34px;box-shadow:0 25px 70px rgba(6,70,45,.09)}.re-report-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;border-bottom:1px solid #e8efeb;padding-bottom:25px}.re-report-head h2{font-size:clamp(2rem,4vw,3rem);margin:8px 0}.re-confidence{min-width:150px;background:#ecf8f1;border-radius:18px;padding:16px;text-align:center}.re-confidence strong{font-size:2.2rem;color:#087a45;display:block}.re-confidence span{font-size:.8rem;font-weight:700}.re-report-print-estimate{display:flex;align-items:center;gap:14px;margin:20px 0;padding:15px 18px;border:1px solid #b9dcc9;border-left:5px solid #087a45;border-radius:14px;background:#eff9f3}.re-report-print-estimate span{font-size:.78rem;font-weight:850;color:#466156;text-transform:uppercase}.re-report-print-estimate strong{margin-left:auto;color:#075a3a;font-size:1.45rem}.re-report-print-estimate small{color:#65776e}.re-value-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:28px 0}.re-value-trio article{border:1px solid #dce7e1;border-radius:20px;padding:22px;position:relative}.re-value-trio span,.re-value-trio small{display:block;color:#6b786f}.re-value-trio strong{display:block;font-size:clamp(1.55rem,3vw,2.3rem);margin:8px 0}.re-value-trio .is-recommended{border:2px solid #087a45;background:#f0faf4;transform:translateY(-6px)}.re-value-trio .is-recommended b{position:absolute;right:12px;top:12px;background:#087a45;color:#fff;border-radius:999px;padding:5px 8px;font-size:.65rem}.re-value-trio .is-max strong{color:#c82333}.re-range{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;position:relative;padding-top:20px;margin:15px 4px 32px}.re-range:before{content:"";height:8px;border-radius:99px;background:linear-gradient(90deg,#d7efe1,#087a45,#f4d4d7);position:absolute;top:0;left:0;right:0}.re-range i{position:absolute;top:-5px;width:18px;height:18px;border:4px solid #fff;background:#087a45;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.2)}.re-range span:last-child{text-align:right}.re-range strong{text-align:center;color:#087a45}.re-source-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:30px}.re-source-grid article{background:#f7faf8;border-radius:15px;padding:15px}.re-source-grid strong{font-size:1.5rem;color:#075a3a;display:block}.re-source-grid span{font-size:.74rem;color:#68756e}.re-omi-band{display:flex;justify-content:space-between;gap:24px;padding:20px;border-left:5px solid #087a45;background:#eff8f3;border-radius:4px 16px 16px 4px;margin:20px 0 34px}.re-omi-band span,.re-omi-band strong{display:block}.re-omi-band small{max-width:600px;color:#66756d}.re-strategy-grid,.re-comparable-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.re-strategy-grid article,.re-comparable-grid article{border:1px solid #dde8e2;border-radius:18px;padding:19px}.re-strategy-grid span{font-weight:800;color:#075a3a}.re-strategy-grid strong{display:block;font-size:1.15rem;margin:7px 0}.re-comparable-grid article>div{display:flex;justify-content:space-between;align-items:center;gap:8px}.re-comparable-grid b{font-size:.75rem;color:#087a45}.re-adjustments{margin:28px 0;display:flex;flex-wrap:wrap;gap:8px}.re-adjustments h3{width:100%}.re-adjustments span{border-radius:999px;background:#f3f7f5;padding:8px 12px;font-size:.82rem}.re-report-foot{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-top:32px;padding-top:22px;border-top:1px solid #e4ebe7}.re-report-foot p{margin:5px 0}.re-report-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:900px){.re-source-grid{grid-template-columns:repeat(3,1fr)}.re-value-trio,.re-strategy-grid,.re-comparable-grid{grid-template-columns:1fr}.re-value-trio .is-recommended{transform:none}.re-report-head,.re-report-foot,.re-omi-band{flex-direction:column}.re-confidence{width:100%}.re-valuation-report{padding:22px}}
@media(max-width:520px){.re-source-grid{grid-template-columns:repeat(2,1fr)}.re-valuation-report{padding:16px;border-radius:20px}.re-range{font-size:.76rem}.re-report-actions .re-btn{width:100%;justify-content:center}}
@media print{@page{size:A4 portrait;margin:9mm}html,body{width:100%!important;min-width:0!important;height:auto!important;overflow:visible!important;background:#fff!important}body{margin:0!important;padding:0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}header.re-header,.re-footer,.re-public-footer,.re-mobile-bottom,.re-report-configurator,.re-report-actions,.re-i18n-switcher{display:none!important}.re-report-page,.re-valuation-result-section{display:block!important;width:100%!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}.re-report-page>.re-shell,.re-valuation-result-section>.re-shell{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important}.re-valuation-report{position:static!important;inset:auto!important;display:block!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important;box-shadow:none!important;border:0!important;border-radius:0!important}.re-valuation-report [data-report-section][hidden]{display:none!important}.re-report-document-header,.re-report-head,.re-report-print-estimate,.re-value-trio article,.re-omi-band,.re-strategy-grid article,.re-comparable-grid article,.re-professional-factor-grid article,.re-report-document-footer aside{break-inside:avoid}.re-report-section-title{break-after:avoid}.re-valuation-report section,.re-report-document-footer{overflow:visible!important}.re-valuation-report .re-comparable-grid,.re-valuation-report .re-strategy-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.re-report-print-estimate{margin:5mm 0!important;padding:4mm!important}.re-report-print-estimate strong{font-size:15pt}.re-valuation-report a{overflow-wrap:anywhere;word-break:break-word}}

/* RE.ONE Market Intelligence 8.6.2 */
.re-open-data-sources{margin:20px 0;padding:18px 20px;border:1px solid rgba(0,126,65,.16);background:#f7fbf8;border-radius:18px}.re-source-pills{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.re-source-pills span{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;font-size:.78rem;font-weight:800;background:#eef2ef;color:#42504a}.re-source-pills .is-ok{background:#e7f6ed;color:#087a45}.re-source-pills .is-muted{background:#f4f4f4;color:#69736f}.re-valuation-calculator input[name="country_code"]{text-transform:uppercase}.re-ai-chip{white-space:normal;text-align:center}

/* Selettore lingua nativo: compatto, coerente e utilizzabile anche da tastiera. */
.re-language{position:relative;display:inline-flex;align-items:center;flex:none}
.re-language:after{content:"⌄";position:absolute;right:8px;top:50%;transform:translateY(-58%);font-size:16px;font-weight:900;line-height:1;pointer-events:none;color:var(--re-ink)}
.re-language select{min-width:54px;min-height:42px;padding:0 24px 0 9px;border:1px solid transparent;border-radius:999px;appearance:none;-webkit-appearance:none;background:transparent;color:var(--re-ink);font:800 14px/1 inherit;cursor:pointer}
.re-language select:hover{background:var(--re-warm)}
.re-language select:focus-visible{outline:3px solid rgba(8,122,69,.18);border-color:var(--re-green)}

/* RE.ONE V9.0.0 hotfix · stabilità e leggibilità mobile */
@media(max-width:820px){
html,body{max-width:100%;overflow-x:clip;overscroll-behavior-x:none}
.re-public .re-shell{width:auto!important;max-width:none!important;margin-inline:16px!important}
.re-header .re-header-main{height:68px!important;min-height:68px!important;gap:12px!important;margin-inline:16px!important}
.re-header .re-brand{width:128px!important;max-width:42vw!important}
.re-header .re-brand img{max-height:52px!important}
.re-header-actions{gap:4px!important;min-width:0}
.re-header-actions .re-language select{min-height:42px;font-size:15px;padding-inline:9px 24px}
.re-header-actions .re-menu-toggle{width:44px;height:44px;flex:none}
.re-section.re-listing-results{padding:40px 0 68px!important}
.re-results-toolbar{gap:18px!important;margin-bottom:20px!important}
.re-results-toolbar h2{font-size:clamp(30px,8.6vw,38px)!important;line-height:1.04!important;letter-spacing:-.035em;overflow-wrap:anywhere}
.re-results-toolbar p{font-size:15px;line-height:1.48}
.re-results-actions{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;width:100%}
.re-sort-form,.re-sort-form select{min-width:0;width:100%;max-width:100%}
.re-sort-form select{height:46px;font-size:16px;padding-left:14px}
.re-results-actions>.re-btn{min-height:46px;padding-inline:16px;white-space:nowrap}
.re-search-property-grid{gap:16px!important}
.re-search-property-grid .re-property-card{border-radius:20px!important}
.re-search-property-grid .re-property-media{height:clamp(220px,64vw,280px)!important}
.re-search-property-grid .re-property-body{padding:18px!important}
.re-search-property-grid .re-property-body h3{font-size:22px!important;line-height:1.13!important}
.re-search-property-grid .re-property-foot{align-items:center;gap:12px}
.re-search-property-grid .re-property-foot>strong{font-size:20px}
.re-empty-premium{padding:34px 18px;border-radius:20px}
.re-empty-premium h3{font-size:24px}
}

/* Archivio documentale My RE.ONE: azioni esplicite e stato personale. */
.re-document-grid article.is-archived{background:#f3f5f4;opacity:.82}
.re-document-actions{display:flex;justify-content:flex-end;align-items:center;gap:7px;flex-wrap:wrap}
.re-document-actions .re-btn{white-space:nowrap}
@media(max-width:390px){
.re-public .re-shell{margin-inline:12px!important}
.re-header .re-header-main{margin-inline:12px!important}
.re-header .re-brand{width:116px!important}
.re-header-actions .re-language select{padding-inline:7px 20px}
.re-results-toolbar h2{font-size:30px!important}
.re-results-actions>.re-btn{padding-inline:13px}
.re-search-property-grid .re-property-foot>span{font-size:11px}
}

/* ========================================================================== 
   RE.ONE V9.0.2 - public adaptive layout (desktop, tablet, phone)
   ========================================================================== */

.re-public {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    overflow-x: clip;
}

.re-public :where(main, section, article, aside, nav, form, fieldset, .re-shell,
                  .shell, .re-property-card, .re-property-body,
                  .property-main-column, .property-sidebar, .detail-card) {
    min-width: 0;
}

.re-public :where(img, video, iframe, canvas) {
    max-width: 100%;
    height: auto;
}

.re-public :where(input, select, textarea, button) { min-width: 0; max-width: 100%; }
.re-public :where(p, li, dd, strong, small) { overflow-wrap: anywhere; }

/* Result card image carousel. The functional layer emits these classes. */
.re-card-gallery {
    position: relative;
    width: 100%;
    height: 300px;
    min-width: 0;
    overflow: hidden;
    isolation: isolate;
    background: #e6ece8;
}

.re-card-gallery .re-property-media-link {
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
}

.re-card-gallery .re-property-media-link img,
.re-card-gallery > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity .18s ease, transform .45s ease;
}

.re-property-card:hover .re-card-gallery img { transform: scale(1.025); }

.re-card-gallery-nav {
    position: absolute;
    top: 50%;
    z-index: 6;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(255,255,255,.65);
    border-radius: 50%;
    color: #11251d;
    background: rgba(255,255,255,.94);
    box-shadow: 0 7px 24px rgba(7,31,21,.2);
    transform: translateY(-50%);
    touch-action: manipulation;
    transition: background .18s ease, opacity .18s ease, transform .18s ease;
}

.re-card-gallery-nav:hover,
.re-card-gallery-nav:focus-visible {
    background: #fff;
    transform: translateY(-50%) scale(1.04);
}

.re-card-gallery-nav.prev,
.re-card-gallery-nav[data-gallery-prev] { left: 12px; }
.re-card-gallery-nav.next,
.re-card-gallery-nav[data-gallery-next] { right: 12px; }
.re-card-gallery-nav svg { width: 19px; height: 19px; }

.re-card-gallery-dots {
    position: absolute;
    left: 50%;
    bottom: 12px;
    z-index: 6;
    display: flex;
    justify-content: center;
    gap: 5px;
    max-width: calc(100% - 110px);
    padding: 5px 7px;
    border-radius: 999px;
    background: rgba(6,28,19,.28);
    backdrop-filter: blur(7px);
    transform: translateX(-50%);
    pointer-events: none;
}

.re-card-gallery-dots :where(i, button, span) {
    display: block;
    width: 6px;
    height: 6px;
    min-width: 6px;
    min-height: 6px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255,255,255,.65);
    transition: width .18s ease, background .18s ease;
}

.re-card-gallery-dots :where(.active, .is-active, .on, [aria-current="true"]) {
    width: 18px;
    background: #fff;
}

.re-card-gallery .re-favorite { z-index: 8; }

.re-property-foot > a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--re-green);
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
}

.re-property-foot > a svg { transition: transform .18s ease; }
.re-property-foot > a:hover svg { transform: translateX(3px); }

/* Keyboard/touch mega menu state emitted by public.js. */
.re-nav-group.is-open .re-mega {
    opacity: 1;
    visibility: visible;
    transform: none;
}

/* Full-screen gallery: stable central stage, reachable arrows and a dedicated
   thumbnail rail. Horizontal movement is contained inside the rail only. */
.re-public .lightbox {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 12px;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    max-width: 100%;
    overflow: hidden;
    padding: max(56px, env(safe-area-inset-top)) 16px
             max(12px, env(safe-area-inset-bottom));
}

.re-public .lightbox[hidden] { display: none; }

.re-public .lightbox-stage {
    grid-column: 1;
    grid-row: 1;
    position: relative;
    display: grid;
    place-items: center;
    width: 100%;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    margin: 0;
    overflow: hidden;
}

.re-public .lightbox-stage > img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: calc(100vh - 175px);
    max-height: calc(100dvh - 175px);
    object-fit: contain;
    border-radius: 12px;
}

.re-public .lightbox-stage figcaption {
    position: absolute;
    left: 50%;
    bottom: 10px;
    padding: 6px 10px;
    border-radius: 999px;
    color: #fff;
    background: rgba(3,18,12,.68);
    backdrop-filter: blur(7px);
    font-size: 12px;
    font-weight: 800;
    transform: translateX(-50%);
}

.re-public .lightbox-nav {
    position: absolute;
    top: 50%;
    z-index: 8;
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    margin: 0;
    border: 1px solid rgba(255,255,255,.55);
    border-radius: 50%;
    color: #102219;
    background: rgba(255,255,255,.94);
    transform: translateY(-50%);
    touch-action: manipulation;
}

.re-public .lightbox-nav.prev { left: max(14px, env(safe-area-inset-left)); }
.re-public .lightbox-nav.next { right: max(14px, env(safe-area-inset-right)); }

.re-public .lightbox-thumbnails {
    grid-column: 1;
    grid-row: 2;
    justify-self: center;
    display: flex !important;
    gap: 8px;
    width: min(980px, 100%);
    max-width: 100%;
    min-height: 0;
    margin: 0;
    padding: 8px;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 15px;
    background: rgba(255,255,255,.08);
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
}

.re-public .lightbox-thumbnails button {
    flex: 0 0 86px;
    width: 86px;
    height: 62px;
    padding: 0;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 10px;
    background: #17231e;
    scroll-snap-align: center;
    touch-action: manipulation;
}

.re-public .lightbox-thumbnails button.active { border-color: #fff; }
.re-public .lightbox-thumbnails img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    border-radius: 7px;
}

.re-public .lightbox-close { z-index: 10; }

@media (hover: hover) and (pointer: fine) {
    .re-card-gallery-nav { opacity: 0; }
    .re-card-gallery:hover .re-card-gallery-nav,
    .re-card-gallery-nav:focus-visible { opacity: 1; }
}

/* The search/map composition stays measurable and never widens the viewport. */
.re-list-map-layout,
.re-listing-column,
.re-map-card,
.re-map-canvas,
.re-map-card .leaflet-container { min-width: 0; max-width: 100%; }

.re-map-card { isolation: isolate; }
.re-map-canvas,
.re-map-card .leaflet-container { width: 100%; }

/* Professional property detail hierarchy. */
.re-public .property-title-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, auto);
    grid-template-rows: auto auto;
    align-items: start;
    column-gap: 34px;
    row-gap: 12px;
}

.re-public .property-title-row > div:first-child {
    grid-column: 1;
    grid-row: 1 / span 2;
}

.re-public .property-title-actions {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    align-self: start;
    max-width: 100%;
}

.re-public .property-price-large {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
    align-self: end;
    padding: 0;
}

.re-public .property-title-row h1 {
    text-wrap: balance;
    overflow-wrap: break-word;
}

.re-public .share-bar { max-width: 100%; }
.re-public .share-group { min-width: 0; }

.re-public .property-detail-grid {
    grid-template-columns: minmax(0, 1.55fr) minmax(330px, .65fr);
    gap: clamp(22px, 2.2vw, 34px);
}

.re-public .gallery-card { padding: 10px; }
.re-public .gallery-main {
    height: clamp(440px, 46vw, 680px) !important;
    min-height: 0;
    aspect-ratio: 16 / 10;
}

.re-public .gallery-thumbnails {
    width: 100%;
    max-width: 100%;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
}

.re-public .gallery-thumbnails button {
    flex: 0 0 clamp(88px, 12vw, 122px);
    height: clamp(62px, 8.5vw, 84px);
    scroll-snap-align: start;
    touch-action: manipulation;
}

.re-public .gallery-nav {
    width: 48px;
    height: 48px;
    touch-action: manipulation;
}

.re-public .detail-card {
    padding: clamp(22px, 2.2vw, 32px);
    border-radius: 24px;
}

.re-public .detail-card-heading > div { min-width: 0; }
.re-public .detail-card-heading h2 { text-wrap: balance; overflow-wrap: break-word; }

.re-public .media-card { padding: 0; }
.re-public .media-card .media-tab-list {
    margin: 0;
    padding: 14px 14px 0;
    border-bottom: 1px solid var(--re-line);
    background: #f7faf8;
}
.re-public .media-card .media-pane { padding: 20px; }

.re-public .media-tab-list,
.re-public .feature-chip-grid {
    max-width: 100%;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}

.re-public .property-map.tall,
.re-public #detail-map {
    width: 100%;
    height: clamp(380px, 35vw, 470px);
    min-height: 360px;
    max-width: 100%;
    isolation: isolate;
}

.re-public .property-map .leaflet-container,
.re-public #detail-map .leaflet-container { width: 100%; height: 100%; }

.re-public .virtual-tour-frame {
    width: 100%;
    max-width: 100%;
    aspect-ratio: 16 / 9;
    padding-top: 0 !important;
}

.re-public .virtual-tour-frame iframe { width: 100%; height: 100%; }

.re-public .property-sidebar {
    position: sticky;
    top: 128px;
    align-self: start;
    max-height: calc(100vh - 148px);
    max-height: calc(100dvh - 148px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.re-public .property-sidebar .sticky-card { position: static; top: auto; }

.re-public .technical-grid dl > div,
.re-public .detail-definition-grid > div,
.re-public .doc-item { min-width: 0; }

.re-public .doc-item strong,
.re-public .doc-item small { overflow-wrap: anywhere; }

/* Tablet landscape / small notebook. */
@media (max-width: 1180px) {
    .re-card-gallery { height: clamp(250px, 30vw, 300px); }
    .re-public .property-detail-grid { grid-template-columns: minmax(0, 1fr) 330px; }
    .re-public .detail-definition-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Tablet portrait. */
@media (max-width: 1024px) {
    .re-public .property-title-row {
        grid-template-columns: minmax(0, 1fr) auto;
        column-gap: 22px;
    }
    .re-public .property-title-actions {
        grid-column: 1 / -1;
        grid-row: 3;
        justify-self: start;
    }
    .re-public .property-price-large { grid-column: 2; grid-row: 1 / span 2; }
    .re-public .property-detail-grid { grid-template-columns: minmax(0, 1fr); }
    .re-public .property-sidebar {
        position: static;
        max-height: none;
        overflow: visible;
    }
    .re-public .contact-card { max-width: 760px; margin-inline: auto; }
    .re-similar-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 960px) and (min-width: 821px) {
    .re-list-map-layout { grid-template-columns: minmax(0, 1fr); }
    .re-map-card { position: relative; top: auto; }
    .re-map-canvas { height: clamp(420px, 60vw, 560px); }
    .re-search-property-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Phones and 768 px tablets. */
@media (max-width: 820px) {
    .re-public .re-shell,
    .re-public .shell {
        width: calc(100% - 28px) !important;
        max-width: calc(100vw - 28px) !important;
        margin-inline: auto !important;
    }

    .re-listing-search-main,
    .re-filter-grid,
    .re-search-property-grid,
    .re-public .property-detail-grid { grid-template-columns: minmax(0, 1fr) !important; }

    .re-listing-search-foot,
    .re-feature-filters {
        flex-wrap: wrap;
        overflow: visible;
        white-space: normal;
    }

    .re-results-toolbar { grid-template-columns: minmax(0, 1fr); }
    .re-results-actions { min-width: 0; }

    .re-card-gallery { height: clamp(240px, 62vw, 340px); }
    .re-card-gallery-nav { width: 44px; height: 44px; opacity: 1; }

    .re-map-card.is-open {
        display: grid;
        grid-template-rows: auto minmax(0, 1fr) auto auto;
        width: auto;
        max-width: none;
        max-height: none;
        overflow: hidden;
    }
    .re-map-card.is-open .re-map-canvas {
        width: 100%;
        height: 100%;
        min-height: 0;
    }
    .re-map-card.is-open .re-map-controls { flex: none; }

    .re-public .property-title-row {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: auto !important;
    }
    .re-public .property-title-row > div:first-child,
    .re-public .property-title-actions,
    .re-public .property-price-large {
        grid-column: 1 !important;
        grid-row: auto !important;
        justify-self: stretch !important;
    }
    .re-public .property-title-actions { order: 3; }
    .re-public .property-price-large { order: 2; justify-items: start; }

    .re-public .share-bar {
        width: 100%;
        justify-content: flex-start;
        border-radius: 18px;
    }
    .re-public .share-group { flex-wrap: wrap; overflow: visible; }

    .re-public .gallery-main {
        width: 100%;
        height: auto !important;
        min-height: 280px;
        aspect-ratio: 16 / 10;
    }

    .re-public .gallery-nav { width: 44px; height: 44px; }
    .re-public .detail-card { margin-top: 16px; }
    .re-public .property-fact-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .re-public .technical-grid { grid-template-columns: minmax(0, 1fr); }
    .re-public .media-tab-list { flex-wrap: wrap; overflow: visible; }
    .re-public .media-tab { flex: 1 1 145px; justify-content: center; }
    .re-public .feature-chip-grid { flex-wrap: wrap; overflow: visible; }
    .re-public .floorplan-grid { grid-template-columns: minmax(0, 1fr); }
    .re-public .property-map.tall,
    .re-public #detail-map { height: clamp(320px, 72vw, 390px); min-height: 310px; }
    .re-similar-grid { grid-template-columns: minmax(0, 1fr); }
    .re-public .lightbox { padding-inline: 8px; gap: 8px; }
    .re-public .lightbox-nav { width: 46px; height: 46px; }
    .re-public .lightbox-nav.prev { left: 8px; }
    .re-public .lightbox-nav.next { right: 8px; }
    .re-public .lightbox-stage > img {
        max-height: calc(100vh - 155px);
        max-height: calc(100dvh - 155px);
    }
    .re-public .lightbox-thumbnails button { flex-basis: 74px; width: 74px; height: 54px; }
}

/* Explicit portrait-tablet checkpoint (iPad mini / 768 CSS px). */
@media (max-width: 768px) {
    .re-public .re-shell,
    .re-public .shell {
        width: calc(100% - 28px) !important;
        max-width: calc(100vw - 28px) !important;
    }
    .re-header .re-header-main { max-width: calc(100vw - 28px); }
    .re-search-property-grid,
    .re-public .property-detail-grid { grid-template-columns: minmax(0, 1fr) !important; }
    .re-public .gallery-main { width: 100%; height: auto !important; aspect-ratio: 16 / 10; }
    .re-public .property-sidebar { position: static; max-height: none; overflow: visible; }
    .re-map-card.is-open { max-width: calc(100vw - 16px); }
}

@media (max-width: 600px) {
    .re-public .property-hero { padding: 30px 0 20px; }
    .re-public .property-title-row h1 {
        font-size: clamp(32px, 9.5vw, 40px) !important;
        line-height: 1.04;
    }
    .re-public .property-price-large strong { font-size: clamp(29px, 9vw, 36px) !important; }
    .re-public .property-kicker { gap: 6px; }
    .re-public .property-kicker span { max-width: 100%; }
    .re-public .gallery-card { margin-inline: 0; padding: 6px; }
    .re-public .gallery-main { min-height: 240px; border-radius: 16px; }
    .re-public .gallery-thumbnails button { flex-basis: 84px; height: 60px; }
    .re-public .detail-card { padding: 18px; border-radius: 20px; }
    .re-public .detail-card-heading { align-items: flex-start; }
    .re-public .detail-card-heading h2 { font-size: clamp(23px, 7vw, 29px); }
    .re-public .detail-definition-grid { grid-template-columns: minmax(0, 1fr); }
    .re-public .property-fact-bar > div { padding: 17px 13px; }
    .re-public .property-fact-bar strong { font-size: 19px; }
    .re-public .lead-description { font-size: 16px; line-height: 1.72; }
    .re-public .contact-card { padding: 18px; }
    .re-public .share-footer-card,
    .re-public .agency-strip-card { padding: 20px; }
}

@media (max-width: 430px) {
    .re-public .re-shell,
    .re-public .shell {
        width: calc(100% - 24px) !important;
        max-width: calc(100vw - 24px) !important;
    }
    .re-listing-hero h1 { font-size: clamp(38px, 11vw, 46px); }
    .re-results-actions { grid-template-columns: minmax(0, 1fr) auto !important; }
    .re-results-actions > .re-btn { padding-inline: 13px; }
    .re-card-gallery { height: clamp(230px, 65vw, 285px); }
    .re-card-gallery-nav.prev,
    .re-card-gallery-nav[data-gallery-prev] { left: 8px; }
    .re-card-gallery-nav.next,
    .re-card-gallery-nav[data-gallery-next] { right: 8px; }
    .re-public .gallery-main { min-height: 225px; }
    .re-public .gallery-nav.prev { left: 9px; }
    .re-public .gallery-nav.next { right: 9px; }
    .re-public .property-fact-bar { border-radius: 18px; }
    .re-public .property-fact-bar > div { display: block; }
    .re-public .property-fact-bar > div > span { margin-bottom: 8px; }
    .re-public .doc-item { align-items: flex-start; flex-wrap: wrap; }
    .re-public .doc-open { width: 100%; margin-left: 32px; }
    .re-public .agency-brand { align-items: flex-start; flex-direction: column; }
    .re-property-foot { align-items: center; gap: 10px; }
    .re-property-foot > a { font-size: 11px; }
    .re-public .lightbox-nav { width: 44px; height: 44px; }
    .re-public .lightbox-stage > img {
        max-height: calc(100vh - 145px);
        max-height: calc(100dvh - 145px);
    }
    .re-public .lightbox-thumbnails { padding: 6px; border-radius: 12px; }
    .re-public .lightbox-thumbnails button { flex-basis: 66px; width: 66px; height: 48px; }
}

@media (max-width: 390px) {
    .re-public .re-shell,
    .re-public .shell {
        width: calc(100% - 20px) !important;
        max-width: calc(100vw - 20px) !important;
    }
    .re-public .property-fact-bar > div { padding: 15px 11px; }
    .re-public .media-card .media-pane { padding: 15px; }
    .re-public .media-tab { flex-basis: 100%; }
    .re-public .share-bar { padding: 8px; gap: 7px; }
    .re-public .fav-btn { padding-inline: 12px; }
}

@media (max-width: 360px) {
    .re-public .re-shell,
    .re-public .shell {
        width: calc(100% - 16px) !important;
        max-width: calc(100vw - 16px) !important;
    }
    .re-header .re-header-main { margin-inline: 8px !important; }
    .re-header .re-brand { width: 106px !important; }
    .re-card-gallery-nav,
    .re-public .gallery-nav { width: 42px; height: 42px; }
    .re-public .detail-card { padding: 16px; }
}

/* R3 · navigazione adattiva unica: lo stesso drawer serve telefoni e tablet. */
.re-mobile-drawer-backdrop { display: none; }

@media (max-width: 1180px) {
    html.re-menu-open,
    body.re-menu-open {
        overflow: hidden !important;
        overscroll-behavior: none;
    }

    .re-mobile-drawer-backdrop {
        position: fixed;
        inset: 0;
        z-index: 1290;
        display: block;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        background: rgba(2, 24, 15, .46);
        backdrop-filter: blur(3px);
        transition: opacity .24s ease, visibility .24s ease;
    }

    .re-mobile-drawer-backdrop.is-open {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .re-mobile-drawer {
        position: fixed;
        inset: 0 0 0 auto;
        z-index: 1300;
        box-sizing: border-box;
        width: min(480px, 100%);
        max-width: 100%;
        height: 100vh;
        height: 100dvh;
        max-height: 100dvh;
        display: grid !important;
        grid-template-rows: auto minmax(0, 1fr) auto;
        padding: max(14px, env(safe-area-inset-top)) 16px max(12px, env(safe-area-inset-bottom));
        overflow: hidden;
        overscroll-behavior: contain;
        background: #fff;
        box-shadow: -24px 0 70px rgba(1, 35, 21, .22);
        transform: none;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        contain: layout;
        transition: opacity .2s ease, visibility .2s ease;
    }

    .re-mobile-drawer.is-open {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .re-mobile-drawer-head {
        min-height: 62px;
        height: auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--re-line);
    }

    .re-mobile-drawer-head > a { display: inline-flex; min-width: 0; }
    .re-mobile-drawer-head img { width: 138px; max-width: 42vw; max-height: 52px; object-fit: contain; }
    .re-mobile-drawer-head button {
        width: 46px;
        height: 46px;
        flex: none;
        display: grid;
        place-items: center;
        border: 1px solid #dce7e1;
        border-radius: 50%;
        color: var(--re-green-deep);
        background: var(--re-warm);
    }

    .re-mobile-drawer > nav {
        min-height: 0;
        display: grid;
        align-content: start;
        gap: 20px;
        padding: 18px 2px 22px;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: #a9c8b8 transparent;
    }

    .re-mobile-nav-section { display: grid; min-width: 0; }
    .re-mobile-nav-section > strong {
        padding: 0 4px 7px;
        color: var(--re-green);
        font-size: 10px;
        font-weight: 900;
        letter-spacing: .13em;
        text-transform: uppercase;
    }

    .re-mobile-drawer .re-mobile-nav-section > a {
        min-height: 44px;
        display: flex;
        align-items: center;
        padding: 9px 5px;
        border-bottom: 1px solid #e6eee9;
        color: var(--re-ink);
        font-size: 15px;
        font-weight: 800;
        line-height: 1.25;
        overflow-wrap: anywhere;
        touch-action: manipulation;
    }

    .re-mobile-drawer .re-mobile-nav-section > a:focus-visible,
    .re-mobile-drawer-head button:focus-visible {
        outline: 3px solid rgba(8, 122, 69, .2);
        outline-offset: 2px;
    }

    .re-mobile-drawer-actions {
        position: relative;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 8px;
        margin: 0;
        padding-top: 12px;
        border-top: 1px solid var(--re-line);
        background: #fff;
    }

    .re-mobile-drawer-actions .re-btn { min-width: 0; min-height: 48px; padding-inline: 10px; text-align: center; }
    html[dir="rtl"] .re-mobile-drawer { right: auto; left: 0; box-shadow: 24px 0 70px rgba(1,35,21,.22); }
}

@media (max-width: 430px) {
    .re-mobile-drawer { width: 100%; padding-inline: 12px; }
    .re-mobile-drawer > nav { padding-top: 14px; gap: 16px; }
    .re-mobile-drawer-head img { width: 124px; }
}

/* Il documento resta ancorato sull'asse X anche durante il rimbalzo elastico
   di Safari. Gli scroller funzionali dichiarano localmente overflow-x:auto e
   conservano quindi pan/touch per mappe, gallerie, tabelle, tab e caroselli. */
html,
body {
    min-width: 0;
    overscroll-behavior-x: none;
}

@media (min-width: 1181px) {
    .re-mobile-drawer,
    .re-mobile-drawer-backdrop { display: none !important; }
}

/* Valutazione pubblica: il modulo non viene mai sostituito durante il calcolo. */
.re-valuation-calculator {
    position: relative;
    width: 100%;
    min-width: 0;
}

.re-valuation-feedback {
    width: min(980px, 100%);
    margin: 0 auto 18px;
    overflow-wrap: anywhere;
}

.re-valuation-feedback[hidden],
.re-valuation-progress[hidden] {
    display: none !important;
}

.re-valuation-calculator[aria-busy="true"] {
    opacity: 1;
}

.re-valuation-progress {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    width: 100%;
    min-width: 0;
    margin-top: 16px;
    padding: 16px 18px;
    border: 1px solid #cfe4d8;
    border-radius: 16px;
    background: #f0faf4;
    color: #153b2b;
}

.re-valuation-progress strong,
.re-valuation-progress span {
    display: block;
}

.re-valuation-progress span {
    margin-top: 3px;
    color: #5d7067;
    font-size: .84rem;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.re-valuation-progress progress {
    display: block;
    width: 100%;
    height: 6px;
    margin-top: 10px;
    border: 0;
    accent-color: #087a45;
}

.re-valuation-spinner {
    width: 34px;
    height: 34px;
    margin: 0 !important;
    border: 3px solid #c9e4d5;
    border-top-color: #087a45;
    border-radius: 50%;
    animation: re-valuation-spin .75s linear infinite;
}

.re-valuation-market-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    padding: 14px 16px;
    border: 1px solid #cfe4d8;
    border-radius: 15px;
    background: linear-gradient(135deg, #f0faf4, #f8fcfa);
    color: #153b2b;
}

.re-valuation-market-note .icon { width: 22px; height: 22px; flex: none; color: #087a45; }
.re-valuation-market-note span,
.re-valuation-market-note strong,
.re-valuation-market-note small { display: block; min-width: 0; }
.re-valuation-market-note small { margin-top: 3px; color: #5d7067; line-height: 1.45; overflow-wrap: anywhere; }
.re-inline-input { display: grid; grid-template-columns: minmax(0, 1fr) 86px; min-width: 0; }
.re-inline-input > input { border-radius: 12px 0 0 12px; }
.re-inline-input > select { min-width: 0; border-left: 0; border-radius: 0 12px 12px 0; font-weight: 800; }

@keyframes re-valuation-spin {
    to { transform: rotate(360deg); }
}

@media (max-width: 640px) {
    .re-valuation-submit { width: 100%; justify-content: center; }
    .re-valuation-progress { align-items: start; padding: 14px; }
    .re-valuation-spinner { width: 30px; height: 30px; }
    .re-inline-input { grid-template-columns: minmax(0, 1fr) 78px; }
}

@media (prefers-reduced-motion: reduce) {
    .re-valuation-spinner { animation-duration: 1.5s; }
}

/* Interazione touch immediata. Mappe, gallerie e maniglie conservano le
   proprie regole touch-action piu specifiche per pan e trascinamento. */
@media (pointer: coarse) {
    .re-public :where(a, button, summary, label[for], [role="button"], input[type="button"], input[type="submit"], input[type="reset"]),
    .re-mobile-drawer :where(a, button),
    .re-mobile-bottom :where(a, button) {
        touch-action: manipulation;
        -webkit-tap-highlight-color: rgba(8, 122, 69, .12);
    }
    .re-mobile-drawer-backdrop,
    .re-property-anchor-nav {
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
}

/* Alias storico: alcuni componenti pubblici usano ancora re-btn-primary.
   Il colore resta quello ufficiale RE.ONE, senza blu estranei. */
.re-btn-primary {
    color: #fff;
    border-color: var(--re-green-deep);
    background: linear-gradient(135deg, var(--re-green), var(--re-green-deep));
    box-shadow: 0 8px 20px rgba(9, 111, 62, .18);
}
.re-btn-primary:hover,
.re-btn-primary:focus-visible {
    color: #fff;
    background: linear-gradient(135deg, var(--re-green-deep), #064d31);
}

/* R24.6.11 · select RE.ONE coerenti su desktop, Android e monitor touch. */
.re-native-select{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important}
.re-select{position:relative;display:block;width:100%;min-width:0;color:var(--re-ink);font:inherit;text-align:left;text-transform:none!important;letter-spacing:normal!important}
.re-home-advanced-grid label>.re-select,.re-map-filters label>.re-select,.re-field>.re-select{color:var(--re-ink);font-size:inherit;font-weight:inherit;text-transform:none;letter-spacing:normal}
.re-select-button{display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-width:0;min-height:32px;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:750;text-align:left;cursor:pointer}
.re-select-button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit!important;font:inherit!important;font-weight:750!important;text-transform:none!important;letter-spacing:normal!important}
.re-select-button>i{position:relative;width:17px;height:17px;border:1px solid #c8d8d0;border-radius:50%;background:#fff}
.re-select-button>i:after{content:"";position:absolute;left:5px;top:4px;width:5px;height:5px;border-right:2px solid var(--re-green);border-bottom:2px solid var(--re-green);transform:rotate(45deg);transition:transform .18s}
.re-select.is-open .re-select-button>i:after{top:6px;transform:rotate(225deg)}
.re-select-button:focus-visible{outline:3px solid rgba(8,122,69,.14);outline-offset:3px;border-radius:8px}
.re-select-button:disabled{cursor:not-allowed;opacity:.58}
.re-select-menu{position:absolute;z-index:1500;top:calc(100% + 8px);left:0;display:grid;width:max-content;min-width:100%;max-width:min(420px,calc(100vw - 32px));max-height:min(360px,55vh);padding:7px;overflow:auto;overscroll-behavior:contain;border:1px solid #cfe0d7;border-radius:16px;background:rgba(255,255,255,.985);box-shadow:0 22px 60px rgba(4,45,28,.2);color:var(--re-ink);text-align:left;text-transform:none;letter-spacing:normal;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);scrollbar-width:thin;scrollbar-color:#83b99b transparent}
.re-select-menu[hidden]{display:none!important}
.re-select-menu [role="option"]{display:grid;grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:12px;width:100%;min-width:210px;min-height:44px;padding:10px 12px;border:0;border-radius:11px;background:transparent;color:#163629;font:inherit;font-size:13px;font-weight:750;text-align:left;cursor:pointer}
.re-select-menu [role="option"]>span{min-width:0;color:inherit!important;font:inherit!important;font-size:inherit!important;font-weight:inherit!important;text-transform:none!important;letter-spacing:normal!important;white-space:nowrap}
.re-select-menu [role="option"]>.icon{width:17px;height:17px;color:var(--re-green)}
.re-select-menu [role="option"]:hover,.re-select-menu [role="option"]:focus-visible,.re-select-menu [role="option"][aria-selected="true"]{outline:0;background:#eaf7f0;color:#086c40}
.re-select-menu [role="option"][aria-selected="true"]{font-weight:900}
.re-filter-grid .re-select-button,.re-map-filters .re-select-button,.re-catalog-fields .re-select-button{min-height:45px;padding:0 11px;border:1px solid var(--re-line);border-radius:11px;background:var(--re-warm)}
.re-map-filters .re-select-button{min-height:46px;border-radius:12px;background:#fff}
.re-catalog-fields .re-select-button{min-height:52px;padding:12px 14px;border-radius:14px}
.re-sort-form .re-select{min-width:210px}.re-sort-form .re-select-button{min-height:43px;padding:0 12px 0 15px;border:1px solid var(--re-line);border-radius:999px;background:#fff}.re-sort-form .re-select-menu{right:0;left:auto}
@media(max-width:820px){.re-select-menu{position:fixed;z-index:1900;top:auto;right:14px;bottom:calc(82px + env(safe-area-inset-bottom));left:14px;width:auto;max-width:none;max-height:50vh;border-radius:22px;padding:10px}.re-select-menu [role="option"]{min-height:50px;font-size:14px}.re-sort-form .re-select{min-width:170px}.re-sort-form .re-select-menu{right:14px;left:14px}}

/* R24.6.8 · segnalazione dato annuncio leggibile e realmente adattiva. */
.re-listing-quality .re-cta-band{padding:clamp(24px,4vw,48px);border-radius:32px}
.re-listing-quality .re-cta-band>p{max-width:900px;line-height:1.65}
.re-report-form{display:grid;gap:14px;margin-top:24px}
.re-report-form .form-grid{gap:14px}
.re-report-form .field{display:grid;gap:7px;min-width:0}
.re-report-form .field span{color:rgba(255,255,255,.9);font-size:.76rem;font-weight:800}
.re-report-form input,.re-report-form select,.re-report-form textarea{width:100%;min-width:0;background:#fff;color:#17251f;border:1px solid rgba(255,255,255,.5);border-radius:13px}
.re-report-form textarea{resize:vertical}
.re-report-form .re-report-consent{display:flex;align-items:flex-start;gap:10px;width:fit-content;max-width:100%;padding:12px 14px;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(0,0,0,.12)}
.re-report-form .re-report-consent input{flex:0 0 auto;width:18px;height:18px;margin:1px 0 0;accent-color:#e62230}
.re-report-form .re-report-consent span{line-height:1.45}
.re-report-form>.button{justify-self:start}
@media(max-width:720px){.re-listing-quality .re-cta-band{border-radius:22px}.re-listing-quality .re-cta-band h2{font-size:clamp(2rem,10vw,3.2rem)}.re-report-form .form-grid.two{grid-template-columns:1fr}.re-report-form>.button{width:100%}}

/* R24.6.19 · percentuale di ribasso coerente tra card e dettaglio. */
.re-price-reduction,
.property-price-large .property-price-reduction{
    justify-self:start;
    margin-top:5px;
    padding:4px 7px;
    border-radius:999px;
    background:#fff0ef;
    color:#b92027!important;
    font-size:9px!important;
    font-weight:900;
    line-height:1.2;
    letter-spacing:.05em;
    text-transform:uppercase;
}

/* Native public windows and notification pagination: contain only their own surface. */
.re-public dialog[open]{max-height:calc(var(--reone-viewport-height,100dvh) - 32px);overflow-y:auto;overscroll-behavior:contain}
.re-customer-notification-center [hidden]{display:none!important}

body.re-menu-open .re-copilot,body.re-menu-open .re-intelligence-chat,body.re-menu-open .re-ai-concierge{visibility:hidden!important;pointer-events:none!important}.re-affiliate-entry{display:flex;align-items:center;min-height:48px;padding:12px 16px;margin:8px 0 16px;border-radius:10px;background:#e5f4eb;color:#075d36;font-weight:750}.re-mobile-drawer>nav{min-height:0;overflow-y:auto;padding-bottom:24px}.re-mobile-drawer-actions{position:relative;flex-shrink:0;padding-bottom:calc(16px + env(safe-area-inset-bottom))}
