.swz-r4{--swz-r4-accent:#175cd3;--swz-r4-ink:#102a43;--swz-r4-muted:#52667a;--swz-r4-line:#dbe5ef;--swz-r4-soft:#f4f7fb;color:var(--swz-r4-ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;max-width:1440px;margin:0 auto;padding:24px}.swz-r4 *{box-sizing:border-box}.swz-r4 h1,.swz-r4 h2,.swz-r4 h3{color:var(--swz-r4-ink);line-height:1.15;margin-top:0}.swz-r4 a{text-decoration:none}.swz-r4-eyebrow{color:var(--swz-r4-accent);display:block;font-size:12px;font-weight:800;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.swz-r4-hero{align-items:flex-end;background:linear-gradient(120deg,#0b376f,#1769d1);border-radius:20px;color:#fff;display:flex;gap:30px;justify-content:space-between;margin-bottom:18px;overflow:hidden;padding:38px}.swz-r4-hero h1,.swz-r4-hero p{color:#fff}.swz-r4-hero h1{font-size:clamp(30px,4vw,52px);margin-bottom:10px}.swz-r4-hero p{font-size:17px;margin:0;max-width:760px}.swz-r4-hero__actions{display:flex;flex-wrap:wrap;gap:10px}.swz-r4-btn{align-items:center;background:#fff;border:1px solid var(--swz-r4-line);border-radius:9px;color:var(--swz-r4-ink);cursor:pointer;display:inline-flex;font-weight:750;gap:7px;justify-content:center;min-height:44px;padding:10px 16px}.swz-r4-btn:hover{filter:brightness(.97)}.swz-r4-btn--primary{background:var(--swz-r4-accent);border-color:var(--swz-r4-accent);color:#fff}.swz-r4-btn--block{width:100%}.swz-r4-search{align-items:end;background:#fff;border:1px solid var(--swz-r4-line);border-radius:14px;box-shadow:0 12px 35px rgba(16,42,67,.09);display:grid;gap:12px;grid-template-columns:1.4fr 1fr 1fr auto;margin:-3px 18px 24px;padding:16px;position:relative;z-index:2}.swz-r4 label,.swz-r4-field{color:var(--swz-r4-ink);display:grid;font-size:13px;font-weight:700;gap:6px}.swz-r4 input,.swz-r4 select,.swz-r4 textarea{background:#fff;border:1px solid #c9d6e2;border-radius:8px;color:var(--swz-r4-ink);font:inherit;min-height:43px;padding:9px 11px;width:100%}.swz-r4 textarea{resize:vertical}.swz-r4-section{margin:34px 0}.swz-r4-section__heading{display:flex;justify-content:space-between}.swz-r4-section__heading h2{margin-bottom:5px}.swz-r4-section__heading p{color:var(--swz-r4-muted);margin:0}.swz-r4-categories{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-top:15px}.swz-r4-category{background:#fff;border:1px solid var(--swz-r4-line);border-radius:12px;color:var(--swz-r4-ink);display:grid;gap:5px;min-height:132px;padding:16px;transition:.2s}.swz-r4-category:hover{border-color:var(--category-color);box-shadow:0 10px 26px rgba(16,42,67,.09);transform:translateY(-2px)}.swz-r4-category>.dashicons{color:var(--category-color);font-size:26px;height:28px;width:28px}.swz-r4-category small{color:var(--swz-r4-muted);line-height:1.35}.swz-r4-results{align-items:start;display:grid;gap:18px;grid-template-columns:270px 1fr}.swz-r4-filters{background:#fff;border:1px solid var(--swz-r4-line);border-radius:13px;padding:16px;position:sticky;top:24px}.swz-r4-filters form{display:grid;gap:14px}.swz-r4-filter-title{align-items:center;display:flex;justify-content:space-between}.swz-r4-filter-title h2{font-size:20px;margin:0}.swz-r4-price-row,.swz-r4-form-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.swz-r4-dynamic-fields{display:grid;gap:12px}.swz-r4-dynamic-fields.is-loading{background:var(--swz-r4-soft);border-radius:8px;color:var(--swz-r4-muted);padding:18px}.swz-r4-field b{color:#d92d20}.swz-r4-field small{color:var(--swz-r4-muted);font-weight:400}.swz-r4-checks{display:grid;gap:6px}.swz-r4-checks label,.swz-r4-toggle{align-items:center;display:flex;font-weight:500;gap:7px}.swz-r4-checks input,.swz-r4-toggle input{min-height:auto;width:auto}.swz-r4-results__toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.swz-r4-results__toolbar h2{margin-bottom:3px}.swz-r4-results__toolbar p{color:var(--swz-r4-muted);margin:0}.swz-r4-sort{max-width:220px}.swz-r4-map{background:#e8eff5;border:1px solid var(--swz-r4-line);border-radius:13px;height:340px;margin-bottom:16px;overflow:hidden;position:relative}.swz-r4-map__canvas{height:100%;width:100%}.swz-r4-map__empty{display:none;margin:0;padding:28px;text-align:center}.swz-r4-map.is-empty{height:auto}.swz-r4-map.is-empty .swz-r4-map__canvas{display:none}.swz-r4-map.is-empty .swz-r4-map__empty{display:block}.swz-r4-price-marker{background:transparent}.swz-r4-price-marker span{background:#fff;border:2px solid var(--swz-r4-accent);border-radius:20px;box-shadow:0 2px 6px rgba(0,0,0,.18);color:var(--swz-r4-ink);display:inline-block;font-size:11px;font-weight:800;padding:3px 7px;white-space:nowrap}.swz-r4-cards{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.swz-r4-card{background:#fff;border:1px solid var(--swz-r4-line);border-radius:13px;box-shadow:0 5px 18px rgba(16,42,67,.05);overflow:hidden}.swz-r4-card__image{align-items:center;background:#e7edf3;color:#789;display:flex;height:210px;justify-content:center;position:relative}.swz-r4-card__image img{height:100%;object-fit:cover;width:100%}.swz-r4-card__image>.dashicons{font-size:55px;height:55px;width:55px}.swz-r4-card__type{background:rgba(16,42,67,.88);border-radius:5px;color:#fff;font-size:11px;font-weight:800;left:10px;padding:5px 8px;position:absolute;top:10px}.swz-r4-card__body{padding:14px}.swz-r4-card__top{align-items:center;display:flex;gap:8px;justify-content:space-between}.swz-r4-card__top>strong{font-size:20px}.swz-r4-card h3{font-size:17px;margin:8px 0 6px}.swz-r4-card h3 a{color:var(--swz-r4-ink)}.swz-r4-card p{align-items:center;color:var(--swz-r4-muted);display:flex;font-size:13px;gap:4px;margin:0}.swz-r4-card__facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.swz-r4-card__facts span{background:var(--swz-r4-soft);border-radius:5px;color:#395166;font-size:11px;padding:4px 6px}.swz-r4-trust{align-items:center;background:#fff7e6;border:1px solid #f3d58b;border-radius:99px;color:#8b5e00;display:inline-flex;font-size:11px;font-weight:800;gap:3px;padding:4px 7px}.swz-r4-trust.is-verified{background:#eaf8ef;border-color:#a8dfba;color:#176b34}.swz-r4-trust .dashicons{font-size:14px;height:14px;width:14px}.swz-r4-empty{background:var(--swz-r4-soft);border:1px dashed #afc0d0;border-radius:12px;grid-column:1/-1;padding:45px;text-align:center}.swz-r4-empty>.dashicons{font-size:44px;height:44px;width:44px}.swz-r4-pagination ul{display:flex;gap:6px;justify-content:center;list-style:none;margin:22px 0 0;padding:0}.swz-r4-pagination a,.swz-r4-pagination span{border:1px solid var(--swz-r4-line);border-radius:7px;display:block;padding:7px 11px}.swz-r4-pagination .current{background:var(--swz-r4-accent);color:#fff}.swz-r4-editor{max-width:1050px}.swz-r4-editor>header{margin-bottom:22px}.swz-r4-listing-form{display:grid;gap:18px}.swz-r4-listing-form fieldset{background:#fff;border:1px solid var(--swz-r4-line);border-radius:13px;margin:0;padding:20px}.swz-r4-listing-form legend{font-size:18px;font-weight:800;padding:0 8px}.swz-r4-span-2{grid-column:span 2}.swz-r4-form-footer{align-items:center;background:#eff6ff;border-radius:12px;display:flex;gap:18px;justify-content:space-between;padding:16px}.swz-r4-form-footer p{align-items:center;display:flex;gap:7px;margin:0}.swz-r4-notice{border-radius:9px;margin:12px 0;padding:13px}.swz-r4-notice--error{background:#fff1f0;border:1px solid #f6b5b0;color:#a21f18}.swz-r4-notice--success{background:#ecf9f0;border:1px solid #a8dfba;color:#176b34}.swz-r4-detail__gallery{align-items:center;background:#e7edf3;border-radius:16px;display:flex;height:min(55vw,560px);justify-content:center;overflow:hidden}.swz-r4-detail__gallery img{height:100%;object-fit:cover;width:100%}.swz-r4-detail__gallery>.dashicons{font-size:70px;height:70px;width:70px}.swz-r4-detail__layout{align-items:start;display:grid;gap:25px;grid-template-columns:1fr 330px;margin-top:25px}.swz-r4-detail__location{align-items:center;color:var(--swz-r4-muted);display:flex;gap:5px}.swz-r4-detail__description{font-size:16px;line-height:1.7}.swz-r4-detail__sidebar{background:#fff;border:1px solid var(--swz-r4-line);border-radius:13px;display:grid;gap:14px;padding:20px;position:sticky;top:24px}.swz-r4-detail__price{font-size:25px;font-weight:850}.swz-r4-specs{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.swz-r4-specs>div{background:var(--swz-r4-soft);border-radius:8px;padding:11px}.swz-r4-specs dt{color:var(--swz-r4-muted);font-size:12px}.swz-r4-specs dd{font-weight:750;margin:3px 0 0}.swz-r4-plans header{text-align:center}.swz-r4-plan-grid{align-items:stretch;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px}.swz-r4-plan{background:#fff;border:1px solid var(--swz-r4-line);border-radius:14px;padding:22px}.swz-r4-plan.is-featured{border:2px solid var(--swz-r4-accent);box-shadow:0 12px 35px rgba(23,92,211,.12)}.swz-r4-plan ul{display:grid;gap:10px;list-style:none;padding:0}.swz-r4-plan li{display:flex;gap:7px}.swz-r4-plan li .dashicons{color:#178746}.swz-r4-plan-note{text-align:center}.swz-r4-login{background:var(--swz-r4-soft);border-radius:13px;max-width:650px;text-align:center}.swz-r4-helper{color:var(--swz-r4-muted);font-weight:400}.leaflet-container{font-family:inherit}
.swz-r4-toolbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.swz-r4-save-status{color:var(--swz-r4-muted);font-size:12px;max-width:240px}.swz-r4-save-search:disabled{cursor:default;opacity:.7}
@media(max-width:980px){.swz-r4-search{grid-template-columns:1fr 1fr}.swz-r4-results{grid-template-columns:1fr}.swz-r4-filters,.swz-r4-detail__sidebar{position:static}.swz-r4-detail__layout{grid-template-columns:1fr}.swz-r4-plan-grid{grid-template-columns:1fr}.swz-r4-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.swz-r4{padding:14px}.swz-r4-hero{border-radius:13px;padding:23px}.swz-r4-search{grid-template-columns:1fr;margin:0 0 20px}.swz-r4-cards,.swz-r4-form-grid,.swz-r4-specs{grid-template-columns:1fr}.swz-r4-span-2{grid-column:auto}.swz-r4-form-footer,.swz-r4-results__toolbar{align-items:stretch;flex-direction:column}.swz-r4-map{height:280px}}
.swz-r4-gallery{display:grid;gap:10px}.swz-r4-gallery__main{align-items:center;background:#e7edf3;border-radius:16px;display:flex;height:min(55vw,560px);justify-content:center;margin:0;overflow:hidden;position:relative}.swz-r4-gallery__main img{height:100%;object-fit:cover;width:100%}.swz-r4-gallery__nav{align-items:center;background:rgba(255,255,255,.92);border:0;border-radius:50%;box-shadow:0 2px 10px rgba(16,42,67,.22);color:var(--swz-r4-ink);cursor:pointer;display:flex;font-size:26px;height:44px;justify-content:center;line-height:1;position:absolute;top:50%;transform:translateY(-50%);width:44px}.swz-r4-gallery__nav:hover{background:#fff}.swz-r4-gallery__nav--prev{left:12px}.swz-r4-gallery__nav--next{right:12px}.swz-r4-gallery__counter{background:rgba(16,42,67,.82);border-radius:20px;bottom:12px;color:#fff;font-size:12px;font-weight:700;padding:5px 11px;position:absolute;right:12px}.swz-r4-gallery__thumbs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.swz-r4-gallery__thumb{background:#e7edf3;border:2px solid transparent;border-radius:9px;cursor:pointer;flex:0 0 auto;height:74px;overflow:hidden;padding:0;width:104px}.swz-r4-gallery__thumb img{display:block;height:100%;object-fit:cover;width:100%}.swz-r4-gallery__thumb.is-active{border-color:var(--swz-r4-accent)}.swz-r4-gallery__thumb:focus-visible{outline:2px solid var(--swz-r4-accent);outline-offset:2px}.swz-r4-detail__gallery.is-empty{align-items:center;background:#e7edf3;border-radius:16px;color:#789;display:flex;height:min(40vw,340px);justify-content:center}.swz-r4-detail__gallery.is-empty>.dashicons{font-size:70px;height:70px;width:70px}.swz-r4-card__photos{align-items:center;background:rgba(16,42,67,.82);border-radius:5px;bottom:10px;color:#fff;display:inline-flex;font-size:11px;font-weight:800;gap:3px;padding:4px 7px;position:absolute;right:10px}.swz-r4-card__photos .dashicons{font-size:13px;height:13px;width:13px}
.swz-r4-lightbox{align-items:center;background:rgba(9,20,32,.94);display:none;inset:0;justify-content:center;padding:36px;position:fixed;z-index:99999}.swz-r4-lightbox.is-open{display:flex}.swz-r4-lightbox img{max-height:100%;max-width:100%;object-fit:contain}.swz-r4-lightbox__close{background:rgba(255,255,255,.14);border:0;border-radius:50%;color:#fff;cursor:pointer;font-size:26px;height:44px;line-height:1;position:absolute;right:20px;top:20px;width:44px}.swz-r4-lightbox__close:hover{background:rgba(255,255,255,.28)}
@media(max-width:640px){.swz-r4-gallery__main{height:62vw}.swz-r4-gallery__thumb{height:60px;width:84px}}
.swz-r4-map__actions{align-items:center;background:rgba(255,255,255,.95);border-radius:10px;box-shadow:0 3px 14px rgba(16,42,67,.18);display:flex;flex-wrap:wrap;gap:10px;left:12px;padding:8px 10px;position:absolute;top:12px;z-index:600}.swz-r4-map__live{align-items:center;display:flex;font-size:12px;font-weight:600;gap:5px;margin:0}.swz-r4-map__live input{min-height:auto;width:auto}.swz-r4-map__actions .swz-r4-btn{font-size:12px;min-height:34px;padding:6px 11px}.swz-r4-map__status{background:rgba(16,42,67,.85);border-radius:16px;bottom:12px;color:#fff;font-size:12px;left:12px;padding:5px 11px;position:absolute;z-index:600}.swz-r4-map__status:empty{display:none}.swz-r4-price-marker.is-active span{background:var(--swz-r4-accent);border-color:#fff;color:#fff;transform:scale(1.12)}.swz-r4-price-marker span{transition:transform .12s,background .12s}.swz-r4-card{transition:box-shadow .15s,border-color .15s}.swz-r4-card:hover{border-color:var(--swz-r4-accent);box-shadow:0 10px 26px rgba(16,42,67,.12)}
.swz-r4-locate{background:var(--swz-r4-soft);border:1px solid var(--swz-r4-line);border-radius:12px;display:grid;gap:9px;padding:14px}.swz-r4-locate__head{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.swz-r4-locate__btn{min-height:38px;padding:7px 13px}.swz-r4-locate__map{background:#e7edf3;border:1px solid var(--swz-r4-line);border-radius:9px;height:280px;overflow:hidden}.swz-r4-locate .swz-r4-helper{margin:0}
@media(max-width:640px){.swz-r4-map__actions{left:8px;padding:7px;right:8px;top:8px}.swz-r4-locate__map{height:220px}}
.swz-r4-gallery__video{background:#000;border-radius:16px;inset:0;overflow:hidden;position:absolute;z-index:3}.swz-r4-gallery__video iframe{border:0;display:block;height:100%;width:100%}.swz-r4-gallery__play{align-items:center;background:rgba(16,42,67,.55);border:0;cursor:pointer;display:flex;height:100%;justify-content:center;width:100%}.swz-r4-gallery__play .dashicons{background:#fff;border-radius:50%;box-shadow:0 4px 18px rgba(0,0,0,.3);color:var(--swz-r4-accent);font-size:34px;height:70px;line-height:70px;width:70px}.swz-r4-gallery__play:hover .dashicons{transform:scale(1.06)}.swz-r4-gallery__thumb{position:relative}.swz-r4-gallery__thumb-tag{align-items:center;background:rgba(16,42,67,.85);border-radius:4px;bottom:5px;color:#fff;display:inline-flex;font-size:10px;font-weight:800;gap:2px;left:5px;padding:3px 5px;position:absolute}.swz-r4-gallery__thumb-tag .dashicons{font-size:12px;height:12px;width:12px}.swz-r4-gallery__thumb--video{background:#0f1c2a}.swz-r4-gallery__thumb--plan img{background:#fff;object-fit:contain}
.swz-r4-gallery-manager{display:grid;gap:9px;margin-bottom:16px}.swz-r4-gallery-manager__list{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0}.swz-r4-gallery-manager__item{background:#e7edf3;border:2px solid var(--swz-r4-line);border-radius:10px;cursor:grab;height:112px;overflow:hidden;position:relative;width:150px}.swz-r4-gallery-manager__item img{height:100%;object-fit:cover;width:100%}.swz-r4-gallery-manager__item.is-dragging{opacity:.45}.swz-r4-gallery-manager__item.is-removing{filter:grayscale(1);opacity:.4}.swz-r4-gallery-manager__item:first-child{border-color:var(--swz-r4-accent)}.swz-r4-gallery-manager__badge{background:rgba(16,42,67,.85);border-radius:4px;color:#fff;font-size:10px;font-weight:800;left:6px;padding:3px 6px;position:absolute;top:6px}.swz-r4-remove{align-items:center;background:rgba(255,255,255,.94);border-radius:4px;bottom:6px;display:flex;font-size:11px;font-weight:700;gap:3px;left:6px;padding:3px 6px;position:absolute}.swz-r4-remove input{min-height:auto;width:auto}.swz-r4-current-plan{display:inline-block;margin-top:8px;position:relative;width:170px}.swz-r4-current-plan img{border:1px solid var(--swz-r4-line);border-radius:8px;display:block;width:100%}
.swz-r4-card{position:relative}.swz-r4-card__flags{display:flex;flex-direction:column;gap:5px;left:10px;position:absolute;top:40px}.swz-r4-flag{align-items:center;border-radius:5px;display:inline-flex;font-size:10px;font-weight:800;gap:2px;letter-spacing:.02em;padding:4px 7px;text-transform:uppercase}.swz-r4-flag--new{background:#0d9488;color:#fff}.swz-r4-flag--drop{background:#c2410c;color:#fff}.swz-r4-flag .dashicons{font-size:12px;height:12px;width:12px}
.swz-r4-fav{align-items:center;background:rgba(255,255,255,.93);border:0;border-radius:50%;box-shadow:0 2px 8px rgba(16,42,67,.2);cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:10px;top:10px;transition:transform .12s;width:36px;z-index:2}.swz-r4-fav:hover{transform:scale(1.08)}.swz-r4-fav .dashicons{color:#94a3b8;font-size:19px;height:19px;width:19px}.swz-r4-fav.is-active .dashicons{color:#e11d48}.swz-r4-fav-btn.is-active{background:#fff1f3;border-color:#fbcfd8;color:#b91c47}.swz-r4-fav-btn.is-active .dashicons{color:#e11d48}
.swz-r4-card__compare{align-items:center;color:var(--swz-r4-muted);display:flex;font-size:12px;font-weight:600;gap:5px;margin-top:11px}.swz-r4-card__compare input{min-height:auto;width:auto}.swz-r4-card__compare input:disabled+*{opacity:.5}
.swz-r4-compare-bar{align-items:center;background:var(--swz-r4-ink);border-radius:12px;bottom:18px;box-shadow:0 10px 30px rgba(16,42,67,.3);color:#fff;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;left:50%;padding:12px 18px;position:fixed;transform:translateX(-50%);z-index:900}.swz-r4-compare-bar__actions{display:flex;gap:8px}.swz-r4-compare-bar .swz-r4-btn{min-height:36px;padding:7px 13px}
.swz-r4-compare{align-items:center;background:rgba(9,20,32,.9);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:99998}.swz-r4-compare__inner{background:#fff;border-radius:14px;max-height:88vh;max-width:1000px;overflow:auto;padding:26px;position:relative;width:100%}.swz-r4-compare__close{background:none;border:0;cursor:pointer;font-size:28px;line-height:1;position:absolute;right:14px;top:10px}.swz-r4-compare__table{border-collapse:collapse;width:100%}.swz-r4-compare__table th,.swz-r4-compare__table td{border-bottom:1px solid var(--swz-r4-line);padding:11px;text-align:left;vertical-align:top}.swz-r4-compare__table thead th{width:28%}.swz-r4-compare__table thead img{border-radius:8px;display:block;height:110px;margin-bottom:7px;object-fit:cover;width:100%}.swz-r4-compare__table tbody th{color:var(--swz-r4-muted);font-size:13px;font-weight:600;width:16%}
.swz-r4-detail__drop{align-items:center;background:#fff1e9;border-radius:6px;color:#c2410c;display:inline-flex;font-size:12px;font-weight:700;gap:3px;margin-left:8px;padding:3px 7px;vertical-align:middle}.swz-r4-detail__response{align-items:center;color:var(--swz-r4-muted);display:flex;font-size:13px;gap:5px;margin:0}
.swz-account-fav{align-items:center;background:#fff;border:1px solid var(--swz-r4-line,#dbe5ef);border-radius:11px;display:flex;gap:14px;padding:12px}.swz-account-fav__image{flex:0 0 auto;height:82px;width:112px}.swz-account-fav__image img{border-radius:8px;height:100%;object-fit:cover;width:100%}.swz-account-fav__body{display:grid;flex:1;gap:3px}.swz-account-fav__price{font-size:17px;font-weight:800}.swz-account-fav__drop{color:#c2410c;font-size:12px;font-weight:700}.swz-account-fav__response{color:#52667a;font-size:12px}
.swz-growth-numbers{display:flex;flex-wrap:wrap;gap:16px;margin:12px 0}.swz-growth-numbers span{color:#52667a;display:grid;font-size:12px;gap:1px}.swz-growth-numbers strong{color:#102a43;font-size:20px}.swz-growth-numbers .is-warning strong{color:#c2410c}
@media(max-width:640px){.swz-r4-compare-bar{border-radius:0;bottom:0;left:0;transform:none;width:100%}.swz-r4-compare__inner{padding:18px}.swz-account-fav{flex-wrap:wrap}}
.swz-r4-progress{background:#fff;border:1px solid var(--swz-r4-line);border-radius:11px;display:grid;gap:7px;margin-bottom:16px;padding:14px 16px}.swz-r4-progress__bar{background:#e7edf3;border-radius:99px;height:9px;overflow:hidden}.swz-r4-progress__bar span{background:linear-gradient(90deg,#f59e0b,var(--swz-r4-accent));border-radius:99px;display:block;height:100%;transition:width .25s;width:0}.swz-r4-progress.is-complete .swz-r4-progress__bar span{background:#0d9488}.swz-r4-progress p{color:var(--swz-r4-muted);font-size:13px;margin:0}.swz-r4-progress strong{color:var(--swz-r4-ink);font-size:15px}
.swz-r4-restore{align-items:center;background:#fff8e6;border:1px solid #f3d58b;border-radius:11px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px;padding:13px 16px}.swz-r4-restore p{margin:0;font-weight:600}.swz-r4-restore div{display:flex;gap:8px}.swz-r4-restore .swz-r4-btn{min-height:36px;padding:6px 13px}
.swz-r4-form-actions{display:flex;flex-wrap:wrap;gap:8px}.swz-r4-form-actions .dashicons{font-size:16px;height:16px;width:16px}
.swz-account-listing__actions button{background:none;border:0;color:inherit;cursor:pointer;font:inherit;padding:0;text-decoration:underline}.swz-account-listing__actions button:disabled{cursor:wait;opacity:.6}
@media(max-width:640px){.swz-r4-form-footer{display:block}.swz-r4-form-actions{margin-top:12px}.swz-r4-form-actions .swz-r4-btn{flex:1}}
.swz-r4-help__wrap{display:inline-block;margin-left:7px;position:relative;vertical-align:middle}.swz-r4-help{align-items:center;background:var(--swz-r4-soft);border:1px solid var(--swz-r4-line);border-radius:50%;cursor:pointer;display:inline-flex;height:24px;justify-content:center;padding:0;width:24px}.swz-r4-help .dashicons{color:var(--swz-r4-accent);font-size:15px;height:15px;width:15px}.swz-r4-help:hover,.swz-r4-help.is-open{background:var(--swz-r4-accent);border-color:var(--swz-r4-accent)}.swz-r4-help:hover .dashicons,.swz-r4-help.is-open .dashicons{color:#fff}
.swz-r4-help__bubble{background:#fff;border:1px solid var(--swz-r4-line);border-radius:11px;box-shadow:0 12px 34px rgba(16,42,67,.16);font-size:13px;font-weight:400;left:0;line-height:1.55;max-width:340px;min-width:270px;padding:14px 16px;position:absolute;top:32px;z-index:60}.swz-r4-help__bubble strong{display:block;font-size:14px;margin-bottom:5px}.swz-r4-help__bubble p{margin:0 0 7px}.swz-r4-help__bubble p:last-child{margin-bottom:0}.swz-r4-help__next{align-items:flex-start;background:var(--swz-r4-soft);border-radius:7px;color:#395166;display:flex;gap:6px;padding:8px 10px}.swz-r4-help__next .dashicons{color:#d97706;flex:0 0 auto;font-size:15px;height:15px;width:15px}
.swz-growth-ai-off{align-items:flex-start;background:#f5f8fa;border-radius:8px;color:#52667a;display:flex;font-size:13px;gap:6px;margin:0;padding:10px 12px}
@media(max-width:640px){.swz-r4-help__bubble{left:auto;max-width:none;min-width:0;right:0;width:min(88vw,340px)}}

/* ============================================================
   CORRECCIÓN: respetar el atributo hidden
   El navegador aplica display:none a [hidden], pero cualquier
   display del autor lo pisa. Sin esto, el panel de comparación
   nacía visible y no había forma de cerrarlo.
   ============================================================ */
.swz-r4-compare[hidden],.swz-r4-compare-bar[hidden],.swz-r4-progress[hidden],.swz-r4-restore[hidden],.swz-r4-gallery__video[hidden],[data-swz-gallery-video][hidden]{display:none!important}

/* ============================================================
   Progreso y recuperación: discretos, no cajas
   ============================================================ */
.swz-r4-progress{align-items:center;background:none;border:0;border-radius:0;display:flex;gap:10px;margin:0 0 14px;padding:0}
.swz-r4-progress__bar{background:#e7edf3;border-radius:99px;flex:1;height:5px;overflow:hidden}
.swz-r4-progress p{color:var(--swz-r4-muted);flex:0 0 auto;font-size:12px;margin:0;white-space:nowrap}
.swz-r4-progress strong{color:var(--swz-r4-ink);font-size:12px;font-weight:800}
.swz-r4-progress.is-complete strong{color:#0d9488}
.swz-r4-restore{align-items:center;background:#fff8e6;border:1px solid #f3d58b;border-radius:8px;display:flex;flex-wrap:wrap;font-size:13px;gap:8px;justify-content:space-between;margin:0 0 14px;padding:8px 12px}
.swz-r4-restore p{font-weight:600;margin:0}
.swz-r4-restore div{display:flex;gap:6px}
.swz-r4-restore .swz-r4-btn{font-size:12px;min-height:30px;padding:4px 11px}

/* ============================================================
   Formularios compactos: menos scroll, mismo respiro
   En móvil los campos vuelven a 44px para que se puedan tocar.
   ============================================================ */
.swz-r4-editor>header{margin-bottom:16px}
.swz-r4-editor>header h1{font-size:clamp(26px,3.4vw,38px);margin-bottom:6px}
.swz-r4-editor>header p{margin:0}
.swz-r4-listing-form{gap:12px}
.swz-r4-listing-form fieldset{border-radius:11px;padding:14px 16px 16px}
.swz-r4-listing-form legend{font-size:15px;padding:0 6px}
.swz-r4-form-grid{gap:10px}
.swz-r4-dynamic-fields{gap:10px}
.swz-r4 label,.swz-r4-field{font-size:12.5px;gap:3px}
.swz-r4 input,.swz-r4 select,.swz-r4 textarea{border-radius:7px;min-height:38px;padding:7px 10px}
.swz-r4 textarea{min-height:96px}
.swz-r4-field small,.swz-r4 label small{line-height:1.35;margin-top:1px}
.swz-r4-checks{gap:4px}
.swz-r4-locate{gap:7px;padding:11px 12px}
.swz-r4-locate__map{height:220px}
.swz-r4-gallery-manager{gap:7px;margin-bottom:12px}
.swz-r4-gallery-manager__item{height:92px;width:124px}
.swz-r4-form-footer{gap:14px;padding:12px 16px}
.swz-r4-form-footer p{font-size:13px}
@media(max-width:782px){
  .swz-r4{padding:16px 14px}
  .swz-r4 input,.swz-r4 select,.swz-r4 textarea{font-size:16px;min-height:44px}
  .swz-r4-form-grid,.swz-r4-price-row{grid-template-columns:1fr}
  .swz-r4-span-2{grid-column:auto}
  .swz-r4-listing-form fieldset{padding:13px 13px 15px}
  .swz-r4-restore{font-size:12.5px}
  .swz-r4-gallery-manager__item{height:84px;width:108px}
}
.swz-r4-lead select{background:#fff;border-color:var(--swz-r4-accent);border-width:2px;font-size:15px;font-weight:650;min-height:46px}
.swz-r4-lead small{color:var(--swz-r4-muted)}
@media(max-width:782px){.swz-r4-lead select{min-height:48px}}

/* Pregunta de bienvenida: una vez, y cada camino a su sitio */
.swz-r4-onboard{background:rgba(255,255,255,.97);border-radius:14px;box-shadow:0 14px 40px rgba(11,55,111,.22);margin:-6px 18px 18px;padding:18px 20px;position:relative;z-index:3}
.swz-r4-onboard>p{font-size:17px;font-weight:800;margin:0 0 12px}
.swz-r4-onboard__options{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.swz-r4-onboard__option{align-items:flex-start;background:var(--swz-r4-soft);border:2px solid var(--swz-r4-line);border-radius:11px;color:var(--swz-r4-ink);cursor:pointer;display:grid;gap:2px;padding:14px 16px;text-align:left;transition:border-color .15s,transform .15s}
.swz-r4-onboard__option:hover{border-color:var(--swz-r4-accent);color:var(--swz-r4-ink);transform:translateY(-2px)}
.swz-r4-onboard__option .dashicons{color:var(--swz-r4-accent);font-size:22px;height:22px;width:22px}
.swz-r4-onboard__option strong{font-size:15px}
.swz-r4-onboard__option small{color:var(--swz-r4-muted);line-height:1.35}
.swz-r4-onboard__skip{background:none;border:0;color:var(--swz-r4-muted);cursor:pointer;font-size:12.5px;margin-top:10px;padding:4px 0;text-decoration:underline}
@media(max-width:640px){.swz-r4-onboard{margin:-4px 0 14px;padding:15px}.swz-r4-onboard__options{grid-template-columns:1fr}}

/* Demanda para el arrendador */
.swz-growth-demand{margin-bottom:16px}
.swz-growth-demand__head{align-items:flex-start;display:flex;gap:10px;margin-bottom:10px}
.swz-growth-demand__head .dashicons{color:#0d9488;flex:0 0 auto;font-size:20px;height:20px;width:20px}
.swz-growth-demand__head strong{display:block;font-size:15px}
.swz-growth-demand__head p{color:#52667a;font-size:13px;margin:2px 0 0}
.swz-growth-demand__list{display:grid;gap:6px;list-style:none;margin:0;padding:0}
.swz-growth-demand__list li{align-items:baseline;background:#f0fdf9;border-radius:8px;display:flex;flex-wrap:wrap;gap:6px;padding:8px 11px}
.swz-growth-demand__list strong{color:#0d9488;font-size:17px;font-weight:850}
.swz-growth-demand__gap{background:#c2410c;border-radius:4px;color:#fff;font-size:10px;font-style:normal;font-weight:800;padding:2px 6px;text-transform:uppercase}
.swz-growth-demand__note{color:#52667a;font-size:12.5px;margin:10px 0 0}

/* ============================================================
   Mapa vacío: sin zona que buscar, sin controles que estorben
   ============================================================ */
.swz-r4-map.is-empty{min-height:0;padding:0}
.swz-r4-map.is-empty .swz-r4-map__actions,
.swz-r4-map.is-empty .swz-r4-map__status{display:none}
.swz-r4-map__empty{color:var(--swz-r4-muted);font-size:13.5px;padding:22px 18px}

/* ============================================================
   Categorías compactas: icono y nombre, nada más
   ============================================================ */
.swz-r4-categories{gap:8px;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));margin-top:12px}
.swz-r4-category{align-items:center;display:flex;gap:9px;min-height:0;padding:11px 13px}
.swz-r4-category>.dashicons{flex:0 0 auto;font-size:19px;height:19px;width:19px}
.swz-r4-category strong{font-size:13.5px;font-weight:700;line-height:1.25}
.swz-r4-category:hover{transform:none}
.swz-r4-section{margin:24px 0}
.swz-r4-section__heading h2{font-size:21px}
@media(max-width:640px){
  .swz-r4-categories{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  .swz-r4-category{padding:10px 11px}
  .swz-r4-category strong{font-size:12.5px}
}

/* ============================================================
   FILTROS A LO ANCHO
   Antes: columna estrecha de 270px con veinte campos apilados,
   que en móvil caía detrás de todos los resultados.
   Ahora: barra superior + secciones plegables repartidas.
   ============================================================ */
.swz-r4-results{display:block}
.swz-r4-results__main{min-width:0}
.swz-r4-filters{background:#fff;border:1px solid var(--swz-r4-line);border-radius:13px;display:block;margin:0 0 16px;padding:14px 16px;position:static}
.swz-r4-filters__bar{align-items:end;display:grid;gap:10px;grid-template-columns:1.4fr 1fr 1.2fr .6fr .6fr auto}
.swz-r4-filters__field{display:grid;gap:3px;margin:0}
.swz-r4-filters__field>span{color:var(--swz-r4-muted);font-size:11.5px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
.swz-r4-filters__actions{align-items:center;display:flex;gap:10px}
.swz-r4-filters__actions .swz-r4-btn{min-height:38px;white-space:nowrap}
.swz-r4-filters__clear{color:var(--swz-r4-muted);font-size:12.5px;text-decoration:underline;white-space:nowrap}

.swz-r4-filters__groups{border-top:1px solid var(--swz-r4-line);display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:14px;padding-top:14px}
.swz-r4-filters__groups:empty{border:0;margin:0;padding:0}
.swz-r4-filter-group{background:var(--swz-r4-soft);border:1px solid var(--swz-r4-line);border-radius:10px;padding:0}
.swz-r4-filter-group>summary{align-items:center;cursor:pointer;display:flex;gap:7px;font-size:13px;font-weight:750;list-style:none;padding:10px 12px}
.swz-r4-filter-group>summary::-webkit-details-marker{display:none}
.swz-r4-filter-group__title{flex:1}
.swz-r4-filter-group__count{background:var(--swz-r4-accent);border-radius:99px;color:#fff;font-size:11px;font-weight:800;padding:1px 7px}
.swz-r4-filter-group__hint{color:var(--swz-r4-muted);cursor:help;display:inline-flex}
.swz-r4-filter-group__hint .dashicons{font-size:15px;height:15px;width:15px}
.swz-r4-filter-group__arrow{color:var(--swz-r4-muted);font-size:15px;height:15px;transition:transform .15s;width:15px}
.swz-r4-filter-group[open] .swz-r4-filter-group__arrow{transform:rotate(180deg)}
.swz-r4-filter-group__help{display:none}
.swz-r4-filter-group__fields{display:grid;gap:9px;padding:0 12px 12px}
.swz-r4-filter-group .swz-r4-checks{max-height:190px;overflow-y:auto}

@media(max-width:1100px){
  .swz-r4-filters__bar{grid-template-columns:1fr 1fr 1fr;}
  .swz-r4-filters__actions{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:782px){
  /* En móvil cada sección se pliega y la ayuda se lee, no se pasa el cursor */
  .swz-r4-filters{padding:12px}
  .swz-r4-filters__bar{grid-template-columns:1fr}
  .swz-r4-filters__groups{grid-template-columns:1fr}
  .swz-r4-filter-group__hint{display:none}
  .swz-r4-filter-group[open] .swz-r4-filter-group__help{color:var(--swz-r4-muted);display:block;font-size:12px;line-height:1.4;margin:0;padding:0 12px 9px}
  .swz-r4-filters__actions .swz-r4-btn{flex:1}
}

/* ============================================================
   Reparto equilibrado de las secciones de filtros
   Con auto-fit, un número impar dejaba la última suelta con un
   hueco al lado. Se reparte por filas que cubren todo el ancho:
   5 → 3 + 2 · 6 → 3 + 3 · 7 → 4 + 3
   ============================================================ */
.swz-r4-filters__groups{grid-template-columns:repeat(12,minmax(0,1fr))}
.swz-r4-filters__groups>.swz-r4-filter-group{grid-column:span 12}

.swz-r4-filters__groups[data-groups="2"]>.swz-r4-filter-group{grid-column:span 6}
.swz-r4-filters__groups[data-groups="3"]>.swz-r4-filter-group{grid-column:span 4}
.swz-r4-filters__groups[data-groups="4"]>.swz-r4-filter-group{grid-column:span 3}

/* 5 → tres arriba, dos abajo, ambas filas al ancho completo */
.swz-r4-filters__groups[data-groups="5"]>.swz-r4-filter-group{grid-column:span 4}
.swz-r4-filters__groups[data-groups="5"]>.swz-r4-filter-group:nth-child(n+4){grid-column:span 6}

.swz-r4-filters__groups[data-groups="6"]>.swz-r4-filter-group{grid-column:span 4}

/* 7 → cuatro arriba, tres abajo */
.swz-r4-filters__groups[data-groups="7"]>.swz-r4-filter-group{grid-column:span 3}
.swz-r4-filters__groups[data-groups="7"]>.swz-r4-filter-group:nth-child(n+5){grid-column:span 4}

.swz-r4-filters__groups[data-groups="8"]>.swz-r4-filter-group{grid-column:span 3}

@media(max-width:1100px){
  /* En pantallas medianas: dos por fila, y la impar ocupa el ancho */
  .swz-r4-filters__groups>.swz-r4-filter-group{grid-column:span 6!important}
  .swz-r4-filters__groups>.swz-r4-filter-group:last-child:nth-child(odd){grid-column:span 12!important}
}
@media(max-width:782px){
  .swz-r4-filters__groups>.swz-r4-filter-group{grid-column:span 12!important}
}

/* Volver a la portada desde los resultados */
.swz-r4-newsearch{align-items:center;color:var(--swz-r4-accent);display:inline-flex;font-size:13px;font-weight:700;gap:3px;margin-bottom:5px}
.swz-r4-newsearch .dashicons{font-size:15px;height:15px;width:15px}

/* ============================================================
   RESULTADOS EN DOS COLUMNAS
   El mapa se queda pegado mientras la lista pasa: no hay dos
   barras de scroll compitiendo, y nunca se pierde el mapa de vista.
   ============================================================ */
.swz-r4-split{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.swz-r4-split__switch{display:none}
.swz-r4-split__map{position:sticky;top:16px}
.swz-r4-split__map .swz-r4-map{height:calc(100vh - 120px);margin:0;max-height:820px;min-height:420px}
.swz-r4-split__map .swz-r4-map.is-empty{height:auto;min-height:0}
.swz-r4-split__list{min-width:0}
.swz-r4-split__list .swz-r4-cards{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Burbuja del mapa con la foto principal */
.swz-r4-popup-wrap .leaflet-popup-content{margin:0;width:220px!important}
.swz-r4-popup-wrap .leaflet-popup-content-wrapper{border-radius:11px;overflow:hidden;padding:0}
.swz-r4-popup{display:grid;gap:2px;padding:0 0 11px}
.swz-r4-popup img{display:block;height:126px;object-fit:cover;width:100%}
.swz-r4-popup strong{font-size:13.5px;line-height:1.3;margin:9px 11px 0}
.swz-r4-popup__price{color:var(--swz-r4-accent);font-size:16px;font-weight:850;margin:0 11px}
.swz-r4-popup__city{color:var(--swz-r4-muted);font-size:12px;margin:0 11px}
.swz-r4-popup a{color:var(--swz-r4-accent);font-size:12.5px;font-weight:700;margin:4px 11px 0}

/* Grupos de publicaciones cuando los puntos se pisan */
.swz-r4-cluster{background:transparent}
.swz-r4-cluster span{align-items:center;background:var(--swz-r4-accent);border:3px solid rgba(255,255,255,.9);border-radius:50%;box-shadow:0 3px 12px rgba(16,42,67,.3);color:#fff;display:flex;font-size:13px;font-weight:850;height:40px;justify-content:center;width:40px}
.swz-r4-cluster:hover span{transform:scale(1.08)}

/* La tarjeta se resalta al pulsar su punto en el mapa */
.swz-r4-card.is-highlighted{border-color:var(--swz-r4-accent);box-shadow:0 0 0 3px rgba(23,92,211,.22)}

@media(max-width:1100px){
  .swz-r4-split{grid-template-columns:1fr}
  .swz-r4-split__map{position:static}
  .swz-r4-split__map .swz-r4-map{height:360px;max-height:none}
  .swz-r4-split__list .swz-r4-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:782px){
  /* En el teléfono se elige: lista o mapa */
  .swz-r4-split__switch{background:#fff;border:1px solid var(--swz-r4-line);border-radius:10px;display:flex;gap:3px;margin-bottom:12px;padding:4px}
  .swz-r4-split__switch button{align-items:center;background:none;border:0;border-radius:7px;color:var(--swz-r4-muted);cursor:pointer;display:flex;flex:1;font-size:13px;font-weight:700;gap:5px;justify-content:center;padding:9px}
  .swz-r4-split__switch button.is-active{background:var(--swz-r4-accent);color:#fff}
  .swz-r4-split__switch .dashicons{font-size:16px;height:16px;width:16px}
  .swz-r4-split__map{display:none}
  .swz-r4-split.is-map .swz-r4-split__map{display:block}
  .swz-r4-split.is-map .swz-r4-split__list .swz-r4-cards,
  .swz-r4-split.is-map .swz-r4-split__list .swz-r4-pagination{display:none}
  .swz-r4-split__map .swz-r4-map{height:calc(100vh - 220px);min-height:340px}
  .swz-r4-split__list .swz-r4-cards{grid-template-columns:1fr}
}

/* Lista emergente cuando varias publicaciones comparten el mismo punto */
.swz-r4-popup-wrap--list .leaflet-popup-content{width:250px!important}
.swz-r4-popup-list{max-height:300px;overflow-y:auto;padding:11px}
.swz-r4-popup-list__title{display:block;font-size:12px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em;color:var(--swz-r4-muted)}
.swz-r4-popup-row{align-items:center;border-radius:8px;color:var(--swz-r4-ink);display:flex;gap:8px;padding:6px}
.swz-r4-popup-row:hover{background:var(--swz-r4-soft);color:var(--swz-r4-ink)}
.swz-r4-popup-row img,.swz-r4-popup-row__blank{border-radius:6px;flex:0 0 auto;height:42px;object-fit:cover;width:54px}
.swz-r4-popup-row__blank{background:#e7edf3;display:block}
.swz-r4-popup-row__text{display:grid;gap:1px;min-width:0}
.swz-r4-popup-row__text strong{font-size:12.5px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.swz-r4-popup-row__text em{color:var(--swz-r4-accent);font-size:12px;font-style:normal;font-weight:800}
.swz-r4-popup-more{color:var(--swz-r4-muted);font-size:12px;margin:6px 0 0;text-align:center}

/* Un componente dentro de otro no debe duplicar el margen ni el ancho */
.swz-r4 .swz-r4{margin:0;max-width:none;padding:0}
