:root{--mso-green:#67897B}.mso20{--green:#67897B;--ink:#111417;--cream:#ddd6c5;position:relative;display:block;width:100%;max-width:1780px;margin:0 auto;color:#101214;font-family:Inter,Arial,sans-serif;isolation:isolate;box-shadow:0 24px 80px rgba(0,0,0,.16)}.mso20 *{box-sizing:border-box}.mso20 a{color:inherit}
body:has(.mso20-hide-page-title) .entry-title,body:has(.mso20-hide-page-title) .page-title,body:has(.mso20-hide-page-title) h1.wp-block-post-title{display:none!important}body:has(.mso20-hide-theme-header) header.wp-block-template-part,body:has(.mso20-hide-theme-header) .site-header,body:has(.mso20-hide-theme-header) #masthead{display:none!important}
.mso20-topbar{position:sticky;top:0;z-index:200;min-height:74px;padding:10px clamp(16px,2.2vw,32px);display:grid;grid-template-columns:auto minmax(360px,1fr) auto auto;align-items:center;gap:16px;background:rgba(221,214,197,.95);backdrop-filter:blur(16px);box-shadow:0 14px 30px rgba(0,0,0,.20)}
.mso20-logo{width:112px;min-width:112px;height:60px;display:flex;align-items:center;justify-content:center;background:transparent;box-shadow:none;padding:0}.mso20-logo img{max-width:100%;max-height:100%;object-fit:contain}.mso20-appnav{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 10px;background:rgba(255,255,255,.84);border-radius:999px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05),0 10px 25px rgba(0,0,0,.08);min-width:0}.mso20-appnav a{text-decoration:none;text-transform:none;font-weight:950;font-size:var(--mso-nav-size,14px);line-height:1;padding:11px 17px;border-radius:999px;color:#121417;white-space:nowrap;letter-spacing:.01em}.mso20-appnav a:hover{background:#fff;box-shadow:0 8px 18px rgba(0,0,0,.10)}
.mso20-phone{font-size:20px;font-weight:950;white-space:nowrap;text-decoration:none;color:#111;letter-spacing:.03em}.mso20-phone span{color:#111;border-bottom:3px solid var(--green)}.mso20-stylebox{display:flex;align-items:center;justify-content:flex-end;min-width:190px}.mso20-toggle{border:0;cursor:pointer;background:#111;color:#fff;border-radius:999px;padding:7px;display:grid;grid-template-columns:1fr 1fr;align-items:center;box-shadow:0 9px 18px rgba(0,0,0,.32);white-space:nowrap;width:210px;overflow:hidden}.mso20-toggle span{display:block;text-align:center;border-radius:999px;padding:10px 14px;font-weight:950;font-size:13px;text-transform:uppercase;line-height:1}.mso20-toggle .is-before{background:#fff;color:#111}.mso20-toggle .is-after{background:transparent;color:#fff}.mso20[data-mode="clean"] .mso20-toggle .is-before{background:transparent;color:#fff}.mso20[data-mode="clean"] .mso20-toggle .is-after{background:#fff;color:var(--green)}.mso20-toggle:focus{outline:none}.mso20-toggle:focus-visible{outline:3px solid rgba(103,137,123,.55);outline-offset:3px}
.mso20-stage{position:relative;padding-bottom:54px;background-image:linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.46)),var(--dirty);background-size:cover;background-position:center top;transition:background .45s ease}.mso20[data-mode="clean"] .mso20-stage{background:#f5f2ec;color:#101214}.mso20-hero{position:relative;min-height:620px;padding:70px clamp(26px,6.4vw,132px) 54px;display:grid;grid-template-columns:minmax(420px,620px) minmax(300px,1fr);gap:clamp(28px,5.5vw,100px);align-items:center;background-image:linear-gradient(90deg,rgba(10,10,10,.36),rgba(10,10,10,.10)),var(--dirty);background-size:cover;background-position:center;transition:background-image .55s ease,color .35s ease}.mso20[data-mode="clean"] .mso20-hero{background-image:linear-gradient(90deg,rgba(255,255,255,.86),rgba(255,255,255,.20)),var(--clean);color:#101214}.mso20[data-mode="dirty"] .mso20-hero h1,.mso20[data-mode="dirty"] .mso20-hero h2,.mso20[data-mode="dirty"] .mso20-hero p,.mso20[data-mode="dirty"] .mso20-checks{color:#f1eee4;text-shadow:0 3px 18px rgba(0,0,0,.82)}
.mso20-note{margin:0 0 18px;font-size:16px;letter-spacing:.20em;text-transform:uppercase;font-weight:950;color:var(--green)!important}.mso20 h1{margin:0;text-transform:uppercase;font-size:clamp(42px,4vw,var(--mso-hero-title-size,64px));line-height:.93;font-weight:1000;letter-spacing:-.05em;max-width:720px}.mso20-line{width:250px;height:7px;background:var(--green);margin:20px 0}.mso20 h2{font-size:var(--mso-hero-subtitle-size,17px);line-height:1.26;margin:0 0 24px;font-weight:900;max-width:610px}.mso20-actions{display:flex;gap:16px;flex-wrap:wrap}.mso20-primary,.mso20-secondary,.mso20-intro a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 22px;border-radius:4px;text-transform:uppercase;text-decoration:none;font-size:14px;font-weight:950}.mso20-primary{background:var(--green);color:#fff}.mso20-secondary{background:rgba(255,255,255,.12);border:2px solid currentColor}.mso20-checks{list-style:none;margin:0;padding:0;display:grid;gap:16px;align-self:center;font-size:19px;font-weight:950}.mso20-checks li{display:flex;align-items:center;gap:13px}.mso20-checks li:before{content:'✓';width:32px;height:32px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;box-shadow:0 9px 18px rgba(0,0,0,.25)}
.mso20-grid{padding:0 clamp(18px,3vw,48px);display:grid;gap:18px}.mso20-grid-small{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:-28px}.mso20-grid-medium{grid-template-columns:1.15fr repeat(4,1fr);margin-top:28px}.mso20-grid-large{grid-template-columns:repeat(3,1fr);margin-top:28px}.mso20-card{position:relative;border-radius:12px;overflow:hidden;padding:24px 22px;display:flex;flex-direction:column;justify-content:flex-end;background-image:linear-gradient(rgba(10,10,10,.20),rgba(10,10,10,.20)),var(--dirty);background-size:cover;background-position:center;box-shadow:0 9px 20px rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.18);transition:transform .2s ease,background-image .45s ease,color .35s ease;color:#f3efe5}.mso20[data-mode="clean"] .mso20-card{background-image:linear-gradient(rgba(255,255,255,.06),rgba(255,255,255,.06)),var(--clean);box-shadow:0 10px 25px rgba(0,0,0,.14);border-color:rgba(0,0,0,.08);color:#101214}.mso20-card:hover{transform:translateY(-3px)}.mso20-card h3{margin:0 0 8px;text-transform:uppercase;font-size:var(--mso-small-title-size,14px);line-height:1.05;font-weight:1000;color:inherit;text-shadow:0 3px 12px rgba(0,0,0,.68);overflow-wrap:normal;hyphens:none;max-width:100%}.mso20[data-mode="clean"] .mso20-card h3{text-shadow:none;color:var(--green)}.mso20-card p{margin:0;font-size:var(--mso-small-text-size,12px);line-height:1.22;font-weight:850;text-shadow:0 2px 10px rgba(0,0,0,.72);overflow-wrap:normal;hyphens:none;max-width:100%}.mso20[data-mode="clean"] .mso20-card p{text-shadow:none;color:#172235}.mso20-small{min-height:210px}.mso20-medium{min-height:235px}.mso20-large{min-height:220px}.mso20-medium h3{font-size:var(--mso-medium-title-size,14px)}.mso20-medium p{font-size:var(--mso-medium-text-size,12px)}.mso20-large h3{font-size:var(--mso-large-title-size,16px)}.mso20-large p{font-size:var(--mso-large-text-size,13px)}.mso20-intro h3{color:var(--green);text-shadow:none}.mso20-intro a{background:var(--green);color:#fff;margin-top:18px;width:max-content}.mso20-floating{position:fixed;right:28px;bottom:28px;z-index:300;width:108px;height:108px;border-radius:50%;background:var(--green);color:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:5px solid rgba(255,255,255,.92);box-shadow:0 14px 35px rgba(0,0,0,.25);font-weight:950;text-transform:uppercase}.mso20-floating strong{font-size:28px;line-height:1}.mso20-floating span{font-size:13px;line-height:1.12;margin-top:5px}
@media(max-width:1280px){.mso20-topbar{grid-template-columns:auto 1fr auto;gap:12px}.mso20-appnav{grid-column:2 / 4;grid-row:2;justify-self:start;max-width:100%;overflow:auto}.mso20-stylebox{grid-column:3;grid-row:1}.mso20-phone{font-size:18px}.mso20-hero{grid-template-columns:1fr}.mso20-checks{max-width:540px}.mso20-grid-small{grid-template-columns:repeat(3,1fr)}.mso20-grid-medium{grid-template-columns:repeat(2,1fr)}.mso20-grid-large{grid-template-columns:1fr}}
@media(max-width:760px){.mso20{margin:0;max-width:none}.mso20-topbar{min-height:auto;padding:10px 12px;gap:10px;display:grid;grid-template-columns:auto 1fr}.mso20-logo{width:86px;min-width:86px;height:54px}.mso20-appnav{grid-column:1 / -1;grid-row:auto;width:100%;overflow:auto;justify-content:flex-start;padding:7px}.mso20-appnav a{font-size:13px;padding:11px 14px}.mso20-phone{font-size:17px;justify-self:end}.mso20-stylebox{grid-column:1 / -1;grid-row:auto;width:100%;justify-content:flex-start;min-width:0}.mso20-toggle{width:190px}.mso20-toggle span{font-size:12px;padding:10px 11px}.mso20-hero{min-height:560px;padding:38px 22px;display:block}.mso20 h1{font-size:var(--mso-hero-title-mobile,34px);line-height:.94;letter-spacing:-.045em;max-width:430px}.mso20-note{font-size:12px;letter-spacing:.16em}.mso20-checks{margin-top:30px;font-size:15px;gap:10px}.mso20-checks li:before{width:27px;height:27px}.mso20-grid{padding:0 14px;gap:14px}.mso20-grid-small,.mso20-grid-medium,.mso20-grid-large{grid-template-columns:1fr;margin-top:14px}.mso20-card{min-height:180px;padding:22px}.mso20-floating{width:88px;height:88px;right:14px;bottom:14px}.mso20-floating span{font-size:11px}.mso20-floating strong{font-size:22px}}

/* === RC11: App-like sticky menu, dirty/clean switch, contrast and wrapping fixes === */
.mso20{max-width:1840px;overflow:hidden}.mso20-topbar{position:sticky!important;top:0!important;z-index:9999!important;display:grid!important;grid-template-columns:auto minmax(360px,1fr) auto auto!important;grid-template-areas:"logo nav phone toggle"!important;gap:12px 18px!important;align-items:center!important;padding:12px clamp(18px,2.8vw,44px)!important;background:rgba(221,214,197,.96)!important;backdrop-filter:blur(18px)!important;box-shadow:0 16px 36px rgba(0,0,0,.22)!important}.mso20-logo{grid-area:logo!important;width:110px!important;min-width:110px!important;height:64px!important}.mso20-logo img{filter:none!important}.mso20-appnav{grid-area:nav!important;justify-self:center!important;width:min(760px,100%)!important;display:flex!important;justify-content:center!important;gap:6px!important;background:rgba(255,255,255,.92)!important;border-radius:999px!important;padding:8px!important;box-shadow:0 10px 28px rgba(0,0,0,.10),inset 0 0 0 1px rgba(0,0,0,.05)!important;overflow:visible!important}.mso20-appnav a{font-size:min(var(--mso-nav-size,13px),14px)!important;font-weight:900!important;padding:12px 18px!important;text-decoration:none!important;text-transform:none!important;border-radius:999px!important;white-space:nowrap!important;color:#101214!important;line-height:1!important}.mso20-appnav a:hover{background:#fff!important;box-shadow:0 8px 18px rgba(0,0,0,.10)!important}.mso20-phone{grid-area:phone!important;justify-self:end!important;font-size:clamp(18px,1.55vw,27px)!important;line-height:1!important;color:#111!important;font-weight:1000!important;letter-spacing:.035em!important}.mso20-phone span{border-bottom:4px solid var(--green)!important}.mso20-stylebox{grid-area:toggle!important;min-width:0!important;justify-self:end!important}.mso20-toggle{width:260px!important;max-width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;padding:7px!important;border-radius:999px!important;background:#101010!important;box-shadow:0 12px 26px rgba(0,0,0,.34)!important}.mso20-toggle span{font-size:13px!important;font-weight:1000!important;padding:12px 16px!important;border-radius:999px!important;line-height:1!important;white-space:nowrap!important}.mso20-toggle .is-before{background-image:linear-gradient(rgba(0,0,0,.26),rgba(0,0,0,.36)),url('../img/dirty/small_3.webp')!important;background-size:cover!important;background-position:center!important;color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.65)!important}.mso20-toggle .is-after{background:#fff!important;color:#111!important;text-shadow:none!important}.mso20[data-mode="clean"] .mso20-toggle .is-before{background:#151515!important;color:#fff!important}.mso20[data-mode="clean"] .mso20-toggle .is-after{background:#fff!important;color:var(--green)!important;box-shadow:inset 0 0 0 2px rgba(103,137,123,.35)!important}
.mso20[data-mode="dirty"] .mso20-hero h1{color:#f6f1e8!important;text-shadow:0 4px 22px rgba(0,0,0,.9)!important}.mso20[data-mode="dirty"] .mso20-hero h2,.mso20[data-mode="dirty"] .mso20-hero-copy p,.mso20[data-mode="dirty"] .mso20-checks{color:#f0eadf!important;text-shadow:0 3px 18px rgba(0,0,0,.92)!important}.mso20[data-mode="dirty"] .mso20-note{color:#93b5a8!important;text-shadow:0 3px 14px rgba(0,0,0,.85)!important}.mso20[data-mode="dirty"] .mso20-secondary{color:#fff!important;background:rgba(0,0,0,.28)!important;border-color:rgba(255,255,255,.78)!important;text-shadow:0 2px 8px rgba(0,0,0,.9)!important}.mso20[data-mode="dirty"] .mso20-primary{color:#fff!important;text-shadow:none!important}.mso20 h1{font-size:min(var(--mso-hero-title-size,54px),58px)!important;line-height:.94!important;letter-spacing:-.055em!important;max-width:760px!important}.mso20 h2{max-width:720px!important}.mso20-note{letter-spacing:.22em!important}.mso20-checks{font-size:clamp(15px,1.15vw,18px)!important}.mso20-hero{min-height:560px!important;padding:clamp(42px,5vw,82px) clamp(28px,6vw,130px) 48px!important;grid-template-columns:minmax(420px,680px) minmax(300px,1fr)!important}.mso20-card h3{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}.mso20-card p{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}.mso20-grid-small{gap:18px!important}.mso20-small{min-height:205px!important}
@media(max-width:1500px){.mso20-topbar{grid-template-columns:auto 1fr auto!important;grid-template-areas:"logo phone toggle" "nav nav nav"!important}.mso20-appnav{justify-self:center!important;width:min(760px,100%)!important}.mso20-logo{width:96px!important;min-width:96px!important}.mso20-toggle{width:240px!important}.mso20-phone{font-size:clamp(18px,2vw,25px)!important}.mso20 h1{font-size:min(var(--mso-hero-title-size,54px),52px)!important}.mso20-hero{grid-template-columns:1fr!important}.mso20-checks{margin-top:26px!important}}
@media(max-width:880px){.mso20-topbar{grid-template-columns:1fr!important;grid-template-areas:"logo" "nav" "phone" "toggle"!important;justify-items:start!important;padding:14px!important}.mso20-logo{width:90px!important;min-width:90px!important;height:58px!important}.mso20-appnav{justify-self:stretch!important;width:100%!important;overflow-x:auto!important;justify-content:flex-start!important;gap:4px!important;padding:7px!important}.mso20-appnav a{font-size:13px!important;padding:11px 15px!important}.mso20-phone{justify-self:start!important;font-size:22px!important}.mso20-stylebox{justify-self:start!important;width:auto!important}.mso20-toggle{width:220px!important}.mso20-hero{min-height:520px!important;padding:34px 20px 40px!important;display:block!important}.mso20 h1{font-size:min(var(--mso-hero-title-mobile,28px),32px)!important;line-height:.97!important;letter-spacing:-.04em!important;max-width:360px!important}.mso20 h2{font-size:min(var(--mso-hero-subtitle-size,17px),16px)!important;max-width:420px!important}.mso20-note{font-size:12px!important;letter-spacing:.16em!important}.mso20-line{width:190px!important;height:5px!important}.mso20-actions{gap:10px!important}.mso20-primary,.mso20-secondary{min-height:42px!important;padding:10px 14px!important;font-size:12px!important}.mso20-checks{font-size:15px!important}.mso20-grid-small,.mso20-grid-medium,.mso20-grid-large{grid-template-columns:1fr!important}.mso20-card{min-height:170px!important}}
@media(min-width:881px) and (max-width:1280px){.mso20-grid-small{grid-template-columns:repeat(3,minmax(0,1fr))!important}.mso20-grid-medium{grid-template-columns:repeat(2,minmax(0,1fr))!important}.mso20-grid-large{grid-template-columns:1fr!important}}


/* === RC12: Tablet hero/check layout + mobile call bubble collision fix === */
@media (min-width: 881px) and (max-width: 1350px){
  .mso20-topbar{
    grid-template-columns:auto 1fr auto!important;
    grid-template-areas:"logo phone toggle" "nav nav nav"!important;
    row-gap:10px!important;
  }
  .mso20-appnav{
    width:min(720px,92vw)!important;
    justify-self:center!important;
  }
  .mso20-hero{
    display:grid!important;
    grid-template-columns:minmax(360px,560px) minmax(260px,1fr)!important;
    align-items:start!important;
    min-height:660px!important;
    padding:56px clamp(34px,5vw,74px) 72px!important;
    gap:36px!important;
  }
  .mso20 h1{
    font-size:min(var(--mso-hero-title-size,54px),48px)!important;
    max-width:560px!important;
  }
  .mso20 h2{
    max-width:560px!important;
  }
  .mso20-checks{
    align-self:start!important;
    justify-self:end!important;
    margin-top:88px!important;
    max-width:380px!important;
    font-size:16px!important;
  }
  .mso20-grid-small{
    margin-top:0!important;
  }
}
@media (min-width: 881px) and (max-width: 1050px){
  .mso20-hero{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding-bottom:48px!important;
  }
  .mso20-checks{
    justify-self:start!important;
    margin-top:24px!important;
    max-width:520px!important;
  }
}
@media (max-width: 880px){
  .mso20-floating{
    left:14px!important;
    right:auto!important;
    bottom:92px!important;
    width:82px!important;
    height:82px!important;
    border-width:4px!important;
  }
  .mso20-floating span{font-size:10px!important;}
  .mso20-floating strong{font-size:20px!important;}
  .mso20-grid-small{margin-top:0!important;}
}
@media (max-width: 560px){
  .mso20-floating{
    bottom:104px!important;
    width:76px!important;
    height:76px!important;
  }
}

/* === RC14 Paint Roller Transition: slower Rollo2 image === */
.mso20-toggle.is-pressed{transform:scale(.985)!important;filter:brightness(.94)!important}
.mso20-is-painting{pointer-events:none}.mso20-is-painting .mso20-toggle{pointer-events:none!important}
.mso20-paint-reveal{position:fixed;inset:0;z-index:2147483000;pointer-events:none;overflow:hidden;opacity:1;transition:opacity .28s ease}.mso20-paint-reveal.mso20-paint-out{opacity:0}.mso20-paint-roller{position:absolute;left:0;top:15vh;width:min(430px,34vw);height:auto;filter:none!important;will-change:transform,top;transform-origin:48% 52%;animation:mso20-roller-wobble .72s ease-in-out infinite alternate}.mso20-paint-wipe{position:absolute;left:0;width:100vw;height:180px;filter:blur(1px);mix-blend-mode:normal;opacity:.86;will-change:transform,opacity}.mso20-paint-reveal.is-clean .mso20-paint-wipe:after{content:'';position:absolute;inset:18px 0 0;background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,.08));opacity:.65}.mso20-paint-reveal.is-dirty .mso20-paint-roller{filter:none!important}
@keyframes mso20-roller-wobble{from{margin-top:-2px}to{margin-top:3px}}
@media(max-width:780px){.mso20-paint-roller{width:320px}.mso20-paint-wipe{height:150px}}
@media(prefers-reduced-motion:reduce){.mso20-paint-reveal{display:none!important}.mso20-is-painting{pointer-events:auto}}

/* RC15 transparent roller/logo cleanup */
.mso20-logo,.mso20-logo img{background:transparent!important;box-shadow:none!important;filter:none!important;}
.mso20-paint-roller{background:transparent!important;box-shadow:none!important;filter:none!important;}

/* === RC16: single slow roller pass, mobile header, default Vorher, stable release === */
.mso20-topbar{
  grid-template-columns:auto auto minmax(260px,1fr) auto!important;
  grid-template-areas:"logo phone nav toggle"!important;
  gap:12px 20px!important;
  align-items:center!important;
}
.mso20-logo{grid-area:logo!important;width:116px!important;min-width:116px!important;height:70px!important;justify-self:start!important;}
.mso20-phone{grid-area:phone!important;justify-self:start!important;font-size:clamp(20px,1.7vw,28px)!important;}
.mso20-appnav{grid-area:nav!important;justify-self:center!important;width:min(720px,100%)!important;}
.mso20-stylebox{grid-area:toggle!important;position:relative!important;justify-self:end!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:6px!important;}
.mso20-switch-hint{display:none;color:var(--green);font-weight:1000;font-size:13px;letter-spacing:.02em;text-shadow:0 2px 8px rgba(255,255,255,.65);}
.mso20[data-mode="dirty"] .mso20-switch-hint{display:none;}
.mso20-paint-reveal{z-index:2147483000!important;}
.mso20-paint-roller{width:min(560px,42vw)!important;max-width:none!important;background:transparent!important;box-shadow:none!important;filter:drop-shadow(0 18px 28px rgba(0,0,0,.24))!important;transform-origin:50% 50%!important;animation:mso20-roller-wobble 1.2s ease-in-out infinite alternate!important;}
.mso20-paint-wipe{height:100vh!important;filter:blur(.6px)!important;opacity:.88!important;}
@keyframes mso20-roller-wobble{from{margin-top:-1px}to{margin-top:2px}}

@media(max-width:1500px){
  .mso20-topbar{
    grid-template-columns:auto auto 1fr!important;
    grid-template-areas:"logo phone toggle" "nav nav nav"!important;
    gap:10px 16px!important;
  }
  .mso20-phone{justify-self:start!important;}
  .mso20-stylebox{justify-self:end!important;}
  .mso20-appnav{justify-self:center!important;width:min(740px,96%)!important;}
}
@media(max-width:880px){
  .mso20-topbar{
    grid-template-columns:auto 1fr!important;
    grid-template-areas:"logo phone" "nav nav" "toggle toggle"!important;
    justify-items:stretch!important;
    padding:12px 14px 16px!important;
  }
  .mso20-logo{width:92px!important;min-width:92px!important;height:58px!important;}
  .mso20-phone{align-self:center!important;justify-self:end!important;font-size:22px!important;line-height:1.1!important;white-space:nowrap!important;}
  .mso20-appnav{justify-self:stretch!important;width:100%!important;overflow-x:auto!important;justify-content:flex-start!important;}
  .mso20-stylebox{justify-self:start!important;align-items:flex-start!important;margin-top:2px!important;}
  .mso20[data-mode="dirty"] .mso20-switch-hint{display:block!important;margin-left:12px!important;}
  .mso20[data-mode="clean"] .mso20-switch-hint{display:none!important;}
  .mso20-toggle{width:220px!important;}
  .mso20-paint-roller{width:300px!important;}
  .mso20-paint-wipe{height:100vh!important;}
}
@media(max-width:480px){
  .mso20-phone{font-size:20px!important;}
  .mso20-logo{width:86px!important;min-width:86px!important;}
  .mso20-toggle{width:210px!important;}
  .mso20-paint-roller{width:260px!important;}
}


/* === RC17: mobile-only hint, no roller when switching back to Vorher, faster final state === */
.mso20-switch-hint{display:none!important;}
@media(max-width:640px){
  .mso20[data-mode="dirty"] .mso20-switch-hint{
    display:block!important;
    position:relative!important;
    margin:0 0 6px 8px!important;
    color:#67897B!important;
    font-weight:1000!important;
    font-size:13px!important;
    line-height:1.1!important;
    letter-spacing:.01em!important;
    text-shadow:0 2px 10px rgba(255,255,255,.9)!important;
    animation:mso20-hint-pulse 1.2s ease-in-out infinite alternate!important;
  }
  .mso20[data-mode="dirty"] .mso20-switch-hint:after{
    content:'↓';
    display:inline-block;
    margin-left:7px;
    font-size:18px;
    transform:translateY(2px);
  }
}
@keyframes mso20-hint-pulse{from{opacity:.68;transform:translateX(0)}to{opacity:1;transform:translateX(5px)}}
.mso20[data-mode="clean"] .mso20-switch-hint{display:none!important;}
.mso20-paint-reveal{transition:opacity .20s ease!important;}
.mso20-paint-reveal.mso20-paint-out{opacity:0!important;}
.mso20-paint-roller{animation:mso20-roller-wobble 1.6s ease-in-out infinite alternate!important;}


/* === RC18: Nachher-Sprechblase + schnellerer Abschluss === */
.mso20-stylebox{position:relative!important;}
.mso20-switch-hint{
  display:block!important;
  position:absolute!important;
  right:6px!important;
  top:calc(100% + 10px)!important;
  z-index:10001!important;
  max-width:190px!important;
  padding:9px 13px!important;
  border-radius:18px 18px 18px 4px!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:0 10px 24px rgba(0,0,0,.22)!important;
  font-weight:950!important;
  font-size:12px!important;
  line-height:1.08!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  text-shadow:none!important;
  pointer-events:none!important;
  transform:translateY(0)!important;
  animation:mso20-bubble-nudge 1.1s ease-in-out infinite alternate!important;
}
.mso20-switch-hint:before{
  content:''!important;
  position:absolute!important;
  top:-7px!important;
  right:35px!important;
  width:14px!important;
  height:14px!important;
  background:#fff!important;
  transform:rotate(45deg)!important;
  box-shadow:-3px -3px 8px rgba(0,0,0,.04)!important;
}
.mso20[data-mode="clean"] .mso20-switch-hint{display:none!important;}
@keyframes mso20-bubble-nudge{from{transform:translateY(0)}to{transform:translateY(4px)}}
.mso20-is-painting .mso20-switch-hint{display:none!important;}
.mso20-paint-reveal{transition:opacity .12s ease!important;}
.mso20-paint-roller{filter:none!important;box-shadow:none!important;background:transparent!important;}
@media(max-width:1500px){
  .mso20-switch-hint{right:10px!important;top:calc(100% + 8px)!important;font-size:12px!important;max-width:180px!important;}
}
@media(max-width:880px){
  .mso20-switch-hint{left:235px!important;right:auto!important;top:8px!important;border-radius:18px 18px 18px 4px!important;max-width:165px!important;font-size:11px!important;padding:8px 11px!important;}
  .mso20-switch-hint:before{left:-5px!important;right:auto!important;top:14px!important;}
}
@media(max-width:520px){
  .mso20-switch-hint{left:222px!important;top:7px!important;max-width:130px!important;font-size:10px!important;padding:7px 9px!important;}
}


/* === RC19: mobile speech bubble alignment + card text higher + author build === */
.mso20-card{
  justify-content:flex-start!important;
  padding-top:32px!important;
}
.mso20-small{padding-top:30px!important;}
.mso20-medium{padding-top:32px!important;}
.mso20-large{padding-top:34px!important;}
.mso20-card h3{margin-top:0!important;margin-bottom:10px!important;}
.mso20-card p{margin-top:0!important;}
.mso20-intro a{margin-top:18px!important;}

@media(max-width:880px){
  .mso20-stylebox{
    position:relative!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    width:100%!important;
    margin-top:2px!important;
  }
  .mso20-toggle{
    order:1!important;
    flex:0 0 210px!important;
    width:210px!important;
  }
  .mso20[data-mode="dirty"] .mso20-switch-hint{
    display:block!important;
  }
  .mso20-switch-hint{
    order:2!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    align-self:center!important;
    max-width:165px!important;
    padding:9px 12px!important;
    border-radius:18px 18px 18px 5px!important;
    font-size:11px!important;
    line-height:1.15!important;
    text-align:center!important;
  }
  .mso20-switch-hint:before{
    left:-5px!important;
    right:auto!important;
    top:50%!important;
    transform:translateY(-50%) rotate(45deg)!important;
  }
  .mso20-switch-hint:after{
    display:inline!important;
    margin-left:4px!important;
    content:'↓'!important;
  }
  .mso20-card{
    justify-content:flex-start!important;
    padding:28px 22px 22px!important;
  }
}

@media(max-width:430px){
  .mso20-stylebox{gap:8px!important;}
  .mso20-toggle{flex-basis:190px!important;width:190px!important;}
  .mso20-toggle span{font-size:11px!important;padding:10px 9px!important;}
  .mso20-switch-hint{max-width:136px!important;font-size:10px!important;padding:8px 9px!important;}
}

/* === RC21: faster visual switch + compact responsive menu + backend menu editor === */
.mso20-paint-reveal{transition:opacity .06s ease!important;}
.mso20-paint-reveal.mso20-paint-out{opacity:0!important;}

.mso20-appnav{
  overflow:visible!important;
  flex-wrap:wrap!important;
  row-gap:6px!important;
  column-gap:7px!important;
  padding:6px 8px!important;
}
.mso20-appnav a{
  padding:9px 13px!important;
  font-size:clamp(11px, .85vw, var(--mso-nav-size,13px))!important;
}
@media(max-width:1100px){
  .mso20-topbar{
    min-height:0!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    gap:7px 12px!important;
  }
  .mso20-appnav{
    width:100%!important;
    justify-content:center!important;
    overflow:visible!important;
    max-width:100%!important;
  }
  .mso20-appnav a{
    padding:8px 11px!important;
    font-size:12px!important;
  }
}
@media(max-width:880px){
  .mso20-topbar{
    grid-template-columns:auto 1fr!important;
    grid-template-areas:"logo phone" "toggle toggle" "nav nav"!important;
    padding:8px 10px 10px!important;
    gap:7px 10px!important;
  }
  .mso20-logo{width:78px!important;min-width:78px!important;height:48px!important;}
  .mso20-phone{font-size:18px!important;}
  .mso20-stylebox{margin-top:0!important;}
  .mso20-appnav{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    overflow:visible!important;
    white-space:normal!important;
    border-radius:18px!important;
    padding:5px!important;
    gap:5px!important;
  }
  .mso20-appnav a{
    flex:0 1 auto!important;
    min-width:0!important;
    padding:8px 9px!important;
    font-size:11px!important;
    line-height:1!important;
  }
}
@media(max-width:430px){
  .mso20-topbar{padding-left:8px!important;padding-right:8px!important;gap:6px!important;}
  .mso20-appnav a{padding:7px 8px!important;font-size:10.5px!important;}
  .mso20-phone{font-size:16px!important;}
}

/* === RC22: Wechsel deutlich früher / kein Nachlauf-Gefühl === */
.mso20-paint-reveal{transition:opacity .03s linear!important;}
.mso20-paint-reveal.mso20-paint-out{opacity:0!important;}

/* === RC23: project galleries, native media backend, popup viewer === */
.mso20-has-projects{cursor:pointer;position:relative}.mso20-has-projects:focus-visible{outline:4px solid rgba(103,137,123,.75);outline-offset:3px}.mso20-card-open{position:absolute;right:14px;bottom:12px;padding:6px 10px;border-radius:999px;background:rgba(17,20,23,.82);color:#fff;font-size:11px;font-weight:900;opacity:0;transform:translateY(5px);transition:.2s}.mso20-has-projects:hover .mso20-card-open,.mso20-has-projects:focus .mso20-card-open{opacity:1;transform:none}.mso20[data-mode="clean"] .mso20-card-open{background:var(--green)}
html.mso20-modal-open{overflow:hidden}.mso20-modal[hidden]{display:none!important}.mso20-modal{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;padding:24px}.mso20-modal-backdrop{position:absolute;inset:0;background:rgba(9,11,10,.82);backdrop-filter:blur(8px)}.mso20-modal-dialog{position:relative;z-index:1;width:min(1120px,96vw);max-height:92vh;overflow:auto;background:#f7f5ef;border-radius:22px;box-shadow:0 30px 100px rgba(0,0,0,.55);padding:24px;color:#111}.mso20-modal-close{position:absolute;right:14px;top:12px;width:42px;height:42px;border:0;border-radius:50%;background:#111;color:#fff;font-size:30px;line-height:1;cursor:pointer;z-index:3}.mso20-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-right:48px;margin-bottom:16px}.mso20-modal-kicker{display:block;color:var(--green);font-size:12px;font-weight:950;letter-spacing:.18em;text-transform:uppercase}.mso20-modal-head h2{font-size:clamp(25px,3vw,42px);margin:4px 0 5px;line-height:1}.mso20-modal-head p{margin:0;max-width:720px}.mso20-project-nav{display:flex;align-items:center;gap:10px;white-space:nowrap}.mso20-project-nav button{width:38px;height:38px;border:0;border-radius:50%;background:var(--green);color:#fff;font-size:26px;cursor:pointer}.mso20-modal-image-wrap{position:relative;display:block;width:100%;height:min(62vh,650px);padding:0;border:0;border-radius:16px;overflow:hidden;background:#181a18;cursor:pointer}.mso20-modal-image-wrap img{width:100%;height:100%;object-fit:contain;display:block}.mso20-stage-label{position:absolute;left:14px;top:14px;background:#111;color:#fff;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:950;text-transform:uppercase}.mso20-image-hint{position:absolute;right:14px;bottom:14px;background:rgba(255,255,255,.94);color:#111;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:900}.mso20-modal-caption{font-size:14px;font-weight:700;margin:10px 2px 12px;min-height:20px}.mso20-thumbs{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.mso20-thumb{flex:0 0 150px;border:3px solid transparent;border-radius:12px;padding:0;overflow:hidden;background:#fff;cursor:pointer;text-align:left}.mso20-thumb.is-active{border-color:var(--green)}.mso20-thumb img{display:block;width:100%;height:86px;object-fit:cover}.mso20-thumb span{display:block;padding:7px 9px;font-size:11px;font-weight:900}.mso20[data-mode="dirty"] .mso20-has-projects:after{content:'↗';position:absolute;right:13px;top:12px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.88);color:#111;font-weight:950}.mso20[data-mode="clean"] .mso20-has-projects:after{content:'↗';position:absolute;right:13px;top:12px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:950}
@media(max-width:760px){.mso20-modal{padding:8px}.mso20-modal-dialog{width:100%;max-height:96vh;border-radius:16px;padding:16px}.mso20-modal-head{display:block;padding-right:42px}.mso20-project-nav{margin-top:12px}.mso20-modal-image-wrap{height:52vh}.mso20-thumb{flex-basis:112px}.mso20-thumb img{height:64px}.mso20-card-open{opacity:1;transform:none;font-size:10px}}

/* === RC24: Projekt-Kacheln und Galerie-Popup === */
.mso20-has-projects:after{display:none!important;content:none!important}
.mso20-has-projects{padding-bottom:72px!important}
.mso20-card-open{
  left:50%!important;right:auto!important;bottom:18px!important;
  transform:translateX(-50%)!important;opacity:1!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:132px!important;padding:9px 14px!important;border-radius:999px!important;
  background:rgba(17,20,23,.88)!important;color:#fff!important;
  font-size:11px!important;font-weight:950!important;text-transform:none!important;
  box-shadow:0 8px 22px rgba(0,0,0,.24)!important;white-space:nowrap!important;
}
.mso20[data-mode="clean"] .mso20-card-open{background:var(--green)!important;color:#fff!important}
.mso20-modal{padding:20px!important}
.mso20-modal-backdrop{background:rgba(14,16,15,.76)!important;backdrop-filter:blur(10px)!important}
.mso20-modal-dialog{
  width:min(1100px,96vw)!important;max-height:92vh!important;
  background:#f7f5ef!important;color:#172235!important;
  border:1px solid rgba(103,137,123,.22)!important;border-radius:24px!important;
  padding:26px!important;box-shadow:0 32px 110px rgba(0,0,0,.48)!important;
}
.mso20-modal-close{
  position:absolute!important;right:18px!important;top:18px!important;
  width:46px!important;height:46px!important;border-radius:50%!important;
  background:#172235!important;color:#fff!important;border:0!important;
  display:grid!important;place-items:center!important;padding:0!important;
  font-size:30px!important;line-height:1!important;box-shadow:0 8px 22px rgba(0,0,0,.22)!important;
}
.mso20-modal-close:hover{background:var(--green)!important}
.mso20-modal-head{display:block!important;padding:0 62px 0 0!important;margin:0 0 18px!important}
.mso20-modal-head h2{color:#172235!important;margin:5px 0 7px!important}
.mso20-modal-head p{color:#353b42!important}
.mso20-project-nav{display:none!important}
.mso20-modal-image-wrap{
  appearance:none!important;-webkit-appearance:none!important;
  width:100%!important;height:min(64vh,680px)!important;
  padding:0!important;border:1px solid rgba(103,137,123,.20)!important;
  border-radius:18px!important;overflow:hidden!important;
  background:#ebe7de!important;color:inherit!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)!important;
}
.mso20-modal-image-wrap:hover,.mso20-modal-image-wrap:focus{background:#ebe7de!important;outline:none!important}
.mso20-modal-image-wrap img{background:transparent!important;object-fit:contain!important}
.mso20-stage-label{background:#172235!important;color:#fff!important}
.mso20-image-hint{
  left:50%!important;right:auto!important;bottom:18px!important;transform:translateX(-50%)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  background:rgba(247,245,239,.94)!important;color:#172235!important;
  border:1px solid rgba(103,137,123,.28)!important;box-shadow:0 8px 24px rgba(0,0,0,.18)!important;
  font-size:12px!important;padding:9px 15px!important;
}
.mso20-thumb{background:#fff!important;color:#172235!important;border-color:transparent!important}
.mso20-thumb.is-active{border-color:var(--green)!important}
@media(max-width:760px){
  .mso20-modal{padding:7px!important}.mso20-modal-dialog{padding:16px!important;border-radius:17px!important}
  .mso20-modal-close{right:11px!important;top:11px!important;width:40px!important;height:40px!important}
  .mso20-modal-head{padding-right:46px!important}.mso20-modal-image-wrap{height:56vh!important}
  .mso20-card-open{bottom:14px!important}
}

/* === RC25 Team section === */
.mso20-team-section{margin:30px clamp(18px,3vw,48px) 0;padding:clamp(24px,3vw,44px);border-radius:20px;background:rgba(248,246,240,.94);box-shadow:0 12px 32px rgba(0,0,0,.14);color:#172235}
.mso20[data-mode="dirty"] .mso20-team-section{background:rgba(26,27,23,.88);color:#f4f0e6;border:1px solid rgba(255,255,255,.12)}
.mso20-team-head{max-width:820px;margin-bottom:22px}.mso20-team-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.18em;font-weight:950;color:var(--green)}.mso20-team-head h2{margin:0 0 8px;font-size:clamp(30px,3vw,48px);line-height:1;font-weight:1000}.mso20-team-head>p:last-child{margin:0;font-weight:750;font-size:16px}
.mso20-team-gallery{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:18px}.mso20-team-photo{position:relative;border:0;padding:0;min-height:260px;border-radius:16px;overflow:hidden;cursor:pointer;background:#ddd;box-shadow:0 10px 24px rgba(0,0,0,.18);text-align:left}.mso20-team-photo.is-featured{grid-row:span 2;min-height:538px}.mso20-team-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}.mso20-team-photo:hover img{transform:scale(1.025)}.mso20-team-photo>span{position:absolute;left:0;right:0;bottom:0;padding:28px 20px 18px;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff;display:flex;flex-direction:column;gap:4px}.mso20-team-photo strong{font-size:18px;font-weight:1000}.mso20-team-photo small{font-size:13px;font-weight:750;line-height:1.3}
.mso20-member-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:24px}.mso20-member-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.12)}.mso20-member-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.mso20-member-card>div{padding:18px}.mso20-member-card h3{margin:0 0 4px;font-size:19px;text-transform:none;text-shadow:none;color:#172235}.mso20-member-card p{margin:0;color:#46505e;text-shadow:none;font-weight:650}.mso20-member-role{color:var(--green)!important;font-weight:900!important;margin-bottom:8px!important}
.mso20-team-lightbox[hidden]{display:none!important}.mso20-team-lightbox{position:fixed;inset:0;z-index:100001;display:grid;place-items:center;padding:24px}.mso20-team-lightbox-bg{position:absolute;inset:0;background:rgba(12,14,13,.88);backdrop-filter:blur(8px)}.mso20-team-lightbox-dialog{position:relative;z-index:1;width:min(1180px,94vw);max-height:92vh;background:#f7f5ef;border-radius:20px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.5)}.mso20-team-lightbox-dialog img{width:100%;max-height:78vh;object-fit:contain;display:block;background:#111}.mso20-team-lightbox-dialog>div{padding:16px 22px;display:flex;gap:12px;align-items:baseline}.mso20-team-lightbox-dialog strong{font-size:18px}.mso20-team-lightbox-dialog span{font-size:14px;color:#52605b}.mso20-team-lightbox-close{position:absolute;top:14px;right:14px;z-index:2;width:46px;height:46px;border-radius:50%;border:0;background:#fff;color:#111;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.25)}
@media(max-width:1100px){.mso20-team-gallery{grid-template-columns:1fr 1fr}.mso20-team-photo.is-featured{grid-column:1/-1;grid-row:auto;min-height:420px}.mso20-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.mso20-team-section{margin:16px 14px 0;padding:20px 14px}.mso20-team-gallery{grid-template-columns:1fr;gap:14px}.mso20-team-photo,.mso20-team-photo.is-featured{min-height:230px;grid-column:auto}.mso20-member-grid{grid-template-columns:1fr}.mso20-team-lightbox{padding:10px}.mso20-team-lightbox-dialog{width:100%;border-radius:14px}.mso20-team-lightbox-dialog img{max-height:72vh}.mso20-team-lightbox-dialog>div{display:block}.mso20-team-lightbox-dialog span{display:block;margin-top:4px}}

/* === RC26: Team via existing tile + unified popup === */
.mso20-team-section{display:none!important}
.mso20-modal-close{
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;line-height:1!important;background:#67897B!important;color:#fff!important;
  font-family:Arial,sans-serif!important;font-size:30px!important;font-weight:400!important;
}
.mso20-modal-close:hover,.mso20-modal-close:focus{background:#526f63!important;color:#fff!important;outline:3px solid rgba(103,137,123,.35)!important;outline-offset:2px}
.mso20-has-projects:after{display:none!important;content:none!important}
.mso20-card-open{left:50%!important;right:auto!important;bottom:18px!important;transform:translate(-50%,0)!important;opacity:1!important;white-space:nowrap!important;background:#67897B!important;color:#fff!important}
.mso20-has-projects:hover .mso20-card-open,.mso20-has-projects:focus .mso20-card-open{transform:translate(-50%,-2px)!important}

/* === RC27: Teammitglieder im Popup + mobiles, sicher schliessbares Popup === */
@media (max-width:760px){
  .mso20-modal{
    align-items:flex-start!important;
    justify-content:center!important;
    overflow-y:auto!important;
    padding:max(8px, env(safe-area-inset-top)) 8px max(8px, env(safe-area-inset-bottom))!important;
  }
  .mso20-modal-dialog{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    max-height:calc(100dvh - max(16px, env(safe-area-inset-top)) - max(16px, env(safe-area-inset-bottom)))!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:14px!important;
    padding-top:62px!important;
    border-radius:16px!important;
  }
  .mso20-modal-close{
    position:fixed!important;
    top:max(14px, env(safe-area-inset-top))!important;
    right:16px!important;
    width:44px!important;
    height:44px!important;
    z-index:100005!important;
    box-shadow:0 8px 24px rgba(0,0,0,.35)!important;
  }
  .mso20-modal-head{
    padding-right:0!important;
    margin-bottom:12px!important;
  }
  .mso20-modal-head h2{
    font-size:clamp(25px,8vw,34px)!important;
    line-height:1.05!important;
  }
  .mso20-modal-head p{font-size:14px!important;line-height:1.35!important}
  .mso20-modal-image-wrap{
    height:min(48dvh,470px)!important;
    min-height:280px!important;
    border-radius:14px!important;
  }
  .mso20-modal-image-wrap img{max-height:100%!important}
  .mso20-image-hint{bottom:12px!important;font-size:11px!important;padding:8px 12px!important}
  .mso20-thumbs{padding-bottom:10px!important}
}
