1<!DOCTYPE html> 2<html lang="de"> 3<head> 4 5 <title>Alle günstigen Häuser | CasaDeals</title> 6 <meta charset="utf-8"> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 8 9 <link rel="preload" as="style" href="https://www.casadeals.de/assets/built/screen.css?v=mQIJZEGgRxgG4nGC"> 10 <link rel="preload" as="script" href="https://www.casadeals.de/assets/built/source.js?v=TS2MNRuFEW7yH7kJ"> 11 <link rel="preload" as="script" href="https://www.casadeals.de/assets/js/bookmarks.js?v=cLPPxKKw2dk90KYW"> 12 13 <link rel="preload" as="font" type="font/woff2" href="https://www.casadeals.de/assets/fonts/inter-roman.woff2?v=OecsB5TBLy27FKD2" crossorigin="anonymous"> 14<style> 15 @font-face { 16 font-family: "Inter"; 17 font-style: normal; 18 font-weight: 100 900; 19 font-display: optional; 20 src: url(https://www.casadeals.de/assets/fonts/inter-roman.woff2?v=OecsB5TBLy27FKD2) format("woff2"); 21 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; 22 } 23</style> 24 25 <link rel="stylesheet" type="text/css" href="https://www.casadeals.de/assets/built/screen.css?v=mQIJZEGgRxgG4nGC"> 26 <link rel="stylesheet" type="text/css" href="https://www.casadeals.de/assets/css/bookmarks.css?v=UKIWFkd23rl4FuOJ"> 27 <link rel="stylesheet" type="text/css" href="https://www.casadeals.de/assets/css/deal-v2.css?v=69oucTmh4GbCVaGh"> 28 <link rel="stylesheet" type="text/css" href="https://www.casadeals.de/assets/css/cd-map-support.css?v=3spyJ7nET2gBNXWp"> 29
29<script defer src="https://www.casadeals.de/assets/js/cd-map-support.js?v=RpmwhVeruiY940nh"></script>
29 30 31 <style> 32 :root { 33 --background-color: #ffffff 34 } 35 </style> 36 37
37<script> 38 /* The script for calculating the color contrast has been taken from 39 https://gomakethings.com/dynamically-changing-the-text-color-based-on-background-color-contrast-with-vanilla-js/ */ 40 var accentColor = getComputedStyle(document.documentElement).getPropertyValue('--background-color'); 41 accentColor = accentColor.trim().slice(1); 42 43 if (accentColor.length === 3) { 44 accentColor = accentColor[0] + accentColor[0] + accentColor[1] + accentColor[1] + accentColor[2] + accentColor[2]; 45 } 46 47 var r = parseInt(accentColor.substr(0, 2), 16); 48 var g = parseInt(accentColor.substr(2, 2), 16); 49 var b = parseInt(accentColor.substr(4, 2), 16); 50 var yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000; 51 var textColor = (yiq >= 128) ? 'dark' : 'light'; 52 53 document.documentElement.className = `has-${textColor}-text`; 54 </script>
54 55 56
56<script> 57(function () { 58 var root = document.documentElement; 59 var pending = true; 60 var started = false; 61 var deadline = 0; 62 var resolveReady; 63 var timer; 64 var ready = new Promise(function (resolve) { resolveReady = resolve; }); 65 66 function release(reason) { 67 if (!pending) return; 68 pending = false; 69 clearTimeout(timer); 70 root.removeAttribute('data-cd-feeds-pending'); 71 resolveReady(); 72 if (reason === 'watchdog' || reason === 'script-timeout') { 73 console.warn('CasaDeals: Lade-Sicherheitslimit erreicht; sichtbare Karten werden nicht nachträglich verschoben.'); 74 } 75 } 76 77 window.CasaDealsFeedStability = { 78 ready: ready, 79 release: release, 80 start: function () { 81 if (!pending || started) return; 82 started = true; 83 clearTimeout(timer); 84 // Up to 8s for same-day page boundaries + 5s for new counts. 85 // Actual count requests each have their own 5s timeout. 86 deadline = Date.now() + 15000; 87 timer = setTimeout(function () { release('watchdog'); }, 15000); 88 }, 89 canSort: function () { 90 if (deadline && Date.now() >= deadline) release('watchdog'); 91 return pending && root.hasAttribute('data-cd-feeds-pending'); 92 } 93 }; 94 95 root.setAttribute('data-cd-feeds-pending', 'true'); 96 timer = setTimeout(function () { release('script-timeout'); }, 20000); 97 window.addEventListener('pageshow', function (event) { 98 if (event.persisted) release('bfcache'); 99 }); 100})(); 101</script>
101 102 103 <meta name="description" content="Entdecke günstige Traumhäuser in Südeuropa (Italien, Spanien, Portugal & Co.). Immer unter 300.000â¬."> 104 <link rel="icon" href="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/size/w256h256/2025/12/CasaDeals-Favicon.png" type="image/png"> 105 <link rel="canonical" href="https://www.casadeals.de/guenstige-haeuser/"> 106 <meta name="referrer" content="no-referrer-when-downgrade"> 107 <link rel="next" href="https://www.casadeals.de/guenstige-haeuser/page/2/"> 108 109 <meta property="og:site_name" content="CasaDeals"> 110 <meta property="og:type" content="website"> 111 <meta property="og:title" content="Alle günstigen Häuser | CasaDeals"> 112 <meta property="og:description" content="Entdecke günstige Traumhäuser in Südeuropa (Italien, Spanien, Portugal & Co.). Immer unter 300.000â¬."> 113 <meta property="og:url" content="https://www.casadeals.de/guenstige-haeuser/"> 114 <meta property="og:image" content="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/size/w1200/2026/08/G--nstige-Traumh--user-im-S--den.png"> 115 <meta property="article:modified_time" content="2026-01-09T13:54:31.000Z"> 116 <meta property="article:publisher" content="https://www.facebook.com/casadeals.de"> 117 <meta name="twitter:card" content="summary_large_image"> 118 <meta name="twitter:title" content="Alle günstigen Häuser | CasaDeals"> 119 <meta name="twitter:description" content="Entdecke günstige Traumhäuser in Südeuropa (Italien, Spanien, Portugal & Co.). Immer unter 300.000â¬."> 120 <meta name="twitter:url" content="https://www.casadeals.de/guenstige-haeuser/"> 121 <meta name="twitter:image" content="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/size/w1200/2026/08/G--nstige-Traumh--user-im-S--den.png"> 122 <meta property="og:image:width" content="1200"> 123 <meta property="og:image:height" content="675"> 124 125
125<script type="application/ld+json"> 126{ 127 "@context": "https://schema.org", 128 "@type": "Article", 129 "publisher": { 130 "@type": "Organization", 131 "name": "CasaDeals", 132 "url": "https://www.casadeals.de/", 133 "logo": { 134 "@type": "ImageObject", 135 "url": "https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2025/12/CasaDeals-Logo-1.png" 136 } 137 }, 138 "author": { 139 "@type": "Person", 140 "name": "Jonas Eichmann", 141 "image": { 142 "@type": "ImageObject", 143 "url": "https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/size/w1200/2026/08/Jonas-CasaDeals-3.png", 144 "width": 1200, 145 "height": 1200 146 }, 147 "sameAs": [] 148 }, 149 "headline": "Alle günstigen Häuser | CasaDeals", 150 "url": "https://www.casadeals.de/guenstige-haeuser/", 151 "dateModified": "2026-01-09T13:54:31.000Z", 152 "mainEntityOfPage": "https://www.casadeals.de/guenstige-haeuser/" 153} 154 </script>
154 155 156 <meta name="generator" content="Ghost 6.68"> 157 <link rel="alternate" type="application/rss+xml" title="CasaDeals" href="https://www.casadeals.de/rss/"> 158
158<script defer src="https://cdn.jsdelivr.net/ghost/portal@~2.71/umd/portal.min.js" data-i18n="true" data-ghost="https://www.casadeals.de/" data-key="4dc734bd19eae7495e19d7f903" data-api="https://casadeals.ghost.io/ghost/api/content/" data-locale="de" crossorigin="anonymous"></script>
158<style id="gh-members-styles">.gh-post-upgrade-cta-content, 159.gh-post-upgrade-cta { 160 display: flex; 161 flex-direction: column; 162 align-items: center; 163 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; 164 text-align: center; 165 width: 100%; 166 color: #ffffff; 167 font-size: 16px; 168} 169 170.gh-post-upgrade-cta-content { 171 border-radius: 8px; 172 padding: 40px 4vw; 173} 174 175.gh-post-upgrade-cta h2 { 176 color: #ffffff; 177 font-size: 28px; 178 letter-spacing: -0.2px; 179 margin: 0; 180 padding: 0; 181} 182 183.gh-post-upgrade-cta p { 184 margin: 20px 0 0; 185 padding: 0; 186} 187 188.gh-post-upgrade-cta small { 189 font-size: 16px; 190 letter-spacing: -0.2px; 191} 192 193.gh-post-upgrade-cta a { 194 color: #ffffff; 195 cursor: pointer; 196 font-weight: 500; 197 box-shadow: none; 198 text-decoration: underline; 199} 200 201.gh-post-upgrade-cta a:hover { 202 color: #ffffff; 203 opacity: 0.8; 204 box-shadow: none; 205 text-decoration: underline; 206} 207 208.gh-post-upgrade-cta a.gh-btn { 209 display: block; 210 background: #ffffff; 211 text-decoration: none; 212 margin: 28px 0 0; 213 padding: 8px 18px; 214 border-radius: 4px; 215 font-size: 16px; 216 font-weight: 600; 217} 218 219.gh-post-upgrade-cta a.gh-btn:hover { 220 opacity: 0.92; 221}</style>
221<script async src="https://js.stripe.com/v3/"></script>
221 222
222<script defer src="https://cdn.jsdelivr.net/ghost/sodo-search@~1.8/umd/sodo-search.min.js" data-key="4dc734bd19eae7495e19d7f903" data-styles="https://cdn.jsdelivr.net/ghost/sodo-search@~1.8/umd/main.css" data-sodo-search="https://casadeals.ghost.io/" data-locale="de" crossorigin="anonymous"></script>
222 223
223<script defer src="https://cdn.jsdelivr.net/ghost/announcement-bar@~1.1/umd/announcement-bar.min.js" data-announcement-bar="https://www.casadeals.de/" data-api-url="https://www.casadeals.de/members/api/announcement/" crossorigin="anonymous"></script>
223 224 <link href="https://www.casadeals.de/webmentions/receive/" rel="webmention"> 225
225<script defer src="/public/cards.min.js?v=ShRHxgy4po8zN-Wf"></script>
225 226 <link rel="stylesheet" type="text/css" href="/public/cards.min.css?v=WwnU9jw5ancNC8Gc"> 227
227<script defer src="/public/member-attribution.min.js?v=AKG4hWena9j3yX3I"></script>
227 228
228<script defer src="/public/ghost-stats.min.js?v=vFcCUf6ZQ0Hyhc8h" data-stringify-payload="false" data-datasource="analytics_events" data-storage="localStorage" data-host="https://www.casadeals.de/.ghost/analytics/api/v1/page_hit" tb_site_uuid="3461f65d-ced8-4975-b755-c10a96d5157a" tb_post_uuid="undefined" tb_post_type="page" tb_member_uuid="undefined" tb_member_status="undefined" tb_gift_link=""></script>
228<style>:root {--ghost-accent-color: #e86100;}</style> 229 <meta name="google-site-verification" content="vVtpn4Q6hu73F4MaxVGgC7jpAbeFtavShtATD0vvKcU" /> 230 231<style> 232 /* --- ALLGEMEINE ANPASSUNGEN --- */ 233 .gh-archive .gh-article-image { display: none !important; } 234 div.gh-footer-copyright { display: none !important; } 235 span.gh-article-meta-length { display: none !important; } 236 237 /* Entfernt die Unterstreichung im Header-Banner */ 238 .gh-announcement-bar a { 239 text-decoration: none !important; 240 font-weight: 400 !important; 241 } 242 243 /* Anmeldeformular Success Message */ 244 .gh-form { 245 position: relative; 246 } 247 248 .gh-form-success-message { 249 display: none; 250 position: absolute; 251 top: 120%; 252 left: 50%; 253 transform: translateX(-50%); 254 background: #ffffff; 255 color: #0f172a; 256 padding: 15px 20px; 257 border-radius: 8px; 258 box-shadow: 0 10px 25px rgba(0,0,0,0.15); 259 z-index: 9999; 260 text-align: center; 261 font-size: 1.7rem; 262 font-weight: 500; 263 line-height: 1.5; 264 white-space: normal; 265 width: 90vw; 266 max-width: 620px; 267 } 268 269 .gh-form.success .gh-form-success-message { 270 display: block; 271 } 272 273 /* H1 Standard (Desktop) */ 274 h1.gh-header-title.is-title { 275 margin-bottom: -5px; 276 } 277 278 .gh-header.is-classic .gh-header-title { 279 max-width: 640px !important; 280 line-height: 1.2 !important; 281 } 282 283 /* Header Schatten */ 284 .gh-navigation { 285 box-shadow: 0 15px 30px 0 rgba(119,123,146,0.1); 286 } 287 288 /* --- DESKTOP: HAUPTMENÃ ZENTRIEREN --- */ 289 @media (min-width: 992px) { 290 291 #gh-navigation:not(.cd-newsletter-navigation) .gh-navigation-inner { 292 grid-template-columns: 293 minmax(0, 1fr) 294 auto 295 minmax(0, 1fr) !important; 296 } 297 298 #gh-navigation:not(.cd-newsletter-navigation) .gh-navigation-brand { 299 grid-column: 1 !important; 300 grid-row: 1 !important; 301 justify-self: start !important; 302 } 303 304 #gh-navigation:not(.cd-newsletter-navigation) .gh-navigation-menu { 305 grid-column: 2 !important; 306 grid-row: 1 !important; 307 justify-self: center !important; 308 justify-content: center !important; 309 width: max-content !important; 310 padding-left: 40px !important; 311 padding-right: 40px !important; 312 margin-left: 0 !important; 313 margin-right: 0 !important; 314 } 315 316 #gh-navigation:not(.cd-newsletter-navigation) .gh-navigation-actions { 317 grid-column: 3 !important; 318 grid-row: 1 !important; 319 justify-self: end !important; 320 } 321 } 322 323 /* Bilder Border Radius */ 324 .gh-card-image img { 325 border-radius: 20px !important; 326 } 327 328 .gh-article-image img { 329 border-radius: 20px !important; 330 } 331 332 /* Anpassung der Sektions-Ãberschriften */ 333 .gh-container-title { 334 text-transform: none !important; 335 text-align: center !important; 336 font-size: 3.2rem !important; 337 font-weight: 700 !important; 338 letter-spacing: -0.02em !important; 339 margin-bottom: 40px !important; 340 border-bottom: none !important; 341 padding-bottom: 0 !important; 342 } 343 344 /* Versteckt den Vorschau-Text auf den Karten */ 345 .gh-card-excerpt { 346 display: none !important; 347 } 348 349 /* Schloss-Icon */ 350 .gh-card-meta svg, 351 .gh-card-meta svg path { 352 stroke: var(--ghost-accent-color) !important; 353 } 354 355 /* Archive Grid Optimierung */ 356 .gh-archive .gh-archive-inner { 357 grid-column: 2 / span 14 !important; 358 text-align: center !important; 359 display: flex !important; 360 flex-direction: column !important; 361 align-items: center !important; 362 max-width: none !important; 363 } 364 365 /* Titel Umbruch Optimierung */ 366 .gh-article-title.is-title { 367 font-size: 2.4rem !important; 368 word-break: normal !important; 369 overflow-wrap: normal !important; 370 white-space: normal !important; 371 } 372 373 /* Mehr Abstand unter dem "Alle anzeigen" Link */ 374 .gh-container.is-grid .gh-feed { 375 margin-bottom: 80px !important; 376 } 377 378 /* --- REGIONEN / TAG CARDS STYLING --- */ 379 body { 380 background-color: auto; 381 } 382 383 .l-tags-container { 384 width: 92%; 385 margin: 0 auto; 386 } 387 388 .m-tag-card { 389 border-radius: 20px; 390 height: 200px; 391 margin: 0 0 20px; 392 position: relative; 393 } 394 395 .m-tag-card:hover { 396 transform: translateY(-5px); 397 } 398 399 .m-tag-card:before { 400 border-radius: 20px; 401 bottom: 0; 402 content: ""; 403 left: 10px; 404 position: absolute; 405 right: 10px; 406 top: 10px; 407 transition: all 0.25s; 408 z-index: 1; 409 } 410 411 .m-tag-card__link { 412 background-color: var(--dark-bg-color); 413 border-radius: 20px; 414 display: block; 415 height: 100%; 416 overflow: hidden; 417 position: relative; 418 width: 100%; 419 z-index: 2; 420 text-decoration: none; 421 } 422 423 .m-tag-card__link.no-picture { 424 background-color: var(--secondary-subtle-color); 425 } 426 427 /* Dunkler Schattenverlauf */ 428 .m-tag-card__link::after { 429 content: ""; 430 position: absolute; 431 bottom: 0; 432 left: 0; 433 right: 0; 434 height: 60%; 435 background-image: linear-gradient( 436 to top, 437 rgba(0, 0, 0, 0.7) 0%, 438 rgba(0, 0, 0, 0) 100% 439 ); 440 z-index: 1; 441 } 442 443 .m-tag-card__picture { 444 border-radius: 20px; 445 height: 100%; 446 left: 0; 447 object-fit: cover; 448 opacity: 1; 449 position: absolute; 450 top: 0; 451 width: 100%; 452 z-index: 0; 453 } 454 455 .m-tag-card__info { 456 bottom: 0; 457 left: 0; 458 color: #fff; 459 font-size: 24px; 460 position: absolute; 461 z-index: 2; 462 background-color: transparent !important; 463 padding: 20px; 464 border-radius: 0; 465 width: 100%; 466 text-align: left; 467 } 468 469 .m-tag-card__name { 470 color: #fff !important; 471 font-size: 2rem; 472 font-weight: 700; 473 letter-spacing: 0.3px; 474 line-height: 1.3; 475 margin: 0 0 5px; 476 text-shadow: 0 2px 4px rgba(0,0,0,0.5); 477 text-decoration: none !important; 478 border-bottom: none !important; 479 } 480 481 .m-tag-card__name::after, 482 .m-tag-card__name::before { 483 display: none !important; 484 } 485 486 .m-tag-card__counter { 487 color: rgba(255, 255, 255, 0.8) !important; 488 display: block; 489 font-size: 1.2rem; 490 font-weight: 600; 491 letter-spacing: 0.2px; 492 border-top: none !important; 493 } 494 495 .m-tag-card__info.no-picture .m-tag-card__name { 496 color: #fff !important; 497 } 498 499 /* Desktop-Anpassungen Regionen */ 500 @media only screen and (min-width: 48rem) { 501 .l-tags-container { 502 display: flex; 503 flex-wrap: wrap; 504 justify-content: center; 505 margin: 60px auto 0; 506 max-width: 720px; 507 } 508 509 .m-tag-card { 510 margin: 0 20px 40px; 511 width: 320px; 512 } 513 } 514 515 @media only screen and (min-width: 64rem) { 516 .l-tags-container { 517 max-width: 1080px; 518 } 519 } 520 521 /* --- MOBILE OPTIMIERUNGEN (< 768px) --- */ 522 @media (max-width: 768px) { 523
524 h1.gh-header-title.is-title { 525 font-size: 3rem !important; 526 margin-bottom: -20px !important; 527 } 528 529 .gh-article-title.is-title { 530 font-size: 2.2rem !important; 531 } 532 533 .gh-header.is-classic .gh-header-title { 534 line-height: 1.3 !important; 535 } 536 537 html body .gh-header-inner { 538 margin-top: -30px !important; 539 } 540 } 541 542 /* --- NEWSLETTER LANDINGPAGE: LOGO MOBILE ZENTRIEREN --- */ 543 @media (max-width: 767px) { 544 545 #gh-navigation.cd-newsletter-navigation .gh-navigation-inner { 546 display: grid !important; 547 grid-template-columns: 1fr !important; 548 gap: 0 !important; 549 width: 100% !important; 550 } 551 552 #gh-navigation.cd-newsletter-navigation .gh-navigation-brand { 553 display: flex !important; 554 grid-column: 1 !important; 555 align-items: center !important; 556 justify-content: center !important; 557 width: 100% !important; 558 height: 64px !important; 559 } 560 561 #gh-navigation.cd-newsletter-navigation .gh-navigation-logo { 562 display: flex !important; 563 align-items: center !important; 564 justify-content: center !important; 565 margin: 0 auto !important; 566 width: auto !important; 567 } 568 569 #gh-navigation.cd-newsletter-navigation .gh-navigation-logo img { 570 display: block !important; 571 width: auto !important; 572 max-height: 34px !important; 573 margin: 0 auto !important; 574 } 575 } 576 577 /* --- NEWSLETTER LANDINGPAGE: MOBILE HERO --- */ 578 @media (max-width: 767px) { 579 580 html body .cd-newsletter-hero.gh-header.is-classic { 581 min-height: 94vh !important; 582 min-height: 94svh !important; 583 box-sizing: border-box !important; 584 padding-top: 96px !important; 585 padding-bottom: 64px !important; 586 } 587 588 html body .cd-newsletter-hero .gh-header-inner { 589 margin-top: -35px !important; 590 margin-bottom: 0 !important; 591 justify-content: center !important; 592 } 593 } 594 595 /* Mehr Deals in [Land] in Beiträgen */ 596 .gh-country-deals-link { 597 color: var(--ghost-accent-color); 598 } 599 600 .gh-country-deals-link:hover { 601 opacity: 0.8; 602 } 603 604 /* Alle Deals in [Land] Button */ 605 .gh-country-deals-footer { 606 display: flex; 607 justify-content: center; 608 margin-top: 3.2rem; 609 } 610 611 @media (max-width: 767px) { 612 .gh-country-deals-footer { 613 margin-top: 2.4rem; 614 } 615 } 616</style> 617 <link rel="preconnect" href="https://fonts.bunny.net"><link rel="stylesheet" href="https://fonts.bunny.net/css?family=merriweather:300,700"><style>:root {--gh-font-heading: Merriweather;}</style> 618 619 620 <style> 621 html body .gh-button, 622 html body .gh-head-button, 623 html body .gh-btn, 624 html body button, 625 html body a.gh-head-button { 626 border-radius: 40px !important; 627 } 628 629 html body .gh-form, 630 html body .gh-form-input, 631 html body input[name="email"] { 632 border-radius: 40px !important; 633 } 634 635 html body .gh-form-input { 636 padding-left: 25px !important; 637 } 638 639 html body .gh-card-tag-link { 640 position: relative; 641 z-index: 2; 642 display: block; 643 margin-bottom: 6px; 644 color: var(--ghost-accent-color); 645 font-size: 1.25rem; 646 font-weight: 700; 647 letter-spacing: 0.05em; 648 text-transform: uppercase; 649 } 650 651 html body .gh-card-tag-link:hover { 652 opacity: 0.8; 653 } 654 655 html body .gh-card-title-link { 656 color: inherit; 657 } 658 659 html body .gh-card-title-link::after { 660 position: absolute; 661 z-index: 1; 662 inset: 0; 663 content: ""; 664 } 665 </style> 666<link rel="stylesheet" href="https://www.casadeals.de/assets/css/deal-cards.css?v=cwDCAn1FqzgCjeCd">
667<script defer src="https://www.casadeals.de/assets/js/deal-cards.js?v=7K6ihnvmgscNAe7O"></script>
667 668</head> 669<body class="page-template page-guenstige-haeuser gh-font-heading-merriweather has-sans-title has-sans-body"> 670 671<div class="gh-viewport"> 672 673 <header id="gh-navigation" class="gh-navigation is-left-logo gh-outer"> 674 <div class="gh-navigation-inner gh-inner"> 675 676 <div class="gh-navigation-brand"> 677 <a class="gh-navigation-logo is-title" href="https://www.casadeals.de"> 678 <img src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2025/12/CasaDeals-Logo-1.png" alt="CasaDeals"> 679 </a> 680 <div class="cd-navigation-mobile-tools"> 681 <a 682 class="gh-icon-button cd-header-bookmarks" 683 href="#/portal/signin" 684 aria-label="Anmelden und Merkliste öffnen" 685 title="Merkliste" 686 > 687 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 688 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 689 </svg> 690 </a> 691 <button class="gh-search gh-icon-button" aria-label="Seite durchsuchen" data-ghost-search> 692 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" width="20" height="20"><path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg></button> </div> 693 <button class="gh-burger gh-icon-button" aria-label="Menü"> 694 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" viewBox="0 0 256 256"><path d="M224,128a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,128ZM40,72H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16ZM216,184H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Z"></path></svg> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" viewBox="0 0 256 256"><path d="M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z"></path></svg> </button> 695 </div> 696 697 <nav class="gh-navigation-menu"> 698 <ul class="nav"> 699 <li class="nav-alle-deals nav-current"><a href="https://www.casadeals.de/guenstige-haeuser/">Alle Deals</a></li> 700 <li class="nav-uber-uns"><a href="https://www.casadeals.de/ueber-uns/">Ãber uns</a></li> 701 <li class="nav-anzeige-schalten"><a href="https://www.casadeals.de/anzeige-schalten/">Anzeige schalten</a></li> 702</ul> 703 704 </nav> 705 706 <div class="gh-navigation-actions"> 707 <div class="cd-navigation-tools"> 708 <a 709 class="gh-icon-button cd-header-bookmarks" 710 href="#/portal/signin" 711 aria-label="Anmelden und Merkliste öffnen" 712 title="Merkliste" 713 > 714 <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"> 715 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 716 </svg> 717 </a> 718 <button class="gh-search gh-icon-button" aria-label="Seite durchsuchen" data-ghost-search> 719 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" width="20" height="20"><path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg></button> </div> 720 <div class="gh-navigation-members"> 721 <a href="#/portal/signin" data-portal="signin">Login</a> 722 <a class="gh-button" href="#/portal/signup" data-portal="signup">Premium</a> 723 </div> 724 </div> 725 726 </div> 727</header> 728 729 730<main class="gh-main gh-outer"> 731 732 <section class="gh-archive gh-inner"> 733 <div class="gh-archive-inner"> 734 <header class="gh-archive-wrapper"> 735 <h1 class="gh-article-title is-title">Alle Deals</h1> 736 <p class="gh-article-excerpt">Wir suchen täglich nach <strong>günstigen Traumhäusern und Wohnungen in Südeuropa.</strong> Hier findest du unsere handverlesene Auswahl.</p> 737 </header> 738 </div> 739 </section> 740 741 742 743 <div class="locked-archive-container"> 744 745 <div class="paywall-overlay"> 746 <div class="paywall-box"> 747 <div class="cd-paywall-icon" aria-hidden="true"> 748 <img src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2025/12/CasaDeals-Favicon.png" alt=""> 749 </div> 750 <h2>ð Schalte alle 505 Deals frei</h2> 751 752 <p>Teste CasaDeals Premium 7 Tage kostenfrei und erhalte sofort Zugriff auf alle günstigen Traumhäuser in Südeuropa.</p> 753 754 <ul class="paywall-benefits"> 755 <li>â Voller Zugriff auf alle Deals in allen Regionen</li> 756 <li>â Direkt-Links zu Anbietern & Exposés</li> 757 <li>â Jeden Sonntag 12 neue handverlesene Deals</li> 758 </ul> 759 760 <a href="#/portal/signup" data-portal="signup" class="gh-button cta-button"> 761 ð Alle Deals freischalten 762 </a> 763 764 <p class="login-link">Bereits Mitglied? <a href="#/portal/signin" data-portal="signin">Anmelden</a></p> 765 766 </div> 767 </div> 768 769 <div class="blurred-background-feed"> 770 771<style> 772 @media (max-width: 767px) { 773 .gh-container-title { 774 font-size: 2.2rem !important; 775 } 776 } 777
778 /* CasaDeals: Introtext unter der Startseiten-Ãberschrift */ 779 .gh-container-title:has(+ .gh-container-subtitle) { 780 margin-bottom: 0 !important; 781 padding-bottom: 0 !important; 782 border-bottom: 0 !important; 783 } 784 785 .gh-container-subtitle { 786 grid-column: 1 / -1; 787 width: 100%; 788 max-width: 560px; 789 justify-self: center; 790 margin: 10px auto 30px; 791 font-size: var(--content-font-size, 1.7rem); 792 font-weight: 400; 793 line-height: 1.5; 794 letter-spacing: -0.01em; 795 color: var(--color-primary-text); 796 text-align: center; 797 } 798 799 .gh-more.cd-native-more { 800 display: flex; 801 justify-content: center; 802 } 803 804 .cd-native-more .gh-loadmore[aria-disabled="true"] { 805 cursor: wait; 806 opacity: 0.65; 807 } 808 809 .gh-container:not(.has-sidebar) .gh-container-subtitle { 810 grid-column: 3 / span 12; 811 } 812 813 .gh-container.is-list.no-image:not(.has-sidebar) .gh-container-subtitle { 814 grid-column: 4 / span 10; 815 } 816 817 .gh-header:is(.is-highlight, .is-magazine) ~ .gh-container.is-grid:not(.has-sidebar) .gh-container-subtitle { 818 grid-column: 1 / -1; 819 } 820 821 .gh-container:not(:has(.gh-card)) .gh-container-subtitle { 822 display: none; 823 } 824 825 @media (max-width: 1199px) { 826 .gh-container-subtitle { 827 max-width: 640px; 828 } 829 } 830 831 @media (max-width: 767px) { 832 .gh-container-subtitle { 833 max-width: 520px; 834 margin-top: 8px; 835 margin-bottom: 24px; 836 padding-inline: 12px; 837 font-size: 1.6rem; 838 line-height: 1.5; 839 } 840 } 841</style> 842 843<section class="gh-container is-grid gh-outer"> 844 <div class="gh-container-inner gh-inner"> 845 846 847 <main class="gh-main"> 848 <div class="gh-feed" data-casadeals-sort="likes"> 849 850 851 852 <article class="gh-card post tag-frankreich tag-saint-sulpice-les-feuilles tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-46040fe54fbbae0b63e8a2e06796dcdc tag-haute-vienne tag-limousin tag-nouvelle-aquitaine cd-deal-card-v2 has-bookmark" data-cd-public-tags="Frankreich · Saint-Sulpice-les-Feuilles · Haute-Vienne · Limousin · Nouvelle-Aquitaine · " data-casadeals-post-id="6ac137a57fc0980001f21ba9" data-casadeals-published-date="2026-10-04"> 853 <div class="gh-card-link"> 854 <figure class="gh-card-image"> 855 <img 856 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-b695b55069aa71693b8baa578d105e64.jpg" 857 alt="CasaDeals â Bildervorschau" 858 decoding="async" 859 loading="lazy" 860 > 861 </figure> 862 <div class="gh-card-wrapper"> 863 <p class="gh-card-tag">Frankreich</p> 864 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/freistehendes-haus-mit-grossem-garten-im-limousin-fur-147-150eur/">Freistehendes Haus mit groÃem Garten im Limousin für 147.150â¬</a></h3> 865 <p class="gh-card-excerpt is-body">Nach dem Frühstück an der Küchentheke geht es in den eingezäunten Garten. Für deine Alltagswege kannst du das Auto stehen lassen, denn die Einrichtungen des Ortes sind zu Fuà erreichbar.</p> 866 <footer class="gh-card-meta cd-card-meta-row"> 867 <span class="cd-card-meta-left"> 868 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 869 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 870 </span> 871 <button 872 class="cd-bookmark-button" 873 type="button" 874 data-bookmark-post="6ac137a57fc0980001f21ba9" 875 aria-label="Deal merken" 876 aria-pressed="false" 877 title="Deal merken" 878> 879 <svg 880 class="cd-bookmark-icon"
881 viewBox="0 0 24 24" 882 aria-hidden="true" 883 focusable="false" 884 > 885 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 886 </svg> 887 888 <span 889 class="cd-bookmark-count" 890 data-bookmark-count 891 aria-live="polite" 892 ></span> 893</button> 894 </footer> 895 </div> 896 </div> 897</article> 898 <article class="gh-card post tag-italien tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-641e7ce1d77cfe9ec4205f4e0e9486d5 tag-sardinien tag-sulcis-iglesiente tag-iglesias tag-nebida cd-deal-card-v2 has-bookmark" data-cd-public-tags="Italien · Sardinien · Sulcis-Iglesiente · Iglesias · Nebida · " data-casadeals-post-id="6ac144817fc0980001f21c39" data-casadeals-published-date="2026-10-04"> 899 <div class="gh-card-link"> 900 <figure class="gh-card-image"> 901 <img 902 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-34c235ddf7cfb05033534dfc132c9448.jpg" 903 alt="CasaDeals â Bildervorschau" 904 decoding="async" 905 loading="lazy" 906 > 907 </figure> 908 <div class="gh-card-wrapper"> 909 <p class="gh-card-tag">Italien</p> 910 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/haus-mit-meerblickterrasse-auf-sardinien-fur-185-000eur/">Haus mit Meerblickterrasse auf Sardinien für 185.000â¬</a></h3> 911 <p class="gh-card-excerpt is-body">Für deinen Kaffee mit Meerblick geht es über die Sichtbetontreppe hinauf auf die Terrasse. Praktisch für gemeinsame Ferien: Beide Schlafzimmer haben ein eigenes Bad.</p> 912 <footer class="gh-card-meta cd-card-meta-row"> 913 <span class="cd-card-meta-left"> 914 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 915 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 916 </span> 917 <button 918 class="cd-bookmark-button" 919 type="button" 920 data-bookmark-post="6ac144817fc0980001f21c39" 921 aria-label="Deal merken" 922 aria-pressed="false" 923 title="Deal merken" 924> 925 <svg 926 class="cd-bookmark-icon"
927 viewBox="0 0 24 24" 928 aria-hidden="true" 929 focusable="false" 930 > 931 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 932 </svg> 933 934 <span 935 class="cd-bookmark-count" 936 data-bookmark-count 937 aria-live="polite" 938 ></span> 939</button> 940 </footer> 941 </div> 942 </div> 943</article> 944 <article class="gh-card post tag-spanien tag-costa-brava tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-7635b2a2de2feaefd77507bb33016f1d tag-santa-margarida tag-roses cd-deal-card-v2 has-bookmark" data-cd-public-tags="Spanien · Costa Brava · Santa Margarida · Roses · " data-casadeals-post-id="6ac14de27fc0980001f21ca2" data-casadeals-published-date="2026-10-04"> 945 <div class="gh-card-link"> 946 <figure class="gh-card-image"> 947 <img 948 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-fec929d7e480ed700a4f9d4ed438ac9c.jpg" 949 alt="CasaDeals â Bildervorschau" 950 decoding="async" 951 loading="lazy" 952 > 953 </figure> 954 <div class="gh-card-wrapper"> 955 <p class="gh-card-tag">Spanien</p> 956 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/haus-mit-privatem-bootsliegeplatz-an-der-costa-brava-fur-289-000eur/">Haus mit privatem Bootsliegeplatz an der Costa Brava für 289.000â¬</a></h3> 957 <p class="gh-card-excerpt is-body">Frühstück auf der Terrasse, später hinaus aufs Wasser: Zum renovierten Haus in Santa Margarida gehört ein privater Bootsliegeplatz.</p> 958 <footer class="gh-card-meta cd-card-meta-row"> 959 <span class="cd-card-meta-left"> 960 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 961 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 962 </span> 963 <button 964 class="cd-bookmark-button" 965 type="button" 966 data-bookmark-post="6ac14de27fc0980001f21ca2" 967 aria-label="Deal merken" 968 aria-pressed="false" 969 title="Deal merken" 970> 971 <svg 972 class="cd-bookmark-icon"
973 viewBox="0 0 24 24" 974 aria-hidden="true" 975 focusable="false" 976 > 977 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 978 </svg> 979 980 <span 981 class="cd-bookmark-count" 982 data-bookmark-count 983 aria-live="polite" 984 ></span> 985</button> 986 </footer> 987 </div> 988 </div> 989</article> 990 <article class="gh-card post tag-italien tag-trentino tag-varassone-valdaone tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-1bd206b900004e8e20f81f377a87b471 cd-deal-card-v2 has-bookmark" data-cd-public-tags="Italien · Trentino · Varassone, Valdaone · " data-casadeals-post-id="6ac12b127fc0980001f21b1e" data-casadeals-published-date="2026-10-04"> 991 <div class="gh-card-link"> 992 <figure class="gh-card-image"> 993 <img 994 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-a08631aed5001415595db413dd472cce.jpg" 995 alt="CasaDeals â Bildervorschau" 996 decoding="async" 997 loading="lazy" 998 > 999 </figure> 1000 <div class="gh-card-wrapper"> 1001 <p class="gh-card-tag">Italien</p> 1002 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/berghaus-mit-sudterrasse-und-talblick-im-trentino-fur-200-000eur/">Berghaus mit Südterrasse und Talblick im Trentino für 200.000â¬</a></h3> 1003 <p class="gh-card-excerpt is-body">Auf der Südterrasse schaust du über die Valle di Daone, an kühlen Abenden lockt der steinerne Kamin. Die renovierte Baita hat zwei Schlafzimmer und zwei Bäder.</p> 1004 <footer class="gh-card-meta cd-card-meta-row"> 1005 <span class="cd-card-meta-left"> 1006 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1007 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1008 </span> 1009 <button 1010 class="cd-bookmark-button" 1011 type="button" 1012 data-bookmark-post="6ac12b127fc0980001f21b1e" 1013 aria-label="Deal merken" 1014 aria-pressed="false" 1015 title="Deal merken" 1016> 1017 <svg 1018 class="cd-bookmark-icon"
1019 viewBox="0 0 24 24" 1020 aria-hidden="true" 1021 focusable="false" 1022 > 1023 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1024 </svg> 1025 1026 <span 1027 class="cd-bookmark-count" 1028 data-bookmark-count 1029 aria-live="polite" 1030 ></span> 1031</button> 1032 </footer> 1033 </div> 1034 </div> 1035</article> 1036 <article class="gh-card post tag-italien tag-umbrien tag-santurbano-narni tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-9b54c8ee5fb310e37a82a1f2c8fa7c1e cd-deal-card-v2 has-bookmark" data-cd-public-tags="Italien · Umbrien · SantâUrbano (Narni) · " data-casadeals-post-id="6ac11b737fc0980001f21a93" data-casadeals-published-date="2026-10-04"> 1037 <div class="gh-card-link"> 1038 <figure class="gh-card-image"> 1039 <img 1040 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-93d97567abee5edd2732804d28541fe8.jpg" 1041 alt="CasaDeals â Bildervorschau" 1042 decoding="async" 1043 loading="lazy" 1044 > 1045 </figure> 1046 <div class="gh-card-wrapper"> 1047 <p class="gh-card-tag">Italien</p> 1048 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/dorfhaus-mit-kamin-und-balkon-in-umbrien-fur-18-000eur/">Dorfhaus mit Kamin und Balkon in Umbrien für 18.000â¬</a></h3> 1049 <p class="gh-card-excerpt is-body">Nach einem Tag in Umbriens Hügeln kannst du es dir im Wohnraum mit Kamin und sichtbaren Holzbalken gemütlich machen. Zwei Schlafzimmer lassen dir Platz für Besuch.</p> 1050 <footer class="gh-card-meta cd-card-meta-row"> 1051 <span class="cd-card-meta-left"> 1052 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1053 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1054 </span> 1055 <button 1056 class="cd-bookmark-button" 1057 type="button" 1058 data-bookmark-post="6ac11b737fc0980001f21a93" 1059 aria-label="Deal merken" 1060 aria-pressed="false" 1061 title="Deal merken" 1062> 1063 <svg 1064 class="cd-bookmark-icon"
1065 viewBox="0 0 24 24" 1066 aria-hidden="true" 1067 focusable="false" 1068 > 1069 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1070 </svg> 1071 1072 <span 1073 class="cd-bookmark-count" 1074 data-bookmark-count 1075 aria-live="polite" 1076 ></span> 1077</button> 1078 </footer> 1079 </div> 1080 </div> 1081</article> 1082 <article class="gh-card post tag-italien tag-sardinien tag-san-serafino-ghilarza tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-1551567762309dd6cd47b9984a39272c cd-deal-card-v2 has-bookmark" data-cd-public-tags="Italien · Sardinien · San Serafino, Ghilarza · " data-casadeals-post-id="6ac11fd07fc0980001f21ab6" data-casadeals-published-date="2026-10-04"> 1083 <div class="gh-card-link"> 1084 <figure class="gh-card-image"> 1085 <img 1086 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-962d58c6700352d761fb833e4bcc5fc2.jpg" 1087 alt="CasaDeals â Bildervorschau" 1088 decoding="async" 1089 loading="lazy" 1090 > 1091 </figure> 1092 <div class="gh-card-wrapper"> 1093 <p class="gh-card-tag">Italien</p> 1094 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/muristene-mit-natursteinfassade-auf-sardinien-fur-59-000eur/">Muristene mit Natursteinfassade auf Sardinien für 59.000â¬</a></h3> 1095 <p class="gh-card-excerpt is-body">Naturstein, Holzläden und ein breiter Ziegelbogen geben diesem renovierten Pilgerhäuschen seinen Charakter. Nahe dem Lago Omodeo könntest du hier deinen kleinen Rückzugsort im sardischen Binnenland einrichten.</p> 1096 <footer class="gh-card-meta cd-card-meta-row"> 1097 <span class="cd-card-meta-left"> 1098 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1099 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1100 </span> 1101 <button 1102 class="cd-bookmark-button" 1103 type="button" 1104 data-bookmark-post="6ac11fd07fc0980001f21ab6" 1105 aria-label="Deal merken" 1106 aria-pressed="false" 1107 title="Deal merken" 1108> 1109 <svg 1110 class="cd-bookmark-icon"
1111 viewBox="0 0 24 24" 1112 aria-hidden="true" 1113 focusable="false" 1114 > 1115 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1116 </svg> 1117 1118 <span 1119 class="cd-bookmark-count" 1120 data-bookmark-count 1121 aria-live="polite" 1122 ></span> 1123</button> 1124 </footer> 1125 </div> 1126 </div> 1127</article> 1128 <article class="gh-card post tag-spanien tag-teneriffa-kanarische-inseln tag-el-pris-tacoronte tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-2bb6d98e90e3f32762b6c079cc2137f3 cd-deal-card-v2 has-bookmark" data-cd-public-tags="Spanien · Teneriffa, Kanarische Inseln · El Pris, Tacoronte · " data-casadeals-post-id="6ac0f64f7fc0980001f219a6" data-casadeals-published-date="2026-10-04"> 1129 <div class="gh-card-link"> 1130 <figure class="gh-card-image"> 1131 <img 1132 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-487eb821d0cf8d6b84425ca000f54a8e.jpg" 1133 alt="CasaDeals â Bildervorschau" 1134 decoding="async" 1135 loading="lazy" 1136 > 1137 </figure> 1138 <div class="gh-card-wrapper"> 1139 <p class="gh-card-tag">Spanien</p> 1140 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/wohnung-mit-terrasse-und-meerblick-auf-teneriffa-fur-186-000-eur/">Wohnung mit Terrasse und Meerblick auf Teneriffa für 186.000â¬</a></h3> 1141 <p class="gh-card-excerpt is-body">Die groÃe Aussicht gehört hier zu einer kleinen, bereits renovierten Wohnung. Mit Meer und Teide im Blick könnte die Terrasse zu deinem liebsten Feierabendplatz werden.</p> 1142 <footer class="gh-card-meta cd-card-meta-row"> 1143 <span class="cd-card-meta-left"> 1144 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1145 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1146 </span> 1147 <button 1148 class="cd-bookmark-button" 1149 type="button" 1150 data-bookmark-post="6ac0f64f7fc0980001f219a6" 1151 aria-label="Deal merken" 1152 aria-pressed="false" 1153 title="Deal merken" 1154> 1155 <svg 1156 class="cd-bookmark-icon"
1157 viewBox="0 0 24 24" 1158 aria-hidden="true" 1159 focusable="false" 1160 > 1161 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1162 </svg> 1163 1164 <span 1165 class="cd-bookmark-count" 1166 data-bookmark-count 1167 aria-live="polite" 1168 ></span> 1169</button> 1170 </footer> 1171 </div> 1172 </div> 1173</article> 1174 <article class="gh-card post tag-griechenland tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-6857ddbd5b511a95e8981ba9eba736e2 tag-agais tag-astypalea tag-analipsi cd-deal-card-v2 has-bookmark" data-cd-public-tags="Griechenland · Ãgäis · Astypalea · Analipsi · " data-casadeals-post-id="6ac147c07fc0980001f21c64" data-casadeals-published-date="2026-10-04"> 1175 <div class="gh-card-link"> 1176 <figure class="gh-card-image"> 1177 <img 1178 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-c5cbf2c4eb982aaaa01b2199c11e6cf9.jpg" 1179 alt="CasaDeals â Bildervorschau" 1180 decoding="async" 1181 loading="lazy" 1182 > 1183 </figure> 1184 <div class="gh-card-wrapper"> 1185 <p class="gh-card-tag">Griechenland</p> 1186 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/traditionelles-haus-mit-meerblick-und-jacuzzi-in-der-sudlichen-agais-fur-250-000eur/">Traditionelles Haus mit Meerblick und Jacuzzi in der Südlichen Ãgäis für 250.000â¬</a></h3> 1187 <p class="gh-card-excerpt is-body">Durch die blaue Tür blickst du aufs Meer, auf der überdachten Veranda kannst du im beheizten Jacuzzi entspannen. Das 2022 renovierte Haus wird möbliert verkauft.</p> 1188 <footer class="gh-card-meta cd-card-meta-row"> 1189 <span class="cd-card-meta-left"> 1190 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1191 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1192 </span> 1193 <button 1194 class="cd-bookmark-button" 1195 type="button" 1196 data-bookmark-post="6ac147c07fc0980001f21c64" 1197 aria-label="Deal merken" 1198 aria-pressed="false" 1199 title="Deal merken" 1200> 1201 <svg 1202 class="cd-bookmark-icon"
1203 viewBox="0 0 24 24" 1204 aria-hidden="true" 1205 focusable="false" 1206 > 1207 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1208 </svg> 1209 1210 <span 1211 class="cd-bookmark-count" 1212 data-bookmark-count 1213 aria-live="polite" 1214 ></span> 1215</button> 1216 </footer> 1217 </div> 1218 </div> 1219</article> 1220 <article class="gh-card post tag-griechenland tag-korfu-ionische-inseln tag-lakones tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-f97cbd510a1fc24fb19418bd0372a458 cd-deal-card-v2 has-bookmark" data-cd-public-tags="Griechenland · Korfu, Ionische Inseln · Lakones · " data-casadeals-post-id="6ac126bc7fc0980001f21af8" data-casadeals-published-date="2026-10-04"> 1221 <div class="gh-card-link"> 1222 <figure class="gh-card-image"> 1223 <img 1224 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-2a4754d89484632370d76d1d9ed06489.jpg" 1225 alt="CasaDeals â Bildervorschau" 1226 decoding="async" 1227 loading="lazy" 1228 > 1229 </figure> 1230 <div class="gh-card-wrapper"> 1231 <p class="gh-card-tag">Griechenland</p> 1232 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/dorfhaus-mit-meerblickterrasse-auf-korfu-fur-120-000eur/">Dorfhaus mit Meerblickterrasse auf Korfu für 120.000â¬</a></h3> 1233 <p class="gh-card-excerpt is-body">Zum Kochen gehst du hier über den eigenen Hof: Küche und Schlafräume liegen in zwei separaten Gebäuden. Auf der erhöhten Holzterrasse schaust du über die Dächer hinweg aufs Meer.</p> 1234 <footer class="gh-card-meta cd-card-meta-row"> 1235 <span class="cd-card-meta-left"> 1236 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1237 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1238 </span> 1239 <button 1240 class="cd-bookmark-button" 1241 type="button" 1242 data-bookmark-post="6ac126bc7fc0980001f21af8" 1243 aria-label="Deal merken" 1244 aria-pressed="false" 1245 title="Deal merken" 1246> 1247 <svg 1248 class="cd-bookmark-icon"
1249 viewBox="0 0 24 24" 1250 aria-hidden="true" 1251 focusable="false" 1252 > 1253 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1254 </svg> 1255 1256 <span 1257 class="cd-bookmark-count" 1258 data-bookmark-count 1259 aria-live="polite" 1260 ></span> 1261</button> 1262 </footer> 1263 </div> 1264 </div> 1265</article> 1266 <article class="gh-card post tag-italien tag-sardinien tag-monteleone-rocca-doria tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-457c1033622e1930e7e7d5572cf5accb cd-deal-card-v2 has-bookmark" data-cd-public-tags="Italien · Sardinien · Monteleone Rocca Doria · " data-casadeals-post-id="6ac13ffe7fc0980001f21c11" data-casadeals-published-date="2026-10-04"> 1267 <div class="gh-card-link"> 1268 <figure class="gh-card-image"> 1269 <img 1270 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-2f5aea6f053b06b940158400450f0d02.jpg" 1271 alt="CasaDeals â Bildervorschau" 1272 decoding="async" 1273 loading="lazy" 1274 > 1275 </figure> 1276 <div class="gh-card-wrapper"> 1277 <p class="gh-card-tag">Italien</p> 1278 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/villa-mit-seeblick-auf-sardinien-fur-159-000eur/">Villa mit Seeblick auf Sardinien für 159.000â¬</a></h3> 1279 <p class="gh-card-excerpt is-body">Aus dem oberen Wohnbereich schaust du ins Grüne und zum Lago Temo. Unten steckt ein Raum direkt im Fels, drauÃen wartet eine Veranda mit Grill.</p> 1280 <footer class="gh-card-meta cd-card-meta-row"> 1281 <span class="cd-card-meta-left"> 1282 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1283 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1284 </span> 1285 <button 1286 class="cd-bookmark-button" 1287 type="button" 1288 data-bookmark-post="6ac13ffe7fc0980001f21c11" 1289 aria-label="Deal merken" 1290 aria-pressed="false" 1291 title="Deal merken" 1292> 1293 <svg 1294 class="cd-bookmark-icon"
1295 viewBox="0 0 24 24" 1296 aria-hidden="true" 1297 focusable="false" 1298 > 1299 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1300 </svg> 1301 1302 <span 1303 class="cd-bookmark-count" 1304 data-bookmark-count 1305 aria-live="polite" 1306 ></span> 1307</button> 1308 </footer> 1309 </div> 1310 </div> 1311</article> 1312 <article class="gh-card post tag-portugal tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-32d0efdb153eda1187e8562a179ff58e tag-coimbra tag-zentralportugal tag-arganil cd-deal-card-v2 has-bookmark" data-cd-public-tags="Portugal · Coimbra · Zentralportugal · Arganil · " data-casadeals-post-id="6ac12e427fc0980001f21b40" data-casadeals-published-date="2026-10-04"> 1313 <div class="gh-card-link"> 1314 <figure class="gh-card-image"> 1315 <img 1316 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-8d3b7181da37964433e933ecbc69a48a-1.jpg" 1317 alt="CasaDeals â Bildervorschau" 1318 decoding="async" 1319 loading="lazy" 1320 > 1321 </figure> 1322 <div class="gh-card-wrapper"> 1323 <p class="gh-card-tag">Portugal</p> 1324 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/schiefersteinhaus-mit-garten-in-zentralportugal-fur-130-000eur/">Schiefersteinhaus mit Garten in Zentralportugal für 130.000â¬</a></h3> 1325 <p class="gh-card-excerpt is-body">Zwischen Schieferwänden und Holzbalken wärmt ein Holzofen den Wohnbereich, drauÃen wartet der Garten. Das Haus von 1934 verbindet diese rustikale Seite mit Glasfaserinternet und offenen Bereichen für mögliche zusätzliche Zimmer.</p> 1326 <footer class="gh-card-meta cd-card-meta-row"> 1327 <span class="cd-card-meta-left"> 1328 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1329 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1330 </span> 1331 <button 1332 class="cd-bookmark-button" 1333 type="button" 1334 data-bookmark-post="6ac12e427fc0980001f21b40" 1335 aria-label="Deal merken" 1336 aria-pressed="false" 1337 title="Deal merken" 1338> 1339 <svg 1340 class="cd-bookmark-icon"
1341 viewBox="0 0 24 24" 1342 aria-hidden="true" 1343 focusable="false" 1344 > 1345 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1346 </svg> 1347 1348 <span 1349 class="cd-bookmark-count" 1350 data-bookmark-count 1351 aria-live="polite" 1352 ></span> 1353</button> 1354 </footer> 1355 </div> 1356 </div> 1357</article> 1358 <article class="gh-card post tag-frankreich tag-limousin-nouvelle-aquitaine tag-saint-leger-magnazeix tag-hash-cd-deal-v2 tag-hash-cd-gallery-public tag-hash-cd-editor tag-hash-cd-src-dedb20f289e8cd2385083d66496c7ec1 cd-deal-card-v2 has-bookmark" data-cd-public-tags="Frankreich · Limousin (Nouvelle-Aquitaine) · Saint-Léger-Magnazeix · " data-casadeals-post-id="6ac123af7fc0980001f21adc" data-casadeals-published-date="2026-10-04"> 1359 <div class="gh-card-link"> 1360 <figure class="gh-card-image"> 1361 <img 1362 src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2026/10/cd-cafb1121d0ed7af085c4f036b401aa02.jpg" 1363 alt="CasaDeals â Bildervorschau" 1364 decoding="async" 1365 loading="lazy" 1366 > 1367 </figure> 1368 <div class="gh-card-wrapper"> 1369 <p class="gh-card-tag">Frankreich</p> 1370 <h3 class="gh-card-title is-title"><a class="gh-card-title-link" href="/dorfhaus-mit-innenhof-und-garten-im-limousin-fur-64-600eur/">Dorfhaus mit Innenhof und Garten im Limousin für 64.600â¬</a></h3> 1371 <p class="gh-card-excerpt is-body">Hinter dem blütenumrankten Eingang warten Holzbalken und ein offener Kamin. Deinen Morgenkaffee kannst du im ummauerten Hof trinken, zum Gärtnern gehst du ein paar Meter weiter zum separaten Garten.</p> 1372 <footer class="gh-card-meta cd-card-meta-row"> 1373 <span class="cd-card-meta-left"> 1374 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" id="Lock-1--Streamline-Ultimate"><defs></defs><title>lock-1</title><path d="M4.375 8.125h11.25s1.25 0 1.25 1.25v8.75s0 1.25 -1.25 1.25H4.375s-1.25 0 -1.25 -1.25v-8.75s0 -1.25 1.25 -1.25" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="M5.625 8.125V5a4.375 4.375 0 0 1 8.75 0v3.125" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><path d="m10 12.5 0 2.5" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path></svg> <!-- 1375 --> <time class="gh-card-date" datetime="2026-10-04">04 Okt. 2026</time> 1376 </span> 1377 <button 1378 class="cd-bookmark-button" 1379 type="button" 1380 data-bookmark-post="6ac123af7fc0980001f21adc" 1381 aria-label="Deal merken" 1382 aria-pressed="false" 1383 title="Deal merken" 1384> 1385 <svg 1386 class="cd-bookmark-icon"
1387 viewBox="0 0 24 24" 1388 aria-hidden="true" 1389 focusable="false" 1390 > 1391 <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z"></path> 1392 </svg> 1393 1394 <span 1395 class="cd-bookmark-count" 1396 data-bookmark-count 1397 aria-live="polite" 1398 ></span> 1399</button> 1400 </footer> 1401 </div> 1402 </div> 1403</article> 1404 1405 </div> 1406 1407 <div class="gh-more is-title"> 1408 <a href="https://www.casadeals.de/guenstige-haeuser/">Alle Deals anzeigen <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" viewBox="0 0 256 256"><path d="M224.49,136.49l-72,72a12,12,0,0,1-17-17L187,140H40a12,12,0,0,1,0-24H187L135.51,64.48a12,12,0,0,1,17-17l72,72A12,12,0,0,1,224.49,136.49Z"></path></svg></a> 1409 </div> 1410 </main> 1411 1412 1413 </div> 1414</section> 1415 </div> 1416 1417 </div> 1418 1419 1420 <style> 1421 /* CasaDeals archive paywall: full-width dimmed archive with centered focus card */ 1422 .locked-archive-container { 1423 position: relative; 1424 width: calc(100% + max(8vmin, 40px)); 1425 height: auto; 1426 overflow: hidden; 1427 margin-top: 0; 1428 margin-bottom: 100px; 1429 margin-left: calc(0px - max(4vmin, 20px)); 1430 background: #fff; 1431 isolation: isolate; 1432 } 1433 1434 /* Auf gesperrten Regionenseiten beginnt der Effekt direkt unter der Trennlinie. */ 1435 .gh-archive { 1436 margin-bottom: 0; 1437 } 1438 1439 /* Die echte Deal-Uebersicht bleibt sichtbar, ist aber komplett nicht interaktiv. */ 1440 .blurred-background-feed { 1441 position: relative; 1442 z-index: 1; 1443 overflow: hidden; 1444 pointer-events: none; 1445 user-select: none; 1446 } 1447 1448 .blurred-background-feed .gh-container { 1449 margin-top: 0 !important; 1450 padding-top: 40px; 1451 } 1452 1453 .blurred-background-feed .gh-container-inner { 1454 overflow: visible; 1455 } 1456 1457 /* Gesperrte Deals bleiben erkennbar, wirken aber bewusst unleserlich. */ 1458 .blurred-background-feed .gh-feed { 1459 overflow: visible; 1460 filter: blur(2.5px); 1461 transform: translateZ(0); 1462 transform-origin: center top; 1463 } 1464 1465 .blurred-background-feed .gh-more { 1466 display: none !important; 1467 } 1468 1469 /* Gesperrte Archive zeigen maximal 6 vollstaendige Deals auf Desktop. */ 1470 @media (min-width: 601px) { 1471 .blurred-background-feed .gh-feed > .gh-card:nth-child(n+7) { 1472 display: none !important; 1473 } 1474 } 1475 1476 /* Auf Smartphones werden maximal 3 vollstaendige Deals gezeigt. */ 1477 @media (max-width: 600px) { 1478 .blurred-background-feed .gh-feed > .gh-card:nth-child(n+4) { 1479 display: none !important; 1480 } 1481 } 1482 1483 .blurred-background-feed a, 1484 .blurred-background-feed button { 1485 pointer-events: none !important; 1486 } 1487 1488 /* 1489 * Gleichmaessiger Overlay ueber dem gesamten gesperrten Deal-Bereich. 1490 * Titel und SEO-Einleitung oberhalb bleiben voll sichtbar. 1491 */ 1492 .paywall-overlay { 1493 position: absolute; 1494 inset: 0; 1495 z-index: 10; 1496 display: flex; 1497 align-items: flex-start; 1498 justify-content: center; 1499 padding: 92px max(4vmin, 20px) 0; 1500 background: rgba(21, 23, 26, 0.62); 1501 } 1502 1503 .paywall-box { 1504 position: relative; 1505 z-index: 2; 1506 background: #fff; 1507 padding: 56px 40px 40px; 1508 max-width: 600px; 1509 width: 90%; 1510 text-align: center; 1511 border-radius: 12px; 1512 box-shadow: 0 16px 54px rgba(0,0,0,0.24); 1513 border: 1px solid rgba(0,0,0,0.08); 1514 } 1515 1516 .paywall-box h2 { 1517 font-size: 2rem; 1518 margin-bottom: 20px; 1519 line-height: 1.3; 1520 } 1521 1522 .paywall-box p { 1523 font-size: 16px; 1524 line-height: 1.5; 1525 margin-bottom: 25px; 1526 } 1527 1528 .paywall-benefits { 1529 text-align: left; 1530 display: inline-block; 1531 margin-bottom: 30px; 1532 list-style: none; 1533 padding: 0; 1534 } 1535 1536 .paywall-benefits li { 1537 margin-bottom: 10px; 1538 font-size: 16px; 1539 font-weight: bold; 1540 } 1541 1542 .cta-button { 1543 display: inline-flex; 1544 align-items: center; 1545 justify-content: center; 1546 gap: 0.4em; 1547 min-width: 300px; 1548 color: #fff !important; 1549 font-weight: 600; 1550 padding: 0.95em 1.6em; 1551 border-radius: 100px; 1552 text-decoration: none; 1553 font-size: 1.6rem; 1554 line-height: 1; 1555 transition: transform 0.2s, opacity 0.2s; 1556 } 1557 1558 .cta-button:hover { 1559 transform: scale(1.02); 1560 } 1561 1562 .login-link { 1563 margin-top: 20px !important; 1564 font-size: 1.5rem !important; 1565 color: #666; 1566 } 1567 1568 .login-link a { 1569 color: #333; 1570 text-decoration: underline; 1571 font-weight: 600; 1572 } 1573 1574 @media (max-width: 600px) { 1575 .locked-archive-container { 1576 margin-bottom: 70px; 1577 } 1578 1579 .blurred-background-feed .gh-container { 1580 padding-top: 28px; 1581 width: calc(100% - max(8vmin, 40px)); 1582 margin-inline: auto !important; 1583 } 1584 1585 .paywall-overlay { 1586 align-items: flex-start; 1587 padding: 170px 20px 0; 1588 background: rgba(21, 23, 26, 0.62); 1589 } 1590 1591 .paywall-box { 1592 padding: 48px 25px 25px; 1593 width: 100%; 1594 max-width: 600px; 1595 box-shadow: 0 14px 42px rgba(0,0,0,0.24); 1596 } 1597 1598 .cta-button { 1599 width: 100%; 1600 min-width: 0; 1601 } 1602 } 1603 </style> 1604 1605 1606</main> 1607 1608 <footer class="gh-footer gh-outer"> 1609 <div class="gh-footer-inner gh-inner"> 1610 1611 <section class="gh-footer-signup"> 1612 <h2 class="gh-footer-signup-header is-title"> 1613 Kein günstiges Traumhaus mehr verpassen? 1614 </h2> 1615 <p class="gh-footer-signup-subhead is-body">
1616 Erhalte unsere 12 besten Deals jeden Sonntag direkt in dein Postfach. 1617 </p> 1618 <form class="gh-form" data-members-form> 1619 <input class="gh-form-input" id="footer-email" name="email" type="email" placeholder="[email protected]" required data-members-email> 1620 <button class="gh-button" type="submit" aria-label="Premium"> 1621 <span><span>Kostenfrei anmelden</span> <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" viewBox="0 0 256 256"><path d="M224.49,136.49l-72,72a12,12,0,0,1-17-17L187,140H40a12,12,0,0,1,0-24H187L135.51,64.48a12,12,0,0,1,17-17l72,72A12,12,0,0,1,224.49,136.49Z"></path></svg></span> 1622 <svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24"> 1623 <g stroke-linecap="round" stroke-width="2" fill="currentColor" stroke="none" stroke-linejoin="round" class="nc-icon-wrapper"> 1624 <g class="nc-loop-dots-4-24-icon-o"> 1625 <circle cx="4" cy="12" r="3"></circle> 1626 <circle cx="12" cy="12" r="3"></circle> 1627 <circle cx="20" cy="12" r="3"></circle> 1628 </g> 1629 <style data-cap="butt"> 1630 .nc-loop-dots-4-24-icon-o{--animation-duration:0.8s} 1631 .nc-loop-dots-4-24-icon-o *{opacity:.4;transform:scale(.75);animation:nc-loop-dots-4-anim var(--animation-duration) infinite} 1632 .nc-loop-dots-4-24-icon-o :nth-child(1){transform-origin:4px 12px;animation-delay:-.3s;animation-delay:calc(var(--animation-duration)/-2.666)} 1633 .nc-loop-dots-4-24-icon-o :nth-child(2){transform-origin:12px 12px;animation-delay:-.15s;animation-delay:calc(var(--animation-duration)/-5.333)} 1634 .nc-loop-dots-4-24-icon-o :nth-child(3){transform-origin:20px 12px} 1635 @keyframes nc-loop-dots-4-anim{0%,100%{opacity:.4;transform:scale(.75)}50%{opacity:1;transform:scale(1)}} 1636 </style> 1637 </g> 1638</svg> <span>E-Mail gesendet</span> 1639 </button> 1640 <p data-members-error></p> 1641 1642 <div class="gh-form-success-message"> 1643 <strong>Fast geschafft!</strong> â <br> 1644 Wir haben dir eine Bestätigungsmail gesendet. Bitte schau jetzt in dein Postfach (auch im Spam-Ordner) und bestätige deine Anmeldung innerhalb von 24 Stunden. 1645 </div> 1646</form> 1647 </section> 1648 1649 <div class="gh-social-links"> 1650 <a href="https://www.facebook.com/casadeals.de" target="_blank" rel="noopener" aria-label="Facebook"> 1651<svg class="icon" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path d="M23.9981 11.9991C23.9981 5.37216 18.626 0 11.9991 0C5.37216 0 0 5.37216 0 11.9991C0 17.9882 4.38789 22.9522 10.1242 23.8524V15.4676H7.07758V11.9991H10.1242V9.35553C10.1242 6.34826 11.9156 4.68714 14.6564 4.68714C15.9692 4.68714 17.3424 4.92149 17.3424 4.92149V7.87439H15.8294C14.3388 7.87439 13.8739 8.79933 13.8739 9.74824V11.9991H17.2018L16.6698 15.4676H13.8739V23.8524C19.6103 22.9522 23.9981 17.9882 23.9981 11.9991Z"/></svg> </a> 1652 <a href="https://www.tiktok.com/@casadeals_de" target="_blank" rel="noopener" aria-label="TikTok"> 1653<svg class="icon" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1654 <path d="M10.1891 8.937V13.059C9.66997 12.9221 9.12673 12.9034 8.59942 13.0044C8.07212 13.1054 7.57419 13.3234 7.14234 13.6424C6.7105 13.9613 6.35575 14.3732 6.10423 14.8475C5.85272 15.3218 5.71085 15.8466 5.6891 16.383C5.65937 16.8449 5.72887 17.3078 5.89293 17.7405C6.057 18.1733 6.31182 18.5659 6.64027 18.892C6.96872 19.2181 7.36318 19.4701 7.79713 19.631C8.23108 19.7919 8.69446 19.8581 9.1561 19.825C9.62242 19.8608 10.0909 19.7949 10.5293 19.6319C10.9677 19.4689 11.3654 19.2126 11.6951 18.8809C12.0247 18.5491 12.2784 18.1498 12.4387 17.7104C12.5989 17.271 12.6618 16.8021 12.6231 16.336V0H16.7001C17.3931 4.315 19.5511 5.316 22.4401 5.778V9.913C20.438 9.74881 18.5067 9.09645 16.8151 8.013V16.18C16.8151 19.88 14.6251 24 9.1881 24C8.16806 23.9955 7.15918 23.7875 6.22058 23.3881C5.28199 22.9886 4.43258 22.4059 3.72213 21.6739C3.01168 20.942 2.4545 20.0755 2.08325 19.1254C1.712 18.1754 1.53414 17.1607 1.5601 16.141C1.59241 15.0794 1.84936 14.0366 2.31401 13.0815C2.77866 12.1265 3.44047 11.2807 4.2558 10.6C5.07114 9.9193 6.02148 9.41915 7.0442 9.1325C8.06691 8.84586 9.13876 8.77923 10.1891 8.937Z" fill="currentColor"/> 1655</svg> </a> 1656 <a href="https://www.youtube.com/@CasaDeals_de" target="_blank" rel="noopener" aria-label="YouTube">
1657<svg class="icon" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1658 <path fill-rule="evenodd" clip-rule="evenodd" d="M21.3763 2.59736C22.4096 2.92662 23.2216 3.89324 23.4982 5.12324C23.9979 7.35042 24 12 24 12C24 12 24 16.6496 23.4982 18.8768C23.2216 20.1068 22.4096 21.0734 21.3763 21.4026C19.5055 22 12 22 12 22C12 22 4.49456 22 2.62363 21.4026C1.59039 21.0734 0.7784 20.1068 0.501806 18.8768C0 16.6496 0 12 0 12C0 12 0 7.35042 0.501806 5.12324C0.7784 3.89324 1.59039 2.92662 2.62363 2.59736C4.49456 2 12 2 12 2C12 2 19.5055 2 21.3763 2.59736ZM16.0153 12.0004L9.48326 15.8822V8.11841L16.0153 12.0004Z" fill="currentColor"/> 1659</svg> </a> 1660 <a href="https://www.instagram.com/casadeals_de" target="_blank" rel="noopener" aria-label="Instagram"> 1661<svg class="icon" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1662 <path d="M12 2.982C14.937 2.982 15.285 2.993 16.445 3.046C17.1424 3.05412 17.8331 3.18233 18.487 3.425C18.965 3.60111 19.3973 3.88237 19.752 4.248C20.1176 4.60269 20.3989 5.035 20.575 5.513C20.8177 6.16685 20.9459 6.85762 20.954 7.555C21.007 8.715 21.018 9.063 21.018 12C21.018 14.937 21.007 15.285 20.954 16.445C20.9459 17.1424 20.8177 17.8331 20.575 18.487C20.3919 18.9615 20.1116 19.3924 19.752 19.752C19.3924 20.1116 18.9615 20.3919 18.487 20.575C17.8331 20.8177 17.1424 20.9459 16.445 20.954C15.285 21.007 14.937 21.018 12 21.018C9.063 21.018 8.715 21.007 7.555 20.954C6.85762 20.9459 6.16685 20.8177 5.513 20.575C5.035 20.3989 4.60269 20.1176 4.248 19.752C3.88237 19.3973 3.60111 18.965 3.425 18.487C3.18233 17.8331 3.05412 17.1424 3.046 16.445C2.993 15.285 2.982 14.937 2.982 12C2.982 9.063 2.993 8.715 3.046 7.555C3.05412 6.85762 3.18233 6.16685 3.425 5.513C3.60111 5.035 3.88237 4.60269 4.248 4.248C4.60269 3.88237 5.035 3.60111 5.513 3.425C6.16685 3.18233 6.85762 3.05412 7.555 3.046C8.715 2.993 9.063 2.982 12 2.982ZM12 1C9.013 1 8.638 1.013 7.465 1.066C6.55258 1.08486 5.6499 1.25762 4.795 1.577C4.06355 1.86017 3.3994 2.29319 2.84521 2.84824C2.29102 3.40329 1.85904 4.06811 1.577 4.8C1.25762 5.6549 1.08486 6.55758 1.066 7.47C1.013 8.638 1 9.013 1 12C1 14.987 1.013 15.362 1.066 16.535C1.08486 17.4474 1.25762 18.3501 1.577 19.205C1.86017 19.9365 2.29319 20.6006 2.84824 21.1548C3.40329 21.709 4.06811 22.141 4.8 22.423C5.6549 22.7424 6.55758 22.9151 7.47 22.934C8.638 22.987 9.013 23 12 23C14.987 23 15.362 22.987 16.535 22.934C17.4474 22.9151 18.3501 22.7424 19.205 22.423C19.9365 22.1398 20.6006 21.7068 21.1548 21.1518C21.709 20.5967 22.141 19.9319 22.423 19.2C22.7424 18.3451 22.9151 17.4424 22.934 16.53C22.987 15.362 23 14.987 23 12C23 9.013 22.987 8.638 22.934 7.465C22.9151 6.55258 22.7424 5.6499 22.423 4.795C22.1398 4.06355 21.7068 3.3994 21.1518 2.84521C20.5967 2.29102 19.9319 1.85904 19.2 1.577C18.3451 1.25762 17.4424 1.08486 16.53 1.066C15.362 1.013 14.987 1 12 1Z" fill="currentColor"/> 1663 <path d="M11.9996 6.35107C10.8823 6.35107 9.79015 6.68238 8.86117 7.3031C7.9322 7.92382 7.20815 8.80608 6.78059 9.8383C6.35303 10.8705 6.24116 12.0063 6.45913 13.1021C6.6771 14.1979 7.21512 15.2045 8.00514 15.9945C8.79517 16.7845 9.80172 17.3226 10.8975 17.5405C11.9933 17.7585 13.1291 17.6466 14.1614 17.2191C15.1936 16.7915 16.0758 16.0675 16.6966 15.1385C17.3173 14.2095 17.6486 13.1173 17.6486 12.0001C17.6486 10.5019 17.0534 9.06502 15.994 8.00563C14.9346 6.94624 13.4978 6.35107 11.9996 6.35107ZM11.9996 15.6671C11.2743 15.6671 10.5653 15.452 9.96231 15.0491C9.35928 14.6461 8.88927 14.0734 8.61172 13.4034C8.33418 12.7333 8.26156 11.996 8.40305 11.2847C8.54454 10.5734 8.89379 9.91995 9.40663 9.40711C9.91947 8.89427 10.5729 8.54503 11.2842 8.40353C11.9955 8.26204 12.7328 8.33466 13.4029 8.61221C14.0729 8.88975 14.6457 9.35976 15.0486 9.9628C15.4515 10.5658 15.6666 11.2748 15.6666 12.0001C15.6666 12.9726 15.2802 13.9053 14.5925 14.593C13.9049 15.2807 12.9721 15.6671 11.9996 15.6671Z" fill="currentColor"/> 1664 <path d="M17.8718 7.44811C18.6008 7.44811 19.1918 6.85712 19.1918 6.12811C19.1918 5.39909 18.6008 4.80811 17.8718 4.80811C17.1427 4.80811 16.5518 5.39909 16.5518 6.12811C16.5518 6.85712 17.1427 7.44811 17.8718 7.44811Z" fill="currentColor"/> 1665</svg> 1666 </a> 1667 </div> 1668 1669 <div class="gh-footer-bar">
1670 <span class="gh-footer-logo is-title"> 1671 <img src="https://storage.ghost.io/c/34/61/3461f65d-ced8-4975-b755-c10a96d5157a/content/images/2025/12/CasaDeals-Logo-1.png" alt="CasaDeals"> 1672 </span> 1673 <nav class="gh-footer-menu"> 1674 <ul class="nav"> 1675 <li class="nav-anzeige-schalten"><a href="https://www.casadeals.de/anzeige-schalten/">Anzeige schalten</a></li> 1676 <li class="nav-baufinanzierungsrechner"><a href="https://www.casadeals.de/baufinanzierungsrechner/">Baufinanzierungsrechner</a></li> 1677 <li class="nav-vertrag-widerrufen"><a href="https://tally.so/r/2EVekg">Vertrag widerrufen</a></li> 1678 <li class="nav-impressum"><a href="https://www.casadeals.de/impressum/">Impressum</a></li> 1679 <li class="nav-agb"><a href="https://www.casadeals.de/agb/">AGB</a></li> 1680 <li class="nav-datenschutz"><a href="https://www.casadeals.de/datenschutz/">Datenschutz</a></li> 1681 <li class="nav-traumhaus-finder"><a href="https://tally.so/r/VL5exJ">Traumhaus-Finder</a></li> 1682</ul> 1683 1684 </nav> 1685 <div class="gh-footer-copyright"> 1686 Erstellt mit <a href="https://ghost.org/" target="_blank" rel="noopener">Ghost</a> 1687 </div> 1688 </div> 1689 1690 </div> 1691</footer> 1692 1693</div> 1694 1695 <div class="pswp" tabindex="-1" role="dialog" aria-hidden="true"> 1696 <div class="pswp__bg"></div> 1697 1698 <div class="pswp__scroll-wrap"> 1699 <div class="pswp__container"> 1700 <div class="pswp__item"></div> 1701 <div class="pswp__item"></div> 1702 <div class="pswp__item"></div> 1703 </div> 1704 1705 <div class="pswp__ui pswp__ui--hidden"> 1706 <div class="pswp__top-bar"> 1707 <div class="pswp__counter"></div> 1708 1709 <button class="pswp__button pswp__button--close" title="SchlieÃen (Esc)"></button> 1710 <button class="pswp__button pswp__button--share" title="Teilen"></button> 1711 <button class="pswp__button pswp__button--fs" title="Vollbild"></button> 1712 <button class="pswp__button pswp__button--zoom" title="VergröÃern/Verkleinern"></button> 1713 1714 <div class="pswp__preloader"> 1715 <div class="pswp__preloader__icn"> 1716 <div class="pswp__preloader__cut"> 1717 <div class="pswp__preloader__donut"></div> 1718 </div> 1719 </div> 1720 </div> 1721 </div> 1722 1723 <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap"> 1724 <div class="pswp__share-tooltip"></div> 1725 </div> 1726 1727 <button class="pswp__button pswp__button--arrow--left" title="Vorheriges (Pfeiltaste links)"></button> 1728 <button class="pswp__button pswp__button--arrow--right" title="Nächstes (Pfeiltaste rechts)"></button> 1729 1730 <div class="pswp__caption"> 1731 <div class="pswp__caption__center"></div> 1732 </div> 1733 </div> 1734 </div> 1735</div>
1736<script src="https://www.casadeals.de/assets/built/source.js?v=TS2MNRuFEW7yH7kJ"></script>
1736 1737
1738<script> 1739 window.CASADEALS_BOOKMARKS = { 1740 endpoint: "https://kdhpjlcjrkpmtbpfajwt.supabase.co/functions/v1/bookmarks", 1741 publishableKey: "sb_publishable_HX8T3dsuZnJINgA1iP2X8Q_e0V2JifA" 1742 }; 1743</script>
vendor: 1 bytes, line 1743
1743
1744<script defer src="https://www.casadeals.de/assets/js/bookmarks.js?v=cLPPxKKw2dk90KYW"></script>
1744 1745 1746<span id="cd-member-data" data-total-members="24,000+" hidden></span>
1747<script> 1748 (function () { 1749 var source = document.getElementById('cd-member-data'); 1750 if (!source) return; 1751 1752 var totalMembers = source.getAttribute('data-total-members').replace(/,/g, '.'); 1753 var totalMembersWithoutPlus = totalMembers.replace(/\+$/, ''); 1754 var walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT); 1755 var node; 1756 1757 while ((node = walker.nextNode())) { 1758 if (node.parentElement && node.parentElement.closest('script, style, noscript, textarea')) continue; 1759 if (node.nodeValue.indexOf('[MITGLIEDERZAHL') === -1) continue; 1760 1761 node.nodeValue = node.nodeValue 1762 .replace(/\[MITGLIEDERZAHL\+\]/g, totalMembers) 1763 .replace(/\[MITGLIEDERZAHL\]/g, totalMembersWithoutPlus); 1764 } 1765 }()); 1766</script>
1766 1767 1768
1768<script> 1769 (function () { 1770 function resizeLockedArchives() { 1771 document.querySelectorAll('.locked-archive-container').forEach(function (container) { 1772 var feedWrap = container.querySelector('.blurred-background-feed'); 1773 var feed = feedWrap && feedWrap.querySelector('.gh-feed'); 1774 var overlay = container.querySelector('.paywall-overlay'); 1775 var paywallBox = container.querySelector('.paywall-box'); 1776 1777 if (!feedWrap || !feed) return; 1778 1779 var mobile = window.matchMedia('(max-width: 600px)').matches; 1780 1781 /* CSS limits the teaser to 6 desktop / 3 mobile deals. */ 1782 feedWrap.style.height = 'auto'; 1783 container.style.height = 'auto'; 1784 1785 var visibleCards = Array.from(feed.children).filter(function (el) { 1786 return el.classList && 1787 el.classList.contains('gh-card') && 1788 window.getComputedStyle(el).display !== 'none'; 1789 }); 1790 1791 if (!visibleCards.length) return; 1792 1793 /* Use the complete height of the visible teaser cards: no cropping. */ 1794 var feedHeight = Math.ceil(feedWrap.scrollHeight); 1795 var finalHeight = feedHeight; 1796 1797 /* Small regions still need enough room for the complete paywall card. */ 1798 if (overlay && paywallBox) { 1799 var overlayStyle = window.getComputedStyle(overlay); 1800 var overlayTop = parseFloat(overlayStyle.paddingTop) || (mobile ? 170 : 92); 1801 var boxHeight = paywallBox.getBoundingClientRect().height; 1802 var bottomGap = mobile ? 30 : 40; 1803 finalHeight = Math.max(finalHeight, Math.ceil(overlayTop + boxHeight + bottomGap)); 1804 } 1805 1806 container.style.height = finalHeight + 'px'; 1807 }); 1808 } 1809 1810 var resizeTimer; 1811 function scheduleResize() { 1812 window.clearTimeout(resizeTimer); 1813 resizeTimer = window.setTimeout(resizeLockedArchives, 80); 1814 } 1815 1816 if (document.readyState === 'loading') { 1817 document.addEventListener('DOMContentLoaded', resizeLockedArchives); 1818 } else { 1819 resizeLockedArchives(); 1820 } 1821 window.addEventListener('load', resizeLockedArchives); 1822 window.addEventListener('resize', scheduleResize); 1823 1824 if ('ResizeObserver' in window) { 1825 document.querySelectorAll('.locked-archive-container .gh-feed').forEach(function (feed) { 1826 new ResizeObserver(scheduleResize).observe(feed); 1827 }); 1828 } 1829 })(); 1830 </script>
1830 1831
1832<script> 1833(function () { 1834 var MONTHLY_PRICE = 9; 1835 var ANNUAL_PRICE = 48; 1836 var MONTHLY_EQUIVALENT = ANNUAL_PRICE / 12; 1837 var DISCOUNT_PERCENT = Math.round((1 - (ANNUAL_PRICE / (MONTHLY_PRICE * 12))) * 100); 1838 var PRIMARY_COLOR = '#f05a00'; 1839 1840 function formatPrice(value) { 1841 return value % 1 === 0 1842 ? String(value.toFixed(0)) 1843 : String(value.toFixed(2)).replace('.', ',').replace(/,?0+$/, ''); 1844 } 1845 1846 function norm(value) { 1847 return String(value || '').replace(/\u00a0/g, ' ').replace(/\s+/g, ' ').trim(); 1848 } 1849 1850 function ensureStyles(doc) { 1851 if (!doc || doc.getElementById('casadeals-account-pricing-style')) return; 1852 1853 var style = doc.createElement('style'); 1854 style.id = 'casadeals-account-pricing-style'; 1855 style.textContent = ` 1856 .casadeals-yearly-active .gh-portal-product-price .currency-sign, 1857 .casadeals-yearly-active .currency-sign, 1858 .casadeals-monthly-active .gh-portal-product-price .currency-sign, 1859 .casadeals-monthly-active .currency-sign { 1860 display: none !important; 1861 } 1862 1863 .casadeals-yearly-active .gh-portal-product-price .amount::after, 1864 .casadeals-yearly-active .amount::after, 1865 .casadeals-monthly-active .gh-portal-product-price .amount::after, 1866 .casadeals-monthly-active .amount::after { 1867 content: " â¬"; 1868 } 1869 1870 .casadeals-yearly-active .billing-period { 1871 margin-left: 7px !important; 1872 white-space: nowrap !important; 1873 } 1874 1875 .casadeals-annual-billing { 1876 margin-top: 3px; 1877 color: #626d79; 1878 font-size: 13px; 1879 line-height: 1.3; 1880 } 1881 1882 .casadeals-recommended-card { 1883 position: relative !important; 1884 overflow: visible !important; 1885 border: 2px solid ${PRIMARY_COLOR} !important; 1886 } 1887 1888 .casadeals-recommended-badge { 1889 position: absolute; 1890 top: 0; 1891 left: 50%; 1892 z-index: 20; 1893 transform: translate(-50%, -50%); 1894 display: inline-flex; 1895 align-items: center; 1896 justify-content: center; 1897 padding: 5px 14px; 1898 border-radius: 999px; 1899 background: ${PRIMARY_COLOR}; 1900 color: #fff; 1901 font-size: 12px; 1902 font-weight: 600; 1903 line-height: 1; 1904 white-space: nowrap; 1905 } 1906 1907 /* Im ausgeloggten Signup soll "Empfohlen" nur beim Jahresabo erscheinen. 1908 Rein CSS-basiert: kein DOM-Loeschen, kein Observer-Ping-Pong mit Ghost. */ 1909 .gh-portal-content.signup:has([data-testid="monthly-switch"].active) .casadeals-recommended-badge, 1910 .gh-portal-content.signup:has([data-testid="monthly-switch"][aria-selected="true"]) .casadeals-recommended-badge, 1911 .gh-portal-content.signup:has([data-testid="monthly-switch"][aria-checked="true"]) .casadeals-recommended-badge, 1912 .gh-portal-content.signup:has([data-testid="monthly-switch"][data-state="active"]) .casadeals-recommended-badge, 1913 .gh-portal-content.signup:has([data-testid="monthly-switch"][data-state="checked"]) .casadeals-recommended-badge, 1914 .gh-portal-content.signup:has([data-testid="monthly-switch"][data-selected="true"]) .casadeals-recommended-badge, 1915 .gh-portal-content.signup:has([data-testid="monthly-switch"]:checked) .casadeals-recommended-badge { 1916 display: none !important; 1917 } 1918 1919 /* Ausgeloggter Signup: Monatsabo im normalen Ghost-Look. 1920 Kein Empfehlungs-Rahmen, sondern ein dezenter grauer Standard-Rahmen. */ 1921 .gh-portal-content.signup:has([data-testid="monthly-switch"].active) .casadeals-recommended-card, 1922 .gh-portal-content.signup:has([data-testid="monthly-switch"][aria-selected="true"]) .casadeals-recommended-card, 1923 .gh-portal-content.signup:has([data-testid="monthly-switch"][aria-checked="true"]) .casadeals-recommended-card, 1924 .gh-portal-content.signup:has([data-testid="monthly-switch"][data-state="active"]) .casadeals-recommended-card, 1925 .gh-portal-content.signup:has([data-testid="monthly-switch"][data-state="checked"]) .casadeals-recommended-card, 1926 .gh-portal-content.signup:has([data-testid="monthly-switch"][data-selected="true"]) .casadeals-recommended-card, 1927 .gh-portal-content.signup:has([data-testid="monthly-switch"]:checked) .casadeals-recommended-card { 1928 border: 1px solid #d9dee3 !important; 1929 } 1930 1931 .gh-portal-product-card-price-trial > .gh-portal-discount-label { 1932 color: #228f22 !important; 1933 background-color: #e9f8f3 !important; 1934 } 1935 1936 .gh-portal-product-card-price-trial > .gh-portal-discount-label::before { 1937 display: none !important; 1938 } 1939 `; 1940 (doc.head || doc.documentElement).appendChild(style); 1941 } 1942 1943 function isSignupView(doc) { 1944 return !!doc.querySelector('.gh-portal-content.signup'); 1945 } 1946 1947 function findYearlySwitch(doc) { 1948 return doc.querySelector('[data-testid="yearly-switch"]') 1949 || Array.from(doc.querySelectorAll('button, [role="button"], [role="tab"]')).find(function (el) { 1950 return /^Jährlich(?:\s|\(|$)|^Yearly(?:\s|\(|$)/i.test(norm(el.innerText || el.textContent)); 1951 }); 1952 } 1953 1954 function findMonthlySwitch(doc) { 1955 return doc.querySelector('[data-testid="monthly-switch"]') 1956 || Array.from(doc.querySelectorAll('button, [role="button"], [role="tab"]')).find(function (el) { 1957 return /^Monatlich(?:\s|$)|^Monthly(?:\s|$)/i.test(norm(el.innerText || el.textContent)); 1958 }); 1959 } 1960 1961 function switchIsActive(el) { 1962 if (!el) return false;
1963 if (el.classList && el.classList.contains('active')) return true; 1964 if (el.getAttribute('aria-selected') === 'true') return true; 1965 if (el.getAttribute('aria-checked') === 'true') return true; 1966 if (el.getAttribute('data-state') === 'active') return true; 1967 if (el.getAttribute('data-state') === 'checked') return true; 1968 if (el.getAttribute('data-selected') === 'true') return true; 1969 return false; 1970 } 1971 1972 function isYearlyActive(doc) { 1973 var yearly = findYearlySwitch(doc); 1974 var monthly = findMonthlySwitch(doc); 1975 1976 if (switchIsActive(yearly)) return true; 1977 if (switchIsActive(monthly)) return false; 1978 1979 /* Fallback für Portal-Versionen ohne Active-Klasse: die aktuell gerenderte 1980 Jahreskarte zeigt nativ 48 â¬/Jahr. */ 1981 var root = doc.querySelector('.gh-portal-content') || doc.body; 1982 var txt = norm(root && (root.innerText || root.textContent)); 1983 return /(?:â¬\s*48|48\s*â¬).*?(?:\/\s*Jahr|\/\s*year|Jahr|jährlich|year|annual)/i.test(txt); 1984 } 1985 1986 function setText(el, value) { 1987 if (el && norm(el.textContent) !== norm(value)) { 1988 el.textContent = value; 1989 } 1990 } 1991 1992 function findPaidCards(doc) { 1993 var cards = Array.from(doc.querySelectorAll('[data-test-tier="paid"]')); 1994 if (cards.length) return cards; 1995 1996 return Array.from(doc.querySelectorAll('.gh-portal-product-card, [class*="product-card"]')).filter(function (card) { 1997 return /Premium/i.test(norm(card.innerText || card.textContent)); 1998 }); 1999 } 2000 2001 function findAmount(card) { 2002 return card.querySelector('.gh-portal-product-price .amount, .amount'); 2003 } 2004 2005 function findPeriod(card) { 2006 return card.querySelector('.gh-portal-product-price .billing-period, .billing-period'); 2007 } 2008 2009 function findPriceRow(card) { 2010 return card.querySelector('.gh-portal-product-card-price-trial') 2011 || card.querySelector('.gh-portal-product-price') 2012 || (findAmount(card) && findAmount(card).parentElement); 2013 } 2014 2015 function updateDiscountText(card, yearlyActive) { 2016 var labels = Array.from(card.querySelectorAll('.gh-portal-discount-label-trial, .gh-portal-discount-label, [class*="discount"]')); 2017 2018 labels.forEach(function (label) { 2019 var text = norm(label.innerText || label.textContent); 2020 2021 /* Trial-Badge nicht als Ersparnistext behandeln. */ 2022 if (/7\s*Tage|7\s*days|kostenfrei|free/i.test(text)) return; 2023 2024 if (!label.hasAttribute('data-casadeals-original-discount')) { 2025 label.setAttribute('data-casadeals-original-discount', label.textContent || ''); 2026 } 2027 2028 if (yearlyActive && /%/.test(text) && /(rabatt|spar|save|discount)/i.test(text)) { 2029 setText(label, 'Du sparst ' + DISCOUNT_PERCENT + ' % gegenüber der monatlichen Zahlung'); 2030 label.style.color = PRIMARY_COLOR; 2031 label.style.fontWeight = '600'; 2032 } else if (!yearlyActive && label.hasAttribute('data-casadeals-original-discount')) { 2033 label.textContent = label.getAttribute('data-casadeals-original-discount'); 2034 label.style.color = ''; 2035 label.style.fontWeight = ''; 2036 } 2037 }); 2038 } 2039 2040 function addRecommended(card) { 2041 if (card.querySelector('.casadeals-recommended-badge')) return; 2042 var badge = card.ownerDocument.createElement('span'); 2043 badge.className = 'casadeals-recommended-badge'; 2044 badge.textContent = 'Empfohlen'; 2045 card.appendChild(badge); 2046 } 2047 2048 function removeRecommended(card) { 2049 var badge = card.querySelector('.casadeals-recommended-badge'); 2050 if (badge) badge.remove(); 2051 } 2052 2053 function addAnnualBilling(card) { 2054 var note = card.querySelector('.casadeals-annual-billing'); 2055 if (!note) { 2056 note = card.ownerDocument.createElement('div'); 2057 note.className = 'casadeals-annual-billing'; 2058 note.textContent = ANNUAL_PRICE + ' ⬠jährlich abgerechnet'; 2059 2060 var row = findPriceRow(card); 2061 if (row && row.parentNode) { 2062 row.insertAdjacentElement('afterend', note); 2063 } 2064 } 2065 } 2066 2067 function removeAnnualBilling(card) { 2068 var note = card.querySelector('.casadeals-annual-billing'); 2069 if (note) note.remove(); 2070 } 2071 2072 function updatePaidCard(card, yearlyActive) { 2073 var amount = findAmount(card); 2074 var period = findPeriod(card); 2075 if (!amount || !period) return; 2076 2077 if (yearlyActive) { 2078 card.classList.remove('casadeals-monthly-active'); 2079 card.classList.add('casadeals-yearly-active', 'casadeals-recommended-card'); 2080 setText(amount, formatPrice(MONTHLY_EQUIVALENT)); 2081 setText(period, '/ Monat'); 2082 addAnnualBilling(card); 2083 updateDiscountText(card, true); 2084 addRecommended(card); 2085 } else { 2086 card.classList.remove('casadeals-yearly-active', 'casadeals-recommended-card'); 2087 card.classList.add('casadeals-monthly-active'); 2088 setText(amount, formatPrice(MONTHLY_PRICE)); 2089 setText(period, '/ Monat'); 2090 removeAnnualBilling(card); 2091 updateDiscountText(card, false); 2092 removeRecommended(card); 2093 } 2094 } 2095 2096 function updatePortal(doc) { 2097 if (!doc || !doc.documentElement) return; 2098 ensureStyles(doc); 2099 2100 var content = doc.querySelector('.gh-portal-content'); 2101 if (!content) return; 2102 2103 /* Das bereits funktionierende ausgeloggte Signup wird absichtlich nicht 2104 doppelt angefasst. Diese Erweiterung gilt nur für Account > Tarife ansehen. */ 2105 if (isSignupView(doc)) return; 2106 2107 var text = norm(content.innerText || content.textContent); 2108 var yearlySwitch = findYearlySwitch(doc); 2109 var cards = findPaidCards(doc); 2110 2111 if (!cards.length) return; 2112 if (!yearlySwitch && !/(Tarif wählen|Tarif ändern|Choose a plan|Choose plan|Change plan|View plans)/i.test(text)) return; 2113 2114 var yearlyActive = isYearlyActive(doc); 2115 cards.forEach(function (card) { 2116 updatePaidCard(card, yearlyActive); 2117 }); 2118 } 2119
2120 function bindPortalFrame(frame) { 2121 if (!frame || frame.dataset.casadealsPricingBound === '1') return; 2122 frame.dataset.casadealsPricingBound = '1'; 2123 2124 function attach() { 2125 var doc; 2126 try { 2127 doc = frame.contentDocument || (frame.contentWindow && frame.contentWindow.document); 2128 } catch (e) { 2129 return; 2130 } 2131 if (!doc || !doc.documentElement) return; 2132 2133 if (!doc.documentElement.dataset.casadealsAccountPricingObserved) { 2134 doc.documentElement.dataset.casadealsAccountPricingObserved = '1'; 2135 2136 var timer; 2137 var schedule = function () { 2138 clearTimeout(timer); 2139 timer = setTimeout(function () { updatePortal(doc); }, 25); 2140 }; 2141 2142 new MutationObserver(schedule).observe(doc.documentElement, { 2143 childList: true, 2144 subtree: true 2145 }); 2146 2147 doc.addEventListener('click', function () { 2148 setTimeout(function () { updatePortal(doc); }, 20); 2149 setTimeout(function () { updatePortal(doc); }, 120); 2150 }, true); 2151 } 2152 2153 updatePortal(doc); 2154 } 2155 2156 frame.addEventListener('load', attach); 2157 attach(); 2158 } 2159 2160 function scanFrames(root) { 2161 var scope = root && root.querySelectorAll ? root : document; 2162 Array.from(scope.querySelectorAll('iframe')).forEach(bindPortalFrame); 2163 } 2164 2165 scanFrames(document); 2166 2167 new MutationObserver(function (mutations) { 2168 mutations.forEach(function (mutation) { 2169 Array.from(mutation.addedNodes || []).forEach(function (node) { 2170 if (!node || node.nodeType !== 1) return; 2171 if (node.tagName === 'IFRAME') bindPortalFrame(node); 2172 scanFrames(node); 2173 }); 2174 }); 2175 }).observe(document.documentElement, { 2176 childList: true, 2177 subtree: true 2178 }); 2179})(); 2180</script>
2180 2181 2182
2182<script> 2183(function () { 2184 'use strict'; 2185 2186 var META_SOURCE = 'meta'; 2187 var LABEL_SOURCE = 'Meta Landingpage'; 2188 var PROPAGATED_PARAMS = [ 2189 'utm_source', 2190 'utm_medium', 2191 'utm_campaign', 2192 'utm_term', 2193 'utm_content', 2194 'adset_id', 2195 'placement', 2196 'meta_source' 2197 ]; 2198 2199 function getAttribution() { 2200 var params = new URLSearchParams(window.location.search); 2201 var source = (params.get('utm_source') || '').trim().toLowerCase(); 2202 2203 if (source !== META_SOURCE) return null; 2204 2205 return { 2206 source: META_SOURCE, 2207 medium: (params.get('utm_medium') || '').trim(), 2208 campaignId: (params.get('utm_campaign') || '').trim(), 2209 adsetId: (params.get('adset_id') || params.get('utm_term') || '').trim(), 2210 adId: (params.get('utm_content') || '').trim(), 2211 params: params 2212 }; 2213 } 2214 2215 var attribution = getAttribution(); 2216 if (!attribution) return; 2217 2218 function validMetaId(value) { 2219 return /^\d{5,30}$/.test((value || '').trim()); 2220 } 2221 2222 function ensureLabelInput(form, key, value) { 2223 if (!form || !value) return; 2224 2225 var selector = 'input[data-cd-meta-label="' + key + '"]'; 2226 var input = form.querySelector(selector); 2227 2228 if (!input) { 2229 input = document.createElement('input'); 2230 input.type = 'hidden'; 2231 input.setAttribute('data-members-label', ''); 2232 input.setAttribute('data-cd-meta-label', key); 2233 form.appendChild(input); 2234 } 2235 2236 input.value = value; 2237 } 2238 2239 function applyMetaLabels(form) { 2240 if (!form || !form.matches('form[data-members-form]')) return; 2241 2242 ensureLabelInput(form, 'source', LABEL_SOURCE); 2243 2244 if (validMetaId(attribution.campaignId)) { 2245 ensureLabelInput(form, 'campaign', 'Meta Campaign ' + attribution.campaignId); 2246 } 2247 2248 if (validMetaId(attribution.adsetId)) { 2249 ensureLabelInput(form, 'adset', 'Meta Adset ' + attribution.adsetId); 2250 } 2251 2252 if (validMetaId(attribution.adId)) { 2253 ensureLabelInput(form, 'ad', 'Meta Ad ' + attribution.adId); 2254 } 2255 } 2256 2257 function scanForms(root) { 2258 var scope = root && root.querySelectorAll ? root : document; 2259 2260 if (scope.matches && scope.matches('form[data-members-form]')) { 2261 applyMetaLabels(scope); 2262 } 2263 2264 Array.from(scope.querySelectorAll ? scope.querySelectorAll('form[data-members-form]') : []).forEach(applyMetaLabels); 2265 } 2266 2267 function shouldSkipLink(anchor) { 2268 if (!anchor || !anchor.getAttribute) return true; 2269 if (anchor.hasAttribute('download')) return true; 2270 2271 var rawHref = (anchor.getAttribute('href') || '').trim(); 2272 if (!rawHref) return true; 2273 if (rawHref.charAt(0) === '#') return true; 2274 if (/^(?:mailto:|tel:|sms:|javascript:)/i.test(rawHref)) return true; 2275 2276 return false; 2277 } 2278 2279 function decorateLink(anchor) { 2280 if (shouldSkipLink(anchor)) return; 2281 2282 var url; 2283 try { 2284 url = new URL(anchor.href, window.location.href); 2285 } catch (e) { 2286 return; 2287 } 2288 2289 if (url.origin !== window.location.origin) return; 2290 if (!/^https?:$/.test(url.protocol)) return; 2291 2292 PROPAGATED_PARAMS.forEach(function (key) { 2293 var value = attribution.params.get(key); 2294 if (value && !url.searchParams.has(key)) { 2295 url.searchParams.set(key, value); 2296 } 2297 }); 2298 2299 /* Always normalize the source used by the global attribution guard. */ 2300 url.searchParams.set('utm_source', META_SOURCE); 2301 anchor.href = url.toString(); 2302 } 2303 2304 function scanLinks(root) { 2305 var scope = root && root.querySelectorAll ? root : document; 2306 2307 if (scope.matches && scope.matches('a[href]')) { 2308 decorateLink(scope); 2309 } 2310 2311 Array.from(scope.querySelectorAll ? scope.querySelectorAll('a[href]') : []).forEach(decorateLink); 2312 } 2313 2314 /* Forms and links already present in the rendered theme. */ 2315 scanForms(document); 2316 scanLinks(document); 2317 2318 /* Re-apply immediately before Ghost handles any signup submission. */ 2319 document.addEventListener('submit', function (event) { 2320 var form = event.target; 2321 if (form && form.matches && form.matches('form[data-members-form]')) { 2322 applyMetaLabels(form); 2323 } 2324 }, true); 2325 2326 /* Safety net for links created or changed by frontend behavior. */ 2327 document.addEventListener('click', function (event) { 2328 var target = event.target; 2329 var anchor = target && target.closest ? target.closest('a[href]') : null; 2330 if (anchor) decorateLink(anchor); 2331 }, true); 2332 2333 document.addEventListener('auxclick', function (event) { 2334 var target = event.target; 2335 var anchor = target && target.closest ? target.closest('a[href]') : null; 2336 if (anchor) decorateLink(anchor); 2337 }, true); 2338 2339 /* Cover forms/links inserted after initial rendering. */ 2340 new MutationObserver(function (mutations) { 2341 mutations.forEach(function (mutation) {
2342 Array.from(mutation.addedNodes || []).forEach(function (node) { 2343 if (!node || node.nodeType !== 1) return; 2344 scanForms(node); 2345 scanLinks(node); 2346 }); 2347 }); 2348 }).observe(document.documentElement, { 2349 childList: true, 2350 subtree: true 2351 }); 2352}()); 2353</script>
2353 2354 2355
2355<script> 2356(function () { 2357 'use strict'; 2358 2359 function initExternalLinks() { 2360 // --- EXTERNE LINKS: Neuer Tab + Nofollow --- 2361 const contentLinks = document.querySelectorAll('.gh-content a'); 2362 2363 contentLinks.forEach(function (link) { 2364 if ( 2365 link.hostname && 2366 link.hostname !== window.location.hostname 2367 ) { 2368 link.target = '_blank'; 2369 link.rel = 'nofollow noopener noreferrer'; 2370 } 2371 }); 2372 } 2373 2374 function initPortalCustomizations() { 2375 // --- AKTUELLE PREISE --- 2376 // Bei einer zukünftigen Preisänderung diese Werte anpassen. 2377 const MONTHLY_PRICE = 9; 2378 const ANNUAL_PRICE = 48; 2379 2380 // CasaDeals-Hauptfarbe 2381 const PRIMARY_COLOR = 'var(--brandcolor)'; 2382 2383 const DISCOUNT_PERCENT = Math.round( 2384 (1 - ANNUAL_PRICE / (MONTHLY_PRICE * 12)) * 100 2385 ); 2386 2387 const observedFrames = new WeakSet(); 2388 const observedDocuments = new WeakSet(); 2389 2390 const regularPriceFormatter = new Intl.NumberFormat('de-DE', { 2391 minimumFractionDigits: 0, 2392 maximumFractionDigits: 2 2393 }); 2394 2395 const monthlyEquivalentFormatter = new Intl.NumberFormat('de-DE', { 2396 minimumFractionDigits: 0, 2397 maximumFractionDigits: 2 2398 }); 2399 2400 function setTextIfDifferent(element, text) { 2401 if ( 2402 element && 2403 element.textContent.trim() !== text 2404 ) { 2405 element.textContent = text; 2406 } 2407 } 2408 2409 function addPortalStyles(portalDocument) { 2410 if ( 2411 portalDocument.getElementById( 2412 'casadeals-portal-styles' 2413 ) 2414 ) { 2415 return; 2416 } 2417 2418 const style = portalDocument.createElement('style'); 2419 2420 style.id = 'casadeals-portal-styles'; 2421 2422 style.textContent = ` 2423 /* 2424 * Eurozeichen hinter dem Betrag: 2425 * 9 ⬠/ Monat 2426 * 4 ⬠/ Monat 2427 */ 2428 .gh-portal-content.signup 2429 .gh-portal-product-price 2430 .currency-sign { 2431 display: none !important; 2432 } 2433 2434 .gh-portal-content.signup 2435 .gh-portal-product-price 2436 .amount::after { 2437 content: " â¬"; 2438 } 2439 2440 /* 2441 * GleichmäÃiger Abstand rund um den Schrägstrich. 2442 */ 2443 .gh-portal-content.signup 2444 .gh-portal-product-price 2445 .billing-period { 2446 margin-left: 7px !important; 2447 white-space: nowrap; 2448 } 2449 2450 .casadeals-annual-billing { 2451 display: block; 2452 margin-top: 4px; 2453 color: #626d79; 2454 font-size: 13px; 2455 font-weight: 400; 2456 line-height: 1.4; 2457 } 2458 2459 /* 2460 * Badge â7 Tage kostenfreiâ 2461 */ 2462 .gh-portal-content.signup 2463 [data-test-tier="paid"] 2464 .gh-portal-product-card-price-trial 2465 > .gh-portal-discount-label { 2466 color: #228b22 !important; 2467 background-color: #e9f8f3 !important; 2468 } 2469 2470 .gh-portal-content.signup 2471 [data-test-tier="paid"] 2472 .gh-portal-product-card-price-trial 2473 > .gh-portal-discount-label::before { 2474 display: none !important; 2475 } 2476 2477 /* 2478 * In der mobilen Jahresansicht bleiben Preis und 2479 * â7 Tage kostenfreiâ nebeneinander. 2480 * Die Monatsansicht wird nicht verändert. 2481 */ 2482 @media (max-width: 600px) { 2483 .gh-portal-content.signup 2484 [data-test-tier="paid"].casadeals-yearly-active 2485 .gh-portal-product-card-price-trial { 2486 display: flex !important; 2487 flex-direction: row !important; 2488 align-items: center !important; 2489 justify-content: space-between !important; 2490 flex-wrap: nowrap !important; 2491 gap: 12px !important; 2492 } 2493 2494 .gh-portal-content.signup 2495 [data-test-tier="paid"].casadeals-yearly-active 2496 .gh-portal-product-price { 2497 flex: 0 1 auto !important; 2498 min-width: 0 !important; 2499 white-space: nowrap !important; 2500 } 2501 2502 .gh-portal-content.signup 2503 [data-test-tier="paid"].casadeals-yearly-active 2504 .gh-portal-product-card-price-trial 2505 > .gh-portal-discount-label { 2506 flex: 0 0 auto !important; 2507 margin-left: auto !important; 2508 white-space: nowrap !important; 2509 } 2510 } 2511 2512 /* 2513 * Hervorgehobenes Premium-Paket 2514 */ 2515 .gh-portal-content.signup 2516 [data-test-tier="paid"].casadeals-recommended-card { 2517 position: relative !important; 2518 overflow: visible !important; 2519 border: 2px solid ${PRIMARY_COLOR} !important; 2520 } 2521 2522 /* 2523 * Empfohlen-Badge 2524 */ 2525 .casadeals-recommended-badge { 2526 position: absolute; 2527 top: 0; 2528 left: 50%; 2529 z-index: 10; 2530 transform: translate(-50%, -50%); 2531 display: inline-flex; 2532 align-items: center; 2533 justify-content: center; 2534 padding: 5px 14px; 2535 border-radius: 999px; 2536 background: ${PRIMARY_COLOR}; 2537 color: #ffffff; 2538 font-size: 13px; 2539 font-weight: 600; 2540 line-height: 1; 2541 white-space: nowrap; 2542 } 2543 `; 2544 2545 portalDocument.head.appendChild(style); 2546 } 2547 2548 function updateEmailPlaceholder(signupPage) { 2549 // --- E-MAIL-PLATZHALTER --- 2550 const emailInputs = signupPage.querySelectorAll( 2551 'input[type="email"], input[name="email"]' 2552 ); 2553
2554 emailInputs.forEach(function (input) { 2555 if (input.placeholder !== '[email protected]') { 2556 input.placeholder = '[email protected]'; 2557 } 2558 }); 2559 } 2560 2561 function addRecommendedBadge(card, portalDocument) { 2562 card.classList.add('casadeals-recommended-card'); 2563 2564 let badge = card.querySelector( 2565 '.casadeals-recommended-badge' 2566 ); 2567 2568 if (!badge) { 2569 badge = portalDocument.createElement('div'); 2570 badge.className = 'casadeals-recommended-badge'; 2571 badge.textContent = 'Empfohlen'; 2572 2573 card.appendChild(badge); 2574 } 2575 } 2576 2577 function updateDiscountText(card) { 2578 const possibleDiscountElements = card.querySelectorAll( 2579 '.gh-portal-discount-label-trial, [class*="discount"]' 2580 ); 2581 2582 possibleDiscountElements.forEach(function (element) { 2583 const currentText = element.textContent 2584 .replace(/\s+/g, ' ') 2585 .trim(); 2586 2587 const containsDiscount = 2588 /%/.test(currentText) && 2589 ( 2590 /rabatt/i.test(currentText) || 2591 /spar/i.test(currentText) 2592 ); 2593 2594 if (containsDiscount) { 2595 setTextIfDifferent( 2596 element, 2597 'Du sparst ' + 2598 DISCOUNT_PERCENT + 2599 ' % gegenüber der monatlichen Zahlung' 2600 ); 2601 } 2602 }); 2603 } 2604 2605 function updatePaidCard( 2606 card, 2607 yearlyIsActive, 2608 portalDocument 2609 ) { 2610 addRecommendedBadge(card, portalDocument); 2611 2612 /* 2613 * Ermöglicht gezielte CSS-Anpassungen ausschlieÃlich 2614 * in der Jahresansicht. 2615 */ 2616 card.classList.toggle( 2617 'casadeals-yearly-active', 2618 yearlyIsActive 2619 ); 2620 2621 const amountElement = card.querySelector( 2622 '.gh-portal-product-price .amount' 2623 ); 2624 2625 const periodElement = card.querySelector( 2626 '.gh-portal-product-price .billing-period' 2627 ); 2628 2629 const priceRow = card.querySelector( 2630 '.gh-portal-product-card-price-trial' 2631 ); 2632 2633 if ( 2634 !amountElement || 2635 !periodElement || 2636 !priceRow 2637 ) { 2638 return; 2639 } 2640 2641 setTextIfDifferent( 2642 periodElement, 2643 '/ Monat' 2644 ); 2645 2646 let billingNote = card.querySelector( 2647 '.casadeals-annual-billing' 2648 ); 2649 2650 if (yearlyIsActive) { 2651 // Jahresansicht: 48 ⬠/ 12 = 4 ⬠/ Monat 2652 const monthlyEquivalent = 2653 ANNUAL_PRICE / 12; 2654 2655 setTextIfDifferent( 2656 amountElement, 2657 monthlyEquivalentFormatter.format( 2658 monthlyEquivalent 2659 ) 2660 ); 2661 2662 updateDiscountText(card); 2663 2664 if (!billingNote) { 2665 billingNote = 2666 portalDocument.createElement('div'); 2667 2668 billingNote.className = 2669 'casadeals-annual-billing'; 2670 2671 priceRow.insertAdjacentElement( 2672 'afterend', 2673 billingNote 2674 ); 2675 } 2676 2677 setTextIfDifferent( 2678 billingNote, 2679 regularPriceFormatter.format( 2680 ANNUAL_PRICE 2681 ) + 2682 ' ⬠jährlich abgerechnet' 2683 ); 2684 } else { 2685 // Monatsansicht: 9 ⬠/ Monat 2686 setTextIfDifferent( 2687 amountElement, 2688 regularPriceFormatter.format( 2689 MONTHLY_PRICE 2690 ) 2691 ); 2692 2693 if (billingNote) { 2694 billingNote.remove(); 2695 } 2696 } 2697 } 2698 2699 function updatePortal(portalDocument) { 2700 if ( 2701 !portalDocument.body || 2702 !portalDocument.head 2703 ) { 2704 return; 2705 } 2706 2707 const signupPage = portalDocument.querySelector( 2708 '.gh-portal-content.signup' 2709 ); 2710 2711 if (!signupPage) { 2712 return; 2713 } 2714 2715 addPortalStyles(portalDocument); 2716 updateEmailPlaceholder(signupPage); 2717 2718 const yearlySwitch = portalDocument.querySelector( 2719 '[data-testid="yearly-switch"]' 2720 ); 2721 2722 const yearlyIsActive = Boolean( 2723 yearlySwitch && 2724 yearlySwitch.classList.contains('active') 2725 ); 2726 2727 const paidCards = signupPage.querySelectorAll( 2728 '[data-test-tier="paid"]' 2729 ); 2730 2731 paidCards.forEach(function (card) { 2732 updatePaidCard( 2733 card, 2734 yearlyIsActive, 2735 portalDocument 2736 ); 2737 }); 2738 } 2739 2740 function observePortalDocument(portalDocument) { 2741 if ( 2742 !portalDocument || 2743 !portalDocument.documentElement || 2744 observedDocuments.has(portalDocument) 2745 ) { 2746 return; 2747 } 2748 2749 observedDocuments.add(portalDocument); 2750 2751 let updateScheduled = false;
2752 2753 function scheduleUpdate() { 2754 if (updateScheduled) { 2755 return; 2756 } 2757 2758 updateScheduled = true; 2759 2760 window.setTimeout(function () { 2761 updateScheduled = false; 2762 updatePortal(portalDocument); 2763 }, 20); 2764 } 2765 2766 const portalObserver = new MutationObserver( 2767 scheduleUpdate 2768 ); 2769 2770 portalObserver.observe( 2771 portalDocument.documentElement, 2772 { 2773 childList: true, 2774 subtree: true, 2775 characterData: true, 2776 attributes: true, 2777 attributeFilter: [ 2778 'class', 2779 'placeholder' 2780 ] 2781 } 2782 ); 2783 2784 scheduleUpdate(); 2785 } 2786 2787 function connectPortalFrame(frame) { 2788 if ( 2789 !frame || 2790 observedFrames.has(frame) 2791 ) { 2792 return; 2793 } 2794 2795 observedFrames.add(frame); 2796 2797 function connectDocument() { 2798 try { 2799 observePortalDocument( 2800 frame.contentDocument 2801 ); 2802 } catch (error) { 2803 // Fremde Iframes werden ignoriert. 2804 } 2805 } 2806 2807 frame.addEventListener( 2808 'load', 2809 connectDocument 2810 ); 2811 2812 connectDocument(); 2813 } 2814 2815 function findPortalFrames(root) { 2816 const searchRoot = root || document; 2817 2818 if ( 2819 searchRoot.matches && 2820 searchRoot.matches('iframe') 2821 ) { 2822 connectPortalFrame(searchRoot); 2823 } 2824 2825 if (searchRoot.querySelectorAll) { 2826 searchRoot 2827 .querySelectorAll('iframe') 2828 .forEach(function (frame) { 2829 connectPortalFrame(frame); 2830 }); 2831 } 2832 } 2833 2834 findPortalFrames(document); 2835 2836 const pageObserver = new MutationObserver( 2837 function (mutations) { 2838 mutations.forEach(function (mutation) { 2839 mutation.addedNodes.forEach( 2840 function (node) { 2841 if ( 2842 node.nodeType === 2843 Node.ELEMENT_NODE 2844 ) { 2845 findPortalFrames(node); 2846 } 2847 } 2848 ); 2849 }); 2850 } 2851 ); 2852 2853 pageObserver.observe( 2854 document.documentElement, 2855 { 2856 childList: true, 2857 subtree: true 2858 } 2859 ); 2860 } 2861 2862 function init() { 2863 initExternalLinks(); 2864 initPortalCustomizations(); 2865 } 2866 2867 if (document.readyState === 'loading') { 2868 document.addEventListener( 2869 'DOMContentLoaded', 2870 init 2871 ); 2872 } else { 2873 init(); 2874 } 2875})(); 2876</script>
2876 2877
2878<script defer src="https://www.casadeals.de/assets/js/deal-gallery.js?v=s1iTpMG5arAID-8d"></script>
2878 2879</body> 2880</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.