:root{--site-width:980px;--panel-width:780px;--page-background:#efefef;--text:#272727}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{margin:0;background:var(--page-background);color:var(--text);font-family:"Play",Arial,sans-serif;font-size:14px;text-shadow:0 4px 5px rgba(0,0,0,.4)}
a{color:inherit}
.site-header{height:83px;background:#cbcbcb;border-bottom:1px solid #aaa;box-shadow:0 2px 2px #0003}
.header-inner{position:relative;width:min(var(--site-width),100%);height:100%;margin:auto}

.brand{position:absolute;top:4px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;min-height:70px;text-decoration:none;white-space:nowrap}
.brand-title{font-size:0;line-height:0;text-shadow:none;color:transparent}
.family-label{position:absolute;right:35px;top:20px;width:210px;text-align:center;font:18px/1.32 "Play",Arial,sans-serif;text-shadow:0 4px 5px rgba(0,0,0,.4)}
.header-update,.menu-toggle{display:none}
.site-shell{width:min(var(--site-width),100%);margin:0 auto}
.page-layout{display:grid;grid-template-columns:180px 780px;min-height:0}
.sidebar{padding-top:12px;position:relative;z-index:3}
.site-nav{width:127px;display:flex;flex-direction:column;gap:4px}
.nav-entry{position:relative}
.nav-link{width:127px;height:32px;border:2px solid #969696;border-radius:50px;background:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;text-align:center;font:700 12px/1 "Play",Arial,sans-serif;color:#525252;box-shadow:0 2px 4px #0006;white-space:nowrap}
.nav-link.active{background:#bfbfbf;color:#f00}
.nav-link:hover,.nav-link:focus-visible{background:#d6d6d6;color:#e00000}
.nav-submenu{opacity:1;transition:opacity 1.8s ease,visibility 0s linear;display:none;position:absolute;left:131px;top:0;min-width:127px;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;z-index:6}
.nav-entry:hover .nav-submenu,.nav-entry:focus-within .nav-submenu{display:block}

.nav-entry.expanded .nav-submenu{display:block}
.nav-entry.expanded.submenu-idle-hidden .nav-submenu{opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1.8s ease,visibility 0s linear 1.8s}
.nav-submenu a[aria-current="page"]{background:#e7e7e7;color:#bb0000}
.nav-submenu a{display:flex;align-items:center;justify-content:center;width:127px;min-height:32px;height:auto;padding:6px 5px;line-height:1.2;overflow-wrap:anywhere;margin:0 0 4px 0;border:2px solid #969696;border-radius:50px;background:#fff;box-shadow:0 2px 4px #0006;text-decoration:none;font:700 12px/1 "Play",Arial,sans-serif;color:#525252;white-space:normal;text-align:center}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:#d6d6d6;color:#e00000}
.submenu-toggle{display:none}
.site-nav,.site-nav *{text-shadow:none!important}
.main-column{margin-top:29px;width:780px;min-height:0;position:relative}
.page-sub .main-column,.occ-page .main-column{border:1px solid #888;border-radius:5px;background-color:#e7e7e7;box-shadow:0 2px 6px #0004;padding:16px 64px 42px;text-align:center;line-height:1.25}

.theme-computer{background-color:rgba(0, 252, 252, 0.07) !important;background-image:url("Grafiken/Verlauf-computer.png");background-size:100% 100px;background-repeat:repeat-x;}

.home .main-column{margin-top:0}
.home-hero{text-align:center;margin-left:-180px;padding-top:34px;width:980px}
.home-hero .family-crest{display:block;width:190px;height:220px;object-fit:contain;margin:0 auto 28px}
.crest-caption{font-size:14px;margin:0 auto 25px;text-shadow:1px 2px 4px #777}

.greet-one,.greet-two{
 display:block;width:fit-content;max-width:100%;height:auto;margin-left:auto;margin-right:auto;
 font-family:Arial,sans-serif;
 font-style:normal;line-height:1.22;color:#191919;text-align:center;
 text-shadow:2px 3px 5px rgba(0,0,0,.47)
}
.greet-one{font-size:34px;font-weight:700;margin-top:0;margin-bottom:0}
.greet-two{font-size:26px;font-weight:400;margin-top:6px;margin-bottom:0}
.footer{min-height:48px;background:#bfbfbf;border:1px solid #858585;border-radius:5px;box-shadow:0 12px 10px -6px #0009;margin:15px 0 25px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;color:#333}
.footer-update{font-size:10px}
.footer-copy{font-size:12px;text-shadow:1px 1px 2px #666}

.home .page-layout{min-height:450px}
.page-sub .page-layout,.occ-page .page-layout{min-height:0}
.page-sub .footer,.occ-page .footer{margin-top:15px}

.main-column img{max-width:100%;height:auto}
.script-title{font:normal 33px/1.25 Arial,sans-serif;margin:10px 0 13px;text-shadow:2px 3px 5px #777}
.bold-title{font:700 19px/1.3 "Play",Arial,sans-serif;text-align:center;margin:12px 0 20px;text-decoration:underline}
.title-sub{font-weight:700;font-size:15px;margin:12px auto 15px;text-shadow:1px 2px 3px #7777}
.textblock{font-family:"Play",Arial,sans-serif;font-size:14px;line-height:1.22;max-width:100%;overflow-wrap:anywhere}
.textblock h1,.textblock h2,.textblock h3,.textblock h4{font-family:inherit;font-size:inherit;font-weight:400;line-height:1.25;margin:0}
.textblock p{margin:6px 0}
.textblock ul,.textblock ol{text-align:left;margin:8px 0}
.textblock.justify{text-align:justify}
.textblock.services-text{text-align:left;margin:25px 0 18px}
.textblock.center-body{margin:20px auto}
.textblock.legal-long{text-align:left;line-height:1.26}
.textblock.contact-long{line-height:1.3}
.textblock a{color:#2777a9}
.room-heading{font-weight:700;font-size:16px;margin:21px 0 10px}
.house-picture img{width:400px;height:229px;object-fit:cover;box-shadow:0 8px 9px #0005}
.pictures-row{display:flex;justify-content:center;gap:80px;margin:12px auto 24px}
.pictures-row img{width:240px;height:180px;object-fit:cover;box-shadow:0 3px 6px #0005}
.small-crest{width:86px;height:100px;object-fit:contain;margin:20px 0 0 auto;display:block}
.webcam-photo{width:640px;max-width:100%;display:block;margin:16px auto 12px}
.decor-right{position:absolute;right:40px;top:105px;width:150px}
.feature-image{text-align:center;margin:12px auto}.feature-image img{max-width:390px;max-height:330px;object-fit:contain}
.hand-photo img{max-width:160px;max-height:240px;object-fit:contain}
.hand-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px auto}.hand-gallery figure{margin:0}.hand-gallery img{max-height:260px;object-fit:contain}.gallery-note{font-size:12px;color:#777}
.impressions-pics{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap;margin:20px auto}
.impressions-pics img{max-width:140px;max-height:190px}
.occ-page .main-column{padding:22px 40px 45px}
.occ-head{height:192px;position:relative}
.occ-banner{position:absolute;top:6px;left:9px;display:flex;align-items:flex-start;gap:27px}
.occ-banner .occ-logo{width:120px;height:120px;object-fit:contain}
.occ-name{font-size:38px;font-weight:700;color:#202020;text-shadow:1px 3px 3px #777;line-height:1.2;white-space:nowrap;margin-top:8px}
.occ-desc{position:absolute;top:81px;left:171px;width:443px;text-align:center;font-size:14px;font-weight:700;line-height:1.16;text-shadow:1px 2px 3px #7776}
.occ-strap{position:absolute;top:137px;left:-5px;width:170px;transform:rotate(-11deg);font-size:11px;letter-spacing:.25px;line-height:1.28;color:#f00;font-style:italic;font-weight:700}
.occ-byline{position:absolute;top:134px;left:198px;width:200px;text-align:center;font-size:12px;line-height:1.16}
.occ-current{position:absolute;top:133px;left:385px;width:199px;text-align:center;font-size:14px;line-height:1.2;color:#005b9a;font-weight:700}
.occ-shop{position:absolute;width:70px;right:7px;top:78px}
.occ-payment{margin:15px auto}.occ-payment img{width:240px;max-width:100%}

.occ-small{font-weight:700;margin:8px auto}
.occ-long{text-align:left;margin:15px auto 20px}
.occ-long h1,.occ-long h2,.occ-long h3{font-size:14px;line-height:1.38}
.occ-graphic{margin:12px auto}.occ-graphic img{width:100px}
.occ-screens{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:18px auto}
.occ-screens img{width:180px;height:auto;box-shadow:0 3px 8px #0005}
.download-later{border:1px dashed #7a9dac;background:#ffffff6b;color:#3a4a52;padding:8px;margin:8px auto;max-width:350px;font-size:12px}
@media(max-width:1010px){.site-shell{width:calc(100% - 30px);max-width:980px}.header-inner{width:980px;max-width:100%}.page-layout{grid-template-columns:18.4% 81.6%}.main-column{width:100%}}
@media(max-width:800px){
 .site-header{height:69px}.header-inner{width:100%}.brand{left:calc(50% - 127px);transform:none;top:13px;min-height:36px}.brand-title{font-size:30px;letter-spacing:-.55px}
 .family-label{font:11px/1.15 "Play",Arial,sans-serif;width:135px;right:54px;top:37px}
 .header-update{display:block;position:absolute;left:12px;bottom:4px;font-size:10px}
 .menu-toggle{display:flex;position:absolute;right:17px;top:23px;width:29px;height:31px;border:0;background:transparent;padding:0;flex-direction:column;justify-content:space-around;cursor:pointer}
 .menu-toggle span{height:2.5px;background:#333;width:100%;border-radius:2px}
 .site-shell{width:100%}.page-layout{display:block;min-height:420px}
 .sidebar{display:none;position:absolute;top:69px;left:0;right:0;z-index:20;background:#d0d0d0;padding:11px 15px 15px;border-bottom:1px solid #999;box-shadow:0 9px 13px #0005}
 .sidebar.open{display:block}.site-nav{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .nav-link{width:100%;height:33px;font-size:12px}.submenu-toggle{display:none}
 .nav-submenu{position:static;min-width:0;margin-top:5px;box-shadow:none}
 .nav-submenu a{width:100%;min-height:33px;height:auto;padding:6px 5px;white-space:normal;line-height:1.2}
 .nav-entry.expanded .nav-submenu{display:block}
 .nav-entry.expanded .nav-submenu{max-height:700px;transition:opacity 1.8s ease,max-height 1.8s ease,visibility 0s linear}
 .nav-entry.expanded.submenu-idle-hidden .nav-submenu{max-height:0;overflow:hidden;margin-top:0;transition:opacity 1.8s ease,max-height 1.8s ease,visibility 0s linear 1.8s}
 .main-column{width:100%;margin-top:0}.home .main-column{min-height:430px}
 .home-hero{width:100%;margin:0;padding-top:112px}
 .home-hero .family-crest{width:177px;height:auto;margin-bottom:15px}
 .crest-caption{font-size:15px;margin-bottom:12px;white-space:nowrap}
 .greet-one{font-size:clamp(20px,5.7vw,28px);max-width:calc(100% - 12px);margin-top:0;white-space:normal}
 .greet-two{font-size:clamp(17px,4.8vw,23px);max-width:calc(100% - 16px);margin-top:7px;white-space:normal}
 .page-sub .main-column,.occ-page .main-column{width:calc(100% - 24px);margin:26px 12px 14px;padding:22px 17px 30px}
 .footer{margin:0 12px 18px;min-height:36px;border-radius:7px;padding:0 13px}
 .footer-update{display:none}.footer-copy{margin-left:auto;font-size:12px}
 .script-title{font-size:27px}.title-sub{font-size:13px}
 .hand-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pictures-row{gap:12px}.pictures-row img{width:48%;height:auto}
 .occ-page .main-column{padding:18px 11px}.occ-head{height:202px}
 .occ-banner{left:0;top:0;gap:10px}.occ-banner .occ-logo{width:73px;height:73px}.occ-name{font-size:19px;white-space:normal;max-width:260px;margin-top:6px}
 .occ-desc{top:69px;left:65px;width:calc(100% - 65px);font-size:12px}
 .occ-strap{top:130px;left:0;width:140px;font-size:9px}
 .occ-byline{top:138px;left:134px;width:120px;font-size:10px}
 .occ-current{top:168px;left:120px;width:190px;font-size:11px}
 .occ-shop{width:40px;right:2px;top:115px}
 .occ-desc{font-size:12px}
 .textblock{font-size:13px}.decor-right{position:static;margin:5px auto}
}
@media(max-width:390px){.brand{left:20px}.brand-title{font-size:29px}.family-label{right:48px;width:120px;font-size:10px}}

:root {
  --wachter-unterseiten-schrift: "Play", Arial, sans-serif;
  --wachter-unterseiten-groesse: 14px;
  --wachter-unterseiten-schatten: 0 4px 5px rgba(0, 0, 0, 0.4);
}
.page-sub .main-column,
.occ-page .main-column {
  font-family: var(--wachter-unterseiten-schrift);
  font-size: var(--wachter-unterseiten-groesse);
}
.page-sub .textblock,
.occ-page .textblock {
  font-family: var(--wachter-unterseiten-schrift);
  font-size: var(--wachter-unterseiten-groesse);
  text-shadow: var(--wachter-unterseiten-schatten);
}

.occ-original-gallery{max-width:640px;margin:18px auto 22px;text-align:center}
.occ-gallery-main{display:block;width:600px;max-width:100%;height:auto;margin:0 auto;box-shadow:0 5px 9px #0005;border-radius:4px}
.occ-gallery-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin:10px auto}
.occ-gallery-arrow{font:700 25px/1 Arial,sans-serif;color:#333;background:#ddd;border:1px solid #999;border-radius:30px;min-width:37px;height:30px;cursor:pointer;box-shadow:0 2px 4px #0004}
.occ-gallery-count{font-size:13px}
.occ-gallery-thumbs{display:flex;overflow-x:auto;gap:6px;justify-content:flex-start;padding:5px;margin:0 auto;max-width:605px}
.occ-gallery-thumb{padding:2px;background:#fff;border:2px solid transparent;border-radius:4px;cursor:pointer;flex:0 0 62px;height:49px}
.occ-gallery-thumb.selected{border-color:#2785a5}
.occ-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}

@media (min-width:801px) {
  .brand{left:190px;transform:none}
}

.page-sub .textblock,.occ-page .textblock,
.page-sub .textblock :is(h1,h2,h3,h4,li,p),
.occ-page .textblock :is(h1,h2,h3,h4,li,p) {line-height:normal}

@keyframes wh-appear{from{opacity:0}to{opacity:1}}
@media (min-width:801px) and (prefers-reduced-motion:no-preference){
  .site-nav{animation:wh-appear .7s ease-out both}
  .site-shell{animation:wh-appear .65s ease-out both;transition:opacity .65s ease-in}
  body.wh-leaving .site-shell{opacity:0}
}

.slug-ferienwohnung .ferienwohnung-abschluss{margin:0 auto;text-align:center;font-family:"Play",Arial,sans-serif;font-size:14px;line-height:normal;text-shadow:var(--wachter-unterseiten-schatten)}
.slug-ferienwohnung .ferienwohnung-section-heading{font-size:15px;font-weight:700;line-height:normal;margin:12px 0 13px}
.slug-ferienwohnung .ferienwohnung-abschluss p{margin:0 0 16px;line-height:normal}
.slug-ferienwohnung .ferienwohnung-abschluss p:last-child{margin:18px 0 0}
.slug-ferienwohnung .ferienwohnung-abschluss a{color:inherit;text-decoration:none}
.slug-ferienwohnung .small-crest{margin:0 0 0 auto}

@media (min-width:801px){
  .slug-computer .main-column{padding:16px 34px 24px;min-height:465px}
  .slug-computer .services-text{margin:19px 0 0}
  .slug-computer .services-text ul{padding-left:26px;margin:13px 0 0}
  .slug-computer .services-text li{white-space:nowrap;line-height:normal}
  .slug-computer .services-text li h1{white-space:nowrap}
  .slug-computer .center-body{width:58%;margin:-30px 0 0 auto;transform:translateY(-10px)}
  .slug-computer .small-crest{position:absolute;bottom:12px;right:43px;margin:0}
}

.slug-schmutzfahnder .schmutz-title{
  font-family:"Suez One",Georgia,serif;font-size:34px;font-weight:700;
  text-align:center;line-height:1.16;margin:9px 0 11px;
  text-shadow:0 4px 5px rgba(0,0,0,.4);
}
.slug-schmutzfahnder .schmutz-subtitle{margin:0 0 25px;font-weight:700;font-size:14px}
.slug-schmutzfahnder .schmutz-services{text-align:left;margin:0}
.slug-schmutzfahnder .schmutz-services p{margin:0 0 17px}
.slug-schmutzfahnder .schmutz-services ul{padding-left:28px;margin:0}
.slug-schmutzfahnder .schmutz-services li{margin:0;line-height:normal}
.slug-schmutzfahnder .schmutz-contact p{margin:0 0 15px;line-height:normal}
.slug-schmutzfahnder .schmutz-contact a{color:inherit;text-decoration:underline}
.slug-schmutzfahnder .schmutz-art img{height:auto;display:block}
@media (min-width:801px){
  .slug-schmutzfahnder .main-column{height:476px;padding:16px 34px 20px}
  .slug-schmutzfahnder .schmutz-contact{position:absolute;top:302px;left:260px;width:240px;text-align:center}
  .slug-schmutzfahnder .schmutz-besen{position:absolute;left:42px;bottom:35px;width:210px}
  .slug-schmutzfahnder .schmutz-frau{position:absolute;right:19px;top:118px;width:230px}
}
@media (max-width:800px){
  .slug-computer .services-text li,.slug-computer .services-text li h1{white-space:normal;overflow-wrap:normal}
  .slug-computer .main-column{min-height:0}
  .slug-schmutzfahnder .schmutz-title{font-size:clamp(25px,8vw,34px)}
  .slug-schmutzfahnder .schmutz-subtitle{margin-bottom:22px}
  .slug-schmutzfahnder .schmutz-services{margin:0}
  .slug-schmutzfahnder .schmutz-contact{margin:25px 0;text-align:center}
  .slug-schmutzfahnder .schmutz-art{display:flex;justify-content:space-around;align-items:center;gap:6px}
  .slug-schmutzfahnder .schmutz-besen{position:static;width:38%;max-width:180px}
  .slug-schmutzfahnder .schmutz-frau{position:static;width:48%;max-width:200px}
  .slug-ferienwohnung .ferienwohnung-abschluss{font-size:14px}
}
@media (prefers-reduced-motion:reduce){.site-shell,.site-nav{animation:none!important;transition:none!important}}
@media (prefers-reduced-motion:reduce){.nav-submenu{transition:none!important}}

@media (min-width:801px){
  .slug-computer .bold-title{font-size:34px;font-weight:700;text-decoration:none;margin:7px 0 9px;line-height:1.15}
  .slug-computer .main-column{height:465px}
}
@media (max-width:800px){
  .slug-computer .bold-title{font-size:clamp(23px,6.9vw,34px);text-decoration:none}
}

.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(203,203,203,.88);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px);
}

@media(max-width:800px){
  .sidebar{position:fixed;top:69px;z-index:1100;max-height:calc(100dvh - 69px);overflow-y:auto}
}

.webcam-photo-link{display:block;max-width:640px;margin:16px auto 12px;cursor:zoom-in;text-decoration:none}
.webcam-photo-link .webcam-photo{display:block;width:100%;max-width:100%;margin:0}

.slug-dienstleistungen .feature-image img{width:520px;height:358px;max-width:100%;max-height:none;object-fit:contain}
.slug-dienstleistungen .feature-image{margin:12px auto 18px}

.slug-lotuslodge .lotus-thailand-title{
  font-family:Batang,"BatangChe",Georgia,serif;
  font-size:34px;font-weight:700;line-height:1.2;
  text-align:center;margin:9px 0 14px;
  text-shadow:0 4px 5px rgba(0,0,0,.4);
}

.slug-impressionen .main-column{padding:15px 45px 28px;min-height:556px}
.slug-impressionen .impressions-heading{margin:0 auto 10px;text-align:center;line-height:1}
.slug-impressionen .impressions-heading img{width:520px;max-width:100%;height:auto;display:block;margin:auto}
.slug-impressionen .impressions-lead{margin:8px auto 15px}
.slug-impressionen .impressions-details{width:100%;text-align:left;margin:0 auto 14px}
.slug-impressionen .impressions-tech{width:100%;text-align:left;margin:10px auto 14px}
.slug-impressionen .impressions-offer{width:410px;max-width:100%;margin:13px auto 0 6px;text-align:center}
.slug-impressionen .impressions-pics{position:absolute;inset:0;margin:0;display:block;pointer-events:none;z-index:1}
.slug-impressionen .impressions-pics img{
  position:absolute;max-width:none;max-height:none;height:auto;
  filter:drop-shadow(4px 6px 3px rgba(0,0,0,.39));
  transform-origin:center center;
}
.slug-impressionen .imp-cover{top:187px;left:398px;width:205px;transform:rotate(-21deg)}
.slug-impressionen .imp-disc{top:223px;left:574px;width:161px;transform:rotate(0deg)}
.slug-impressionen .imp-back{top:348px;left:499px;width:196px;transform:rotate(8deg)}

@media(max-width:800px){
  .slug-impressionen .main-column{min-height:0;padding:20px 14px 30px}
  .slug-impressionen .impressions-heading img{width:100%;max-width:520px}
  .slug-impressionen .impressions-details,.slug-impressionen .impressions-tech{width:100%;max-width:100%}
  .slug-impressionen .impressions-offer{width:100%;margin:18px auto 0}
  .slug-impressionen .impressions-pics{
    position:relative;inset:auto;display:block;margin:12px auto 24px;
    width:min(100%,335px);height:320px;pointer-events:none;
  }
  .slug-impressionen .imp-cover{top:20px;left:9%;width:47%;transform:rotate(-17deg)}
  .slug-impressionen .imp-disc{top:16px;left:52%;width:43%;transform:none}
  .slug-impressionen .imp-back{top:164px;left:34%;width:54%;transform:rotate(7deg)}
  .slug-dienstleistungen .feature-image img{height:auto;width:min(100%,520px)}
  .slug-lotuslodge .lotus-thailand-title{font-size:clamp(26px,8vw,34px)}
}
@media(prefers-reduced-transparency:reduce){.site-header{background:#cbcbcb;-webkit-backdrop-filter:none;backdrop-filter:none}}

.footer,.wh-corner-frame,.webcam-photo-link{
  position:relative;
  isolation:isolate;
  overflow:visible;
}
.footer{box-shadow:none!important}
.wh-corner-frame,.webcam-photo-link{box-shadow:0 0 3px rgba(0,0,0,.5)}
.footer::before,.footer::after,
.wh-corner-frame::before,.wh-corner-frame::after,
.webcam-photo-link::before,.webcam-photo-link::after{
  content:"";
  pointer-events:none;
  position:absolute;
  z-index:-1;
  bottom:-26px;
  width:165px;
  height:26px;
  background-image:url("Grafiken/wix-originalschatten.png");
  background-repeat:no-repeat;
  background-size:330px 26px;
  border:0;
  border-radius:0;
  clip-path:none;
  filter:none;
  opacity:1;
  transform:none;
}
.footer::before,.wh-corner-frame::before,.webcam-photo-link::before{
  background-position:0 0;
  left:-20px;
  right:auto;
}
.footer::after,.wh-corner-frame::after,.webcam-photo-link::after{
  background-position:100% 0;
  right:-20px;
  left:auto;
}
.wh-corner-frame img{width:100%;height:100%;display:block}
.house-picture .wh-corner-frame{width:400px;max-width:100%;height:auto;margin:auto}
.house-picture .wh-corner-frame img{height:auto}
.pictures-row .wh-corner-frame{width:240px;max-width:100%;flex:0 1 auto}
.pictures-row .wh-corner-frame img{height:180px;object-fit:cover}
.webcam-photo-link .webcam-photo{box-shadow:none!important;filter:none!important}
.house-picture img,.pictures-row img,.feature-image img,.webcam-photo,
.hand-photo img,.hand-gallery img,.occ-gallery-main,.occ-screens img{box-shadow:none}

.slug-dienstleistungen .feature-image,.slug-dienstleistungen .feature-image img,
.slug-lotuslodge .feature-image,.slug-lotuslodge .feature-image img{
 box-shadow:none!important;filter:none!important;border:0!important;outline:0!important;
 background:transparent!important;
}

.slug-impressionen .imp-cover{top:187px;left:455px;width:163px;transform:rotate(-21deg)}
.slug-impressionen .imp-disc{top:221px;left:606px;width:134px;transform:rotate(0deg)}
.slug-impressionen .imp-back{top:347px;left:538px;width:161px;transform:rotate(8deg)}
@media(max-width:800px){
 .pictures-row .wh-corner-frame{width:48%;max-width:48%}
 .pictures-row .wh-corner-frame img{width:100%;height:auto}
 .slug-impressionen .imp-cover{top:22px;left:10%;width:43%;transform:rotate(-17deg)}
 .slug-impressionen .imp-disc{top:20px;left:54%;width:37%;transform:none}
 .slug-impressionen .imp-back{top:150px;left:37%;width:48%;transform:rotate(7deg)}
 .slug-impressionen .impressions-pics{height:285px}
}

@supports not (scrollbar-gutter:stable){
  @media(min-width:801px){html{overflow-y:scroll}}
}

.site-header .brand-title{
  display:block!important;
  width:371px;height:69px;
  background:none;
  font-size:0!important;line-height:0!important;
  text-shadow:none!important;
  color:transparent!important;
}
@media(min-width:801px){.site-header .brand{left:180px;top:5px;transform:none}}
@media(max-width:800px){
 .site-header .brand-title{width:231px;height:43px;background-size:231px 43px}
}
@media(max-width:390px){
 .site-header .brand-title{width:222px;height:41px;background-size:222px 41px}
}

@media (min-width:801px) {
  /* Desktop: erster Titelblock 25px unter der Kastenkante. */
  body.page-sub {--wh-desktop-box-shift:1px;}
  body.page-sub .site-shell .page-layout > main.main-column {padding-top:17px!important;}
  body.page-sub,body.occ-page {
    --wh-panel-limit:max(170px, calc(100dvh - 200px));
    --wh-panel-original-min:0px;
  }
  body.slug-kontakt{--wh-panel-original-min:635px}
  body.slug-impressum{--wh-panel-original-min:951px}
  body.slug-dsgvo{--wh-panel-original-min:653px}
  body.slug-disclaimer{--wh-panel-original-min:849px}
  body.slug-datenschutz{--wh-panel-original-min:2678px}
  body.slug-datenschutz-aktuell{--wh-panel-original-min:0px}
  body.slug-impressionen{--wh-panel-original-min:556px}
  body.slug-handarbeiten{--wh-panel-original-min:499px}
  body.slug-dienstleistungen{--wh-panel-original-min:470px}
  body.slug-domains{--wh-panel-original-min:450px}
  body.slug-computer{--wh-panel-original-min:465px}

  body.page-sub .main-column,body.occ-page .main-column {
    min-height:min(var(--wh-panel-original-min),var(--wh-panel-limit))!important;
    max-height:var(--wh-panel-limit);
    overflow-y:auto!important;
    overflow-x:hidden;
    overscroll-behavior-y:contain;
    scrollbar-width:thin;
  }
  body.page-sub .sidebar,body.occ-page .sidebar {
    position:sticky;
    top:95px;
    align-self:start;
  }
}

@media (min-width:801px) and (max-height:660px) {
  body.page-sub .sidebar,body.occ-page .sidebar {
    max-height:max(150px, calc(100dvh - 210px));
    overflow-y:auto;
    overflow-x:hidden;
    scrollbar-width:thin;
  }
  body.page-sub .nav-submenu,body.occ-page .nav-submenu {
    position:static;
    left:auto;top:auto;
    min-width:0;
    margin:4px 0 0 6px;
  }
  body.page-sub .nav-submenu a,body.occ-page .nav-submenu a {
    width:127px;
    max-width:calc(100% - 2px);
  }
}

html,
body.page-sub .main-column, body.occ-page .main-column,
body.page-sub .sidebar, body.occ-page .sidebar,
.occ-gallery-thumbs {
  scrollbar-width:none!important; 
  -ms-overflow-style:none;       
}
html::-webkit-scrollbar,
body.page-sub .main-column::-webkit-scrollbar,
body.occ-page .main-column::-webkit-scrollbar,
body.page-sub .sidebar::-webkit-scrollbar,
body.occ-page .sidebar::-webkit-scrollbar,
.occ-gallery-thumbs::-webkit-scrollbar {
  display:none!important;
  width:0!important;
  height:0!important;
}

@media (min-width:801px){
 .wh-crest-scroll-content{
   position:relative;display:flow-root;
   min-height:max(0px, calc(var(--wh-panel-original-min, 0px) - 60px));
 }
 .slug-kontakt .wh-crest-scroll-content .small-crest{right:-34px;bottom:-33px}
 .slug-impressum .wh-crest-scroll-content .small-crest{right:22px;top:92px}
 .slug-dsgvo .wh-crest-scroll-content .small-crest{right:-29px;bottom:-12px}
 .slug-datenschutz .wh-crest-scroll-content .small-crest{right:66px;bottom:-3px}
 .slug-disclaimer .wh-crest-scroll-content .small-crest{right:13px;bottom:-42px}
 .slug-datenschutz-aktuell .wh-crest-scroll-content{min-height:0}
 .slug-datenschutz-aktuell .wh-crest-scroll-content .small-crest{right:-30px;bottom:-128px}
}
@media (max-width:800px){
 .wh-crest-scroll-content{display:contents}
}

@media(min-width:801px){
 .slug-computer .wh-crest-scroll-content{min-height:423px}
 .slug-computer .wh-crest-scroll-content .small-crest{right:9px;bottom:-12px}
}

@media(min-width:801px){
 body.slug-computer .wh-crest-scroll-content .small-crest{bottom:-7px}
 body.slug-computer.page-sub .main-column{padding-bottom:20px}
}
@media(max-width:800px){
 body.slug-computer.page-sub .main-column{padding-bottom:10px}
 body.slug-computer .small-crest{transform:translateY(-3px)}
}

body.wh-wappen-uniform .main-column {
  display:flex;
  flex-direction:column;
  padding-bottom:14px!important; 
  --wh-wappen-pad-left:64px;
  --wh-wappen-pad-right:64px;
}
body.wh-wappen-uniform .main-column > .wh-wappen-footer {
  box-sizing:border-box!important;
  position:relative!important;
  flex:0 0 auto;
  clear:both;
  width:calc(100% + var(--wh-wappen-pad-left) + var(--wh-wappen-pad-right));
  margin-left:calc(0px - var(--wh-wappen-pad-left));
  margin-right:0!important;
  margin-top:auto!important;
  padding-top:15px; 
  padding-right:19px; 
  padding-bottom:0;
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  min-height:0;
}
body.wh-wappen-uniform .main-column > .wh-wappen-footer > img {
  position:static!important;
  float:none!important;
  display:block!important;
  top:auto!important;
  bottom:auto!important;
  left:auto!important;
  right:auto!important;
  margin:0!important;
  transform:none!important;
  flex:0 0 auto;
  max-width:100%;
  object-fit:contain;
}
@media(max-width:800px){
  body.wh-wappen-uniform .main-column {
    --wh-wappen-pad-left:17px;
    --wh-wappen-pad-right:17px;
  }
}

@media(min-width:801px){body.slug-computer.wh-wappen-uniform .main-column{--wh-wappen-pad-left:34px;--wh-wappen-pad-right:34px}}

body.wh-wappen-uniform .main-column > :not(.wh-wappen-footer){flex-shrink:0;}

@media(min-width:801px){
 body.slug-computer{--wh-panel-original-min:415px;--wh-panel-limit:max(120px,calc(100dvh - 250px))}
 body.slug-computer.wh-wappen-uniform.page-sub .main-column{
  height:415px!important;min-height:415px!important;
  max-height:var(--wh-panel-limit)!important;
 }
}
@media(max-width:800px){
 body.slug-computer.page-sub .main-column{max-height:max(130px,calc(100dvh - 230px))!important}
}

@media(min-width:801px){
 body.slug-computer.wh-wappen-uniform.page-sub .main-column{
  height:clamp(300px,calc(100dvh - 250px),415px)!important;
  min-height:0!important;max-height:clamp(300px,calc(100dvh - 250px),415px)!important;
 }
}
@media(max-width:800px){
 body.slug-computer.wh-wappen-uniform.page-sub .main-column{
  height:calc(100dvh - 230px)!important;
  max-height:calc(100dvh - 230px)!important;
 }
}

@media (min-width:801px) {
  body.page-sub, body.occ-page {
    --wh-dynamic-min-box:421px;
    --wh-dynamic-max-box:max(180px, calc(100dvh - 200px));
  }
  body.slug-schmutzfahnder { --wh-dynamic-min-box:476px; }
  body.slug-impressionen { --wh-dynamic-min-box:556px; }
  body.slug-handarbeiten { --wh-dynamic-min-box:460px; }
  body.slug-domains {
    --wh-dynamic-min-box:409px;
    --wh-dynamic-max-box:max(180px, calc(100dvh - 215px));
  }
  body.home .page-layout,
  body.page-sub .page-layout,
  body.occ-page .page-layout {
    min-height:450px;
  }
  body.page-sub .page-layout,body.occ-page .page-layout {align-items:start;}
  body.page-sub .site-shell .page-layout > main.main-column,
  body.occ-page .site-shell .page-layout > main.main-column {
    height:auto!important;
    min-height:calc(min(var(--wh-dynamic-min-box), var(--wh-dynamic-max-box)) + var(--wh-desktop-box-shift,0px))!important;
    max-height:calc(var(--wh-dynamic-max-box) + var(--wh-desktop-box-shift,0px))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  body.wh-wappen-uniform .main-column > .wh-crest-scroll-content {
    min-height:0!important;
  }
}

@media screen and (max-width:800px) {
  .wh-mobile-menu-overlay {
    position:fixed; inset:0; z-index:2100;
    display:block; background:rgba(0,0,0,.30);
    visibility:hidden; opacity:0; pointer-events:none;
    transition:opacity .44s ease, visibility 0s linear .58s;
  }
  .wh-mobile-menu-overlay.open {
    visibility:visible; opacity:1; pointer-events:auto;
    transition:opacity .44s ease, visibility 0s;
  }
  body.wh-drawer-open { overflow:hidden!important; }
  .sidebar#navigation {
    position:fixed!important;
    top:0!important; right:0!important; bottom:0!important; left:auto!important;
    display:block!important;
    width:46%!important; min-width:150px; max-width:calc(100vw - 45px);
    height:100dvh!important; max-height:100dvh!important;
    margin:0!important; padding:70px 13px 26px 15px!important;
    z-index:2200!important; border:0!important;
    background:#efefef!important;
    box-shadow:-1px 0 2px rgba(0,0,0,.20);
    overflow-y:auto!important; overflow-x:hidden!important;
    overscroll-behavior:contain; -webkit-overflow-scrolling:touch;
    transform-origin:right center!important;
    transform:perspective(950px) rotateY(89deg)!important;
    backface-visibility:hidden;
    visibility:hidden; opacity:0; pointer-events:none;
    transition:transform .58s cubic-bezier(.16,.80,.22,1),
               opacity .32s ease, visibility 0s linear .58s;
  }
  .sidebar#navigation.open {
    transform:perspective(950px) rotateY(0deg)!important;
    visibility:visible; opacity:1; pointer-events:auto;
    transition:transform .58s cubic-bezier(.16,.80,.22,1),
               opacity .32s ease, visibility 0s;
  }
  .sidebar#navigation .wh-mobile-close {
    display:flex; align-items:center; justify-content:center;
    position:absolute; top:12px; right:12px;
    width:42px; height:42px; padding:0;
    background:transparent; border:0; color:#242424;
    font:400 45px/1 Arial,sans-serif; text-shadow:none;
    cursor:pointer; z-index:2;
  }
  .sidebar#navigation .site-nav {
    display:flex!important; width:100%!important;
    flex-direction:column!important; align-items:stretch;
    grid-template-columns:none!important; gap:0!important;
    padding:0; margin:0;
  }
  .sidebar#navigation .nav-entry {position:relative; width:100%; margin:0; padding:0;}
  .sidebar#navigation .nav-link {
    display:flex; width:100%!important; min-height:35px; height:auto!important;
    padding:7px 0 7px 19px; margin:0;
    justify-content:flex-end!important; align-items:center;
    background:transparent!important; border:0!important; border-radius:0!important;
    box-shadow:none!important;
    color:#292929;
    font:400 clamp(13px,4.0vw,17px)/1.3 "Play",Arial,sans-serif;
    white-space:normal; text-align:right;
    text-shadow:none!important;
  }
  .sidebar#navigation .nav-link.active,
  .sidebar#navigation .nav-link[aria-current="page"] {color:#df2424!important;}
  .sidebar#navigation .nav-link:hover,
  .sidebar#navigation .nav-link:focus-visible {color:#cf2424!important;}
  .sidebar#navigation .submenu-toggle {
    display:flex!important; position:absolute; top:1px; left:-1px;
    width:28px; height:34px; padding:0;
    align-items:center; justify-content:center;
    background:transparent!important; border:0!important; box-shadow:none!important;
    font-size:0!important; color:transparent!important; cursor:pointer;
  }
  .sidebar#navigation .submenu-toggle::after {
    content:""; display:block; width:12px; height:12px;
    border:solid #303030; border-width:0 2px 2px 0;
    transform:translateY(-3px) rotate(45deg);
    transition:transform .2s ease;
  }
  .sidebar#navigation .has-submenu.expanded .submenu-toggle::after {
    transform:translateY(3px) rotate(225deg);
  }
  .sidebar#navigation .nav-submenu,
  .sidebar#navigation .has-submenu:not(.expanded) .nav-submenu {
    display:none!important; position:static!important;
    width:100%!important; min-width:0!important; max-height:none!important;
    margin:0!important; padding:0 0 8px 8px!important;
    background:transparent!important; border:0!important; box-shadow:none!important;
    opacity:1; visibility:visible;
    overflow:visible!important; transition:none;
  }
  .sidebar#navigation .has-submenu.expanded:not(.submenu-idle-hidden) .nav-submenu {
    display:flex!important; flex-direction:column; align-items:stretch;
  }
  .sidebar#navigation .nav-submenu a {
    display:flex; width:100%!important; min-height:30px!important; height:auto!important;
    padding:6px 0; margin:0;
    justify-content:flex-end; text-align:right;
    background:transparent!important; border:0!important; border-radius:0!important;
    box-shadow:none!important;
    font:400 clamp(12px,3.6vw,15px)/1.3 "Play",Arial,sans-serif;
    color:#424242; white-space:normal; overflow-wrap:anywhere;
    text-shadow:none!important;
  }
  .sidebar#navigation .nav-submenu a.active,
  .sidebar#navigation .nav-submenu a[aria-current="page"] {color:#df2424!important;}
  .sidebar#navigation .nav-link:focus-visible,
  .sidebar#navigation .nav-submenu a:focus-visible,
  .sidebar#navigation .submenu-toggle:focus-visible,
  .sidebar#navigation .wh-mobile-close:focus-visible {
    outline:2px solid #bd3434!important; outline-offset:2px;
  }
}
@media screen and (max-width:800px) and (prefers-reduced-motion:reduce) {
  .wh-mobile-menu-overlay,
  .sidebar#navigation,
  .sidebar#navigation.open {transition:none!important;}
}

@media screen and (max-width:800px) {
  .site-header .brand {
    left:clamp(26px,16.26vw,67px);
    top:8px;
    min-height:34px;
    transform:none;
  }
  .site-header .brand-title {
    width:clamp(148px,46.1vw,190px);
    height:auto;
    aspect-ratio:371 / 69;
    background-size:100% 100%;
  }
  .site-header .family-label {
    right:49px;
    top:33px;
    width:137px;
    font-size:11px;
    line-height:1.15;
  }
  .site-header .header-update {
    left:14px;
    font-size:10.5px;
  }
}

@media screen and (max-width:800px) {
  .wh-mobile-back-to-top {
    display:flex; align-items:center; justify-content:center;
    position:fixed; right:calc(clamp(16px,5.5vw,26px) + 10px); bottom:49px;
    width:49px; height:49px; padding:0;
    z-index:1500;
    border:1px solid rgba(66,66,62,.57); border-radius:50%;
    background:rgba(201,201,190,.54); color:rgba(61,61,58,.80);
    -webkit-backdrop-filter:blur(1px); backdrop-filter:blur(1px);
    box-shadow:none; cursor:pointer;
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .25s ease,visibility 0s linear .25s;
    -webkit-tap-highlight-color:transparent;
  }
  .wh-mobile-back-to-top.wh-show {
    visibility:visible; opacity:.82; pointer-events:auto;
    transition:opacity .25s ease,visibility 0s;
  }
  .wh-mobile-back-to-top svg {width:30px;height:25px;display:block;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
  .wh-mobile-back-to-top:focus-visible {outline:2px solid #5d6267;outline-offset:3px}
  body.wh-drawer-open .wh-mobile-back-to-top {opacity:0;pointer-events:none}
}
@media screen and (max-width:800px) and (prefers-reduced-motion:reduce) {
  .wh-mobile-back-to-top {transition:none!important}
}

@media screen and (max-width:800px) {
  html { scrollbar-gutter:auto!important; overflow-x:clip; }
  body.home, body.page-sub, body.occ-page {
    display:block!important; min-height:0!important;
    width:100%; max-width:100%; overflow-x:clip;
  }
  body > .site-header {
    position:sticky!important; top:0!important; z-index:2050;
  }
  body.home > .site-shell,
  body.page-sub > .site-shell,
  body.occ-page > .site-shell {
    display:block!important; width:100%!important;
    max-width:100%!important; min-height:0!important;
    padding:0!important;
  }
  body.home .site-shell > .page-layout,
  body.page-sub .site-shell > .page-layout,
  body.occ-page .site-shell > .page-layout {
    display:flow-root!important; height:auto!important;
    min-height:0!important;
  }
  body.page-sub .site-shell .page-layout > main.main-column,
  body.occ-page .site-shell .page-layout > main.main-column {
    box-sizing:border-box; width:calc(100% - 30px)!important;
    margin:15px 15px 0!important;
    padding-top:19px!important;
    height:auto!important; min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
  }
  body.home .site-shell .page-layout > main.main-column {
    width:100%!important; min-height:430px!important;
    height:auto!important; max-height:none!important;
    overflow:visible!important;
  }
  body.home .site-shell > .footer,
  body.page-sub .site-shell > .footer,
  body.occ-page .site-shell > .footer {
    position:relative!important; inset:auto!important;
    margin:15px 22px 30px!important;
    z-index:auto!important;
  }
  .wh-mobile-lower-mask,.wh-mobile-lower-edge { display:none!important; }
  body.occ-page .occ-current {left:min(120px,31%);right:4px;width:auto;}
  body.occ-page .occ-original-gallery,
  body.occ-page .occ-gallery-thumbs {max-width:100%;min-width:0;}
}

@media screen and (max-width:800px) {
  body.slug-computer .main-column > .wh-crest-scroll-content {width:100%; min-height:0!important;}
  body.slug-computer .bold-title {
    font-size:clamp(20px,5.45vw,24px)!important; line-height:1.15;
    margin:0 auto 13px!important; text-align:center;
  }
  body.slug-computer .title-sub {
    font-size:12px; line-height:1.24; margin:0 auto 22px;
    max-width:100%; text-align:center;
  }
  body.slug-computer .services-text {margin:0 0 10px!important; font-size:12px;}
  body.slug-computer .services-text > h1:first-child,
  body.slug-computer .services-text > h1:first-child * {
    font-size:12px!important;
  }
  body.slug-computer .services-text > h1:nth-child(2) {display:none!important;}
  body.slug-computer .services-text ul {
    box-sizing:border-box; padding-left:21px; margin:15px 0 0!important;
    font-size:12px!important; line-height:1.19;
  }
  body.slug-computer .services-text li {line-height:1.19!important;}
  body.slug-computer .services-text li h1,
  body.slug-computer .services-text li h1 * {
    font-size:12px!important; line-height:1.19!important;
  }
  body.slug-computer .center-body {
    width:100%!important; margin:8px auto 0!important; text-align:center;
  }
  body.slug-computer .center-body h1,
  body.slug-computer .center-body h1 span {font-size:14px!important; line-height:1.2!important;}
  body.slug-computer .center-body h1:first-child {margin-bottom:6px;}
  body.slug-computer .center-body a {color:inherit!important; text-decoration:none!important;}
  body.slug-computer.wh-wappen-uniform .main-column > .wh-wappen-footer {
    box-sizing:border-box!important; width:100%!important;
    margin:0 auto!important; padding:13px 0 0!important;
    display:flex; justify-content:center!important; align-items:center;
  }
  body.slug-computer .wh-wappen-footer > img.small-crest {
    width:112px!important; height:auto!important; max-width:100%!important;
    margin:0 auto!important; position:static!important;
  }
  body.slug-computer.wh-wappen-uniform .main-column {padding-bottom:16px!important;}
}

.site-header .brand-title {background:none!important;}
.site-header .brand-image {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border:0;
  box-shadow:none;
  filter:none;
}
.script-title .snell-title-image {
  display:inline-block;
  vertical-align:middle;
  max-width:100%;
  width:auto;
  height:1.2em;
  object-fit:contain;
  filter:drop-shadow(2px 3px 3px #7777);
}
.greet-one .snell-greeting-image,
.greet-two .snell-greeting-image {
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  margin:0 auto;
  box-shadow:none;
  filter:drop-shadow(2px 3px 3px rgba(0,0,0,.35));
}
.greet-one {width:445px;max-width:calc(100% - 14px);}
.greet-two {width:578px;max-width:calc(100% - 16px);}
@media screen and (max-width:800px) {
  .script-title .snell-title-image {height:1.2em;max-width:100%;}
  body.home .greet-one {width:min(100%,clamp(186px,61vw,258px));}
  body.home .greet-two {width:min(100%,clamp(268px,93vw,390px));}
}
@media screen and (max-width:350px) {
  body.home .greet-one {width:min(100%,clamp(180px,61vw,214px));}
  body.home .greet-two {width:min(100%,calc(100% - 26px));}
}

/* Wiederhergestellt: Desktop-Wappen in Hoehe der E-Mail-Zeile. */
@media screen and (min-width:801px) {
 body.wh-wappen-uniform .site-shell .page-layout > main.main-column {padding-bottom:15px!important;}
 body.slug-computer.wh-wappen-uniform .main-column > .wh-wappen-footer {margin-top:-115px!important;}
}
