/* Shared acessio identity. Loaded after page styles. */
:root{--cd-teal:#075b62;--cd-violet:#54447b;--cd-green:#3b612b;--cd-earth:#80523d}
body{background:var(--canvas,#f3f1f0)}
.header{font-family:var(--sans,Figtree,system-ui,sans-serif);padding-inline:max(var(--gutter),calc((100% - var(--max)) / 2 + var(--gutter)));height:88px;min-height:88px;box-sizing:border-box}
.header .brand__logo{display:block;width:130px;height:33px;max-width:none}
.header .nav-cta{font:600 14px/1.2 var(--sans);padding:14px 22px;border-radius:999px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.site-menu{font-family:var(--sans)}.site-menu nav>a{font-family:var(--sans);font-weight:650}.site-menu [hidden]{display:none}
.mk{position:relative;padding-block:0;box-decoration-break:clone;-webkit-box-decoration-break:clone;isolation:isolate;background-color:transparent;background-image:linear-gradient(transparent 58%,var(--mark-color,#eae7ff) 58%);border-radius:0;color:var(--ink)}
.mk::before,.mk::after{z-index:-1!important}.mk--creme{--mark-color:#eae7ff}.mk--gruen{--mark-color:#ddf8fa}.mk--terra{--mark-color:#ecf9db}
.wasist__satz>p{margin:0 0 1em}.wasist__satz>p:last-child{margin-bottom:0}.wasist__satz{font-size:clamp(20px,2.1vw,31px);line-height:1.4}
.bsp__szenen{gap:64px 50px}.everyday-icon{display:grid;place-items:center;width:68px;height:68px;background:#ddf8fa;border-radius:50%;margin-bottom:28px;color:var(--cd-teal)}.bsp__szene:nth-child(even) .everyday-icon{background:#eae7ff;color:var(--cd-violet)}.explain-icon{display:block;width:30px;height:30px;flex:none;margin:0}.bsp__satz{line-height:1.2}.bsp__nach{line-height:1.65;max-width:52ch}
.band__raster{display:block}.band__titel{max-width:none;margin-bottom:30px;font-size:16px;line-height:1.5}.band__schiene{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;mask-image:none;-webkit-mask-image:none;padding-block:10px 24px;outline-offset:5px}.band__schiene:focus-visible{outline:2px solid var(--accent)}.band__spur{display:flex;gap:clamp(38px,5vw,76px);animation:none;width:max-content;transform:translate3d(0,0,0)}.band__item{width:180px;height:94px;display:flex;align-items:center;justify-content:center;flex:none}.band__item img{width:100%!important;height:80px!important;max-width:none;object-fit:contain;filter:grayscale(1);opacity:1;mix-blend-mode:multiply}.band__item--sa img{filter:invert(1) grayscale(1) contrast(6)}.band__item--onyx img{filter:brightness(0)!important;height:94px!important;width:158px!important}.band__item--denkmale img{filter:grayscale(1) contrast(4);width:90px!important;height:90px!important}.band__item--lindenthal img{filter:grayscale(1) contrast(4)}.band__item--ionos img,.band__item--hetzner img{filter:brightness(0)}
.reference-hero-image{position:static!important;display:block;width:100%;height:100%;object-fit:cover;object-position:top;filter:none!important;transform:none!important}.reference-strip-card:has(.reference-hero-image) .reference-frame{padding:0;overflow:hidden}
.stimme__bild--website img{object-fit:cover;object-position:top}.stimme__quelle{display:inline-block;font-size:13px;line-height:1.5;margin-top:14px;text-underline-offset:4px}.review-checked{display:block;font-size:11px;font-weight:400;line-height:1.5;color:var(--muted);white-space:nowrap}.hero__fakt [data-google-reviews]{flex-wrap:wrap}.hero__fakt .review-checked{flex-basis:100%}.stimmen__rating .review-checked{margin-top:8px}
.final__gross{max-width:19ch}.final__intro{font-size:clamp(18px,2vw,25px);max-width:52ch;margin-block:32px;line-height:1.5}.services-entry{padding-inline:var(--gutter,20px)!important}.services-entry__links a{min-width:0;overflow-wrap:anywhere}.services-entry__links a>span{flex:none}
.contact-page .enquiry-form{background:#f9f8f6;border:1px solid #d3ceca;border-radius:20px;padding:clamp(24px,3.2vw,46px)}.contact-page .personal-contact img{width:132px;height:132px}.contact-page .personal-contact{gap:24px;margin-top:42px}.contact-page .enquiry-form input:not([type=radio]):not([type=checkbox]),.contact-page .enquiry-form textarea{background:#fff;border-color:#817a75}.contact-page .goal-options span{border-color:#817a75}.contact-page .enquiry-form input:focus,.contact-page .enquiry-form textarea:focus{outline-color:var(--accent)}
.case-study__title{font:700 clamp(38px,4.2vw,64px)/1.12 var(--sans);letter-spacing:-.035em;text-wrap:balance}.case-study__hero{gap:clamp(40px,5vw,76px)}.case-study__lead{line-height:1.65}.case-study :is(.sysuse__icon,.modul__icon,.page-step__idx){display:grid;place-items:center;align-self:start;flex:none;line-height:1;padding:0}.case-study .sysuse__icon{width:48px;height:48px}.case-study .sysuse__icon svg{display:block;width:24px;height:24px;margin:0;position:static;transform:none}.case-study .sysuse__item{align-items:start}.sysspur{gap:26px;align-items:start}.sysspur__halt{text-align:center;align-items:center;display:flex;flex-direction:column}.sysspur__punkt{position:relative;inset:auto;display:grid;place-items:center;flex:none;width:54px;height:54px;margin:0 auto 14px;background:#ddf8fa;border:0;color:var(--cd-teal);border-radius:50%}.sysspur__punkt:before,.sysspur__punkt:after{display:none}.sysspur__nr{display:none}.sysspur__text{max-width:27ch}.sysspur:before,.sysspur:after{display:none}
.page-leistungen .lp-wrap{width:min(1296px,calc(100% - 2 * var(--gutter)))}.page-leistungen .lp-hero{padding-bottom:clamp(84px,10vw,144px)}.page-leistungen :is(.lp-section,.lp-proof,.lp-contact){padding-block:clamp(72px,9vw,130px)}.page-leistungen :is(.lp-proof,.lp-contact,.lp-boundary,.lp-scope){background:transparent}.page-leistungen .lp-scope{border-top:1px solid var(--lp-line);padding:28px 0;margin-bottom:0}.page-leistungen .lp-boundary{border-inline-start:3px solid #c8c3dd;padding:6px 26px;margin-block:26px 44px;max-width:850px}.page-leistungen .lp-intro{max-width:43ch;line-height:1.55}.page-leistungen .lp-deliverables{gap:48px}.page-leistungen .lp-deliverable p{line-height:1.65}.page-leistungen .lp-proof{border-block:1px solid var(--lp-line)}.page-leistungen .lp-process li{padding-block:28px}.page-leistungen .lp-process li p{max-width:54ch}.page-leistungen .lp-contact{background:#ddf8fa}.page-leistungen .lp-process details summary{cursor:pointer;min-height:48px;padding-block:12px;font-weight:650}.page-leistungen .lp-process details[open] summary{margin-bottom:26px}
.page-redaktion .rd__gross:nth-child(2n) .rd__titel,.page-redaktion .rd__zeile:nth-child(4n+2) .rd__titel{color:var(--cd-violet)}.page-redaktion .rd__gross:nth-child(2n+1) .rd__titel,.page-redaktion .rd__zeile:nth-child(4n+1) .rd__titel{color:var(--cd-teal)}.page-redaktion .rd__zeile:nth-child(4n+3) .rd__titel{color:var(--cd-green)}.page-redaktion .rd__zeile:nth-child(4n) .rd__titel{color:var(--cd-earth)}.rd-more{margin-top:44px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}.rd-more p{font-size:14px;color:#57534f;margin:0}.rd-more [hidden]{display:none}
.review-hero{padding-block:160px 64px}.review-hero h1{font:700 clamp(44px,6.2vw,84px)/1.08 var(--sans);letter-spacing:-.04em;max-width:16ch}.review-directory{background:none;padding-bottom:100px}.review-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:0}.review-list__item{margin:0;border:0}.review-card{display:flex;flex-direction:column;align-items:start;gap:28px;position:relative;background:#f9f8f6;border:1px solid #d3ceca;padding:36px;min-height:280px;text-decoration:none;border-radius:16px;color:var(--ink)}.review-card:hover{border-color:var(--accent);background:#fff}.review-card__logo{display:flex;align-items:center;height:52px}.review-card__logo img{height:48px;width:48px;object-fit:contain}.review-card h3{font:650 27px/1.2 var(--sans);margin:12px 0}.review-card__type,.review-card__label{font-size:14px;line-height:1.5;color:#57534f}.review-card__arrow{position:absolute;inset:36px 30px auto auto}.review-card:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
/* A useful figure is regular text and a semantic list; it remains readable without scripts. */
.article-explainer{margin:52px 0 60px;padding:30px 0;border-block:1px solid #c8c3bd}.article-explainer figcaption{margin-bottom:30px}.article-explainer h2{font-size:clamp(26px,3vw,34px)!important;line-height:1.2;margin:0 0 16px!important;max-width:28ch;color:var(--cd-teal)}.article-explainer .explain-intro{font-size:16px;line-height:1.6;margin:0;max-width:62ch}.article-explainer ol,.article-explainer ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;list-style:none;padding:0;margin:0}.article-explainer li{margin:0;padding:0;min-width:0}.article-explainer .explain-symbol{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#ddf8fa;color:var(--cd-teal);margin-bottom:18px}.article-explainer li:nth-child(even) .explain-symbol{background:#eae7ff;color:var(--cd-violet)}.article-explainer h3{font:650 19px/1.3 var(--sans);margin:0 0 10px}.article-explainer li p{font-size:15px;line-height:1.6;margin:0}.article-explainer--process li:not(:last-child) h3:after{content:' →';color:var(--cd-teal)}
@media(max-width:900px){.review-list{grid-template-columns:repeat(2,minmax(0,1fr))}.page-leistungen .lp-deliverables{gap:30px}.page-leistungen .lp-hero-grid{grid-template-columns:1fr}.page-leistungen .lp-scope{max-width:600px}.case-study__hero{grid-template-columns:1fr}}
@media(max-width:760px){.header{height:76px;min-height:76px}.header .brand__logo{width:112px;height:28px}.header .nav-cta{display:none}.header .nav-bars{margin-inline-start:auto}.bsp__szenen{gap:58px}.band__item{width:155px}.band__spur{gap:38px}.contact-page .personal-contact img{width:104px;height:104px}.contact-page .personal-contact{gap:18px}.contact-page .personal-contact a{font-size:14px}.contact-page .contact-copy h1{font-size:clamp(40px,9vw,58px)}.case-study__title{font-size:clamp(38px,9vw,58px);line-height:1.13}.case-study .sysspur{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 22px;padding:0}.sysspur__halt{padding:0;border:0}.page-leistungen .lp-wrap{width:calc(100% - 2 * var(--gutter))}.page-leistungen :is(.lp-section,.lp-proof,.lp-contact){padding-block:68px}.page-leistungen .lp-process{grid-template-columns:1fr}.review-hero{padding-top:128px;padding-bottom:44px}.review-list{grid-template-columns:1fr;gap:18px}.review-card{min-height:240px;padding:30px}.review-card__arrow{inset:30px 28px auto auto}.article-explainer ol,.article-explainer ul{grid-template-columns:1fr;gap:28px}.final__gross{font-size:clamp(37px,9vw,58px)}.final__intro{margin-block:26px}.hero__title{overflow-wrap:normal;hyphens:none;text-wrap:balance}}
@media(prefers-reduced-motion:reduce){.band__spur{animation:none!important}.page-redaktion .rd__bild img{transition:none}}

.footer__grating{flex-wrap:wrap!important;white-space:normal;min-width:0;gap:5px!important}.footer__grating .review-checked{flex-basis:100%;white-space:normal}.footer__gruppe,.footer__liste{min-width:0}.footer__links{min-width:0}.footer .wrap{max-width:100%;box-sizing:border-box}
.review-card h2{font:650 27px/1.2 var(--sans);margin:12px 0}.review-card__logo:has(img[src*="trustpilot"]){width:146px}.review-card__logo img[src*="trustpilot"]{width:146px;height:48px}
.case-study__title{overflow-wrap:break-word;hyphens:auto}.case-study__title .mk{white-space:normal;padding-inline:.08em}
.page-leistungen .lp-wrap{padding-inline:0}
.system-bridge{align-self:center}.system-bridge ol{list-style:none;padding:0;margin:0;display:grid;gap:0}.system-bridge li{display:flex;gap:24px;align-items:center;padding:30px 0;border-bottom:1px solid #d3ceca}.system-bridge li:first-child{padding-top:0}.system-bridge li>span{display:grid;place-items:center;flex:none;width:62px;height:62px;border-radius:50%;background:#ddf8fa;color:#075b62}.system-bridge li:nth-child(2)>span{background:#eae7ff;color:#54447b}.system-bridge strong{display:block;font-size:clamp(21px,2vw,28px);font-weight:650;line-height:1.2}.system-bridge p{margin:9px 0 0;font-size:16px;line-height:1.5;max-width:30ch}
.agent-roster{padding-block:clamp(72px,8vw,120px);border-top:1px solid #d3ceca}.agent-roster__head{max-width:760px;margin-bottom:48px}.agent-roster__head h2{font-size:clamp(34px,4.4vw,62px);line-height:1.08;max-width:19ch;text-wrap:balance;letter-spacing:-.03em}.agent-roster__head>p:last-child{font-size:19px;line-height:1.6;max-width:61ch;margin-top:24px}.agent-roster__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #cec9c5}.agent-card{padding:32px;min-width:0}.agent-card+.agent-card{border-inline-start:1px solid #cec9c5}.agent-card__top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.agent-card__top img{display:block;width:88px;height:88px;object-fit:contain;background:none;border:0;border-radius:0}.agent-card__status{display:flex;align-items:center;gap:7px;font-size:12px;color:#365744;white-space:nowrap}.agent-card__status i{width:5px;height:5px;border-radius:50%;background:#365744}.agent-card h3{font-size:23px;line-height:1.2;margin-bottom:18px;letter-spacing:-.02em}.agent-card>p{font-size:16px;line-height:1.65;margin:0;max-width:35ch}.agent-roster__note{font-size:12px;line-height:1.5;color:#57534f;margin-top:22px}
@media(max-width:760px){.agent-roster__grid{grid-template-columns:1fr}.agent-card{padding:30px 0}.agent-card+.agent-card{border-inline-start:0;border-top:1px solid #cec9c5}.agent-card__top{margin-bottom:22px}.agent-roster__head{margin-bottom:34px}.agent-roster__head>p:last-child{font-size:18px}.system-bridge li{gap:18px}.system-bridge li>span{width:52px;height:52px}.wasist__raster{gap:50px}.agent-roster{padding-inline:var(--gutter)}}

.review-card__logo img[src*=clutch]{width:128px;height:48px}.review-card__logo:has(img[src*=clutch]){width:128px}

.review-list__item:last-child{grid-column:auto}.review-list__item{border:0!important}.review-card__logo img{mix-blend-mode:multiply}
.case-study #system>.stack-lg{margin-inline:auto}.case-study .sysuse__icon{margin-inline:auto!important;justify-self:center}.case-study .sysspur__punkt{box-shadow:none!important}
.band-sa-mark{font:400 27px/1.2 'SA Anton',var(--sans);color:#000;white-space:nowrap}.band__item--denkmale img{border-radius:50%;filter:grayscale(1) contrast(50)!important;mix-blend-mode:multiply}.band__item--herzberg{position:relative;overflow:hidden}.band__item--herzberg img{position:absolute;left:0;top:20px;object-fit:fill;width:514px!important;height:61.7px!important;max-width:none;clip-path:inset(33.333% 65% 30% 0);transform:translateY(-7px);filter:brightness(0)!important}
html:lang(fr) .hero__title,html:lang(en) .hero__title{font-size:clamp(44px,5.5vw,86px);line-height:1.08;max-width:16ch}html:lang(zh) .hero__title,html:lang(ar) .hero__title{font-size:clamp(40px,5vw,76px);line-height:1.25;letter-spacing:0;max-width:18ch}html:lang(ar) .brand__logo{direction:ltr}html:lang(ar) :is(.personal-contact a,.footer__grating,.band__spur){direction:ltr}html:lang(ar) .reference-strip__track{direction:ltr}html:lang(ar) .reference-strip-card__meta,html:lang(ar) .reference-copy{direction:rtl}html:lang(ar) .hero__zeile{display:inline}html:lang(ar) .contact-copy h1{line-height:1.2;letter-spacing:0}html:lang(zh) .contact-copy h1{line-height:1.2;letter-spacing:0}html:lang(ar) .nav-bars{margin-right:auto;margin-left:0}
@media(max-width:760px){html:lang(fr) .hero__title,html:lang(en) .hero__title{font-size:clamp(38px,10.2vw,62px);line-height:1.1}html:lang(zh) .hero__title,html:lang(ar) .hero__title{font-size:clamp(36px,9vw,58px);line-height:1.24}.band__item--herzberg img{width:442.85px!important;height:53.14px!important}.header__links{min-width:0}.footer__grating [data-google-reviews-label]{white-space:normal}}

/* The official negative logo is composited into its positive silhouette. */
.band-denkmale-mark{display:block;width:90px;height:90px;background:#000;clip-path:circle(48.5%);mask-image:linear-gradient(#000,#000),url(/assets/img/logo-stuttgarter-denkmale-original.png);mask-position:center;mask-size:contain;mask-repeat:no-repeat;mask-composite:exclude}
.band__schiene{position:relative}.band__spur{will-change:auto}.band-toggle{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.band-toggle:focus-visible{position:static;width:auto;height:auto;padding:10px 16px;clip-path:none;white-space:normal;background:var(--paper);border:1px solid var(--ink);color:var(--ink);margin-block:12px}

.band__schiene{direction:ltr}

html:root:lang(ar){--sans:'Figtree','Noto Sans Arabic',Tahoma,sans-serif;--serif:var(--sans)}
html:root:lang(zh){--sans:'Figtree','Noto Sans SC','Microsoft YaHei',sans-serif;--serif:var(--sans)}
html:lang(ar) :is(h1,h2,h3,.hero__bild figcaption,.contact-copy h1),html:lang(zh) :is(h1,h2,h3,.hero__bild figcaption,.contact-copy h1){font-family:var(--sans)!important;letter-spacing:0}
html:lang(ar) .header .brand{direction:ltr}html:lang(ar) :is(.agent-roster__head,.agent-card,.system-bridge){text-align:start}

.legal-document{overflow-wrap:anywhere;hyphens:auto;min-width:0}.legal-document :is(h1,h2,h3,p,li,a){overflow-wrap:anywhere}.legal-document table{min-width:0!important;table-layout:fixed}.legal-document th,.legal-document td{overflow-wrap:anywhere;word-break:normal}

/* Keep the customer/tool loop free of visible scroll controls. */
.band__schiene::-webkit-scrollbar{display:none;width:0;height:0}

.band__schiene.is-animated{overflow:hidden;touch-action:pan-y}.band__schiene.is-animated .band__spur{will-change:transform}
