/* Gemeinsame, seitenunabhängige Darstellung für Navigation, Reviews, Kontakt und Footer. */
:root{--am-primary:#216ebf;--am-secondary:#a44085;--am-dark:#0b273b;--am-light:#f6f8fc;--am-text:#687384;--am-head:#1d2733;--am-line:#dfe5ec;--am-blue-soft:#6ba5e3;--am-radius:28px;--am-max:1480px;--ease-premium:cubic-bezier(.22,1,.36,1);--font-accent:"MonoLisa","SFMono-Regular",Consolas,"Liberation Mono",monospace}
.heading-highlight{color:var(--am-primary);font-style:inherit}
.heading-highlight--light{color:var(--am-blue-soft)}
h1,h2{overflow-wrap:break-word;word-break:normal;-webkit-hyphens:auto;hyphens:auto;-webkit-hyphenate-limit-before:4;-webkit-hyphenate-limit-after:4;hyphenate-limit-chars:10 4 4;text-wrap:balance}
h3,h4,h5,h6{overflow-wrap:break-word;word-break:normal;-webkit-hyphens:auto;hyphens:auto;-webkit-hyphenate-limit-before:4;-webkit-hyphenate-limit-after:4;hyphenate-limit-chars:10 4 4;text-wrap:pretty}
p,li,dd,address,blockquote,figcaption{overflow-wrap:break-word;word-break:normal;-webkit-hyphens:auto;hyphens:auto;-webkit-hyphenate-limit-before:4;-webkit-hyphenate-limit-after:4;hyphenate-limit-chars:8 4 4;text-wrap:pretty}
nav,button,.btn-am,.button,.mono,.eyebrow,.section-index,[role="button"]{-webkit-hyphens:none;hyphens:none;word-break:normal}
button,.btn-am,.button,[role="button"]{overflow-wrap:normal;text-wrap:balance}
.mono{font-family:var(--font-accent);font-synthesis:none}

.site-header{position:fixed;inset:0 0 auto;z-index:2100;background:transparent;border-bottom:0;pointer-events:none}
.site-header .navbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;min-height:82px;padding:.5rem 0}
.site-header .navbar>.container-xxl{display:flex;width:100%;max-width:var(--am-max);flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:10px}
.site-header .navbar-brand{display:inline-flex;width:52px;height:52px;min-height:52px;flex:0 0 52px;align-items:center;margin:0;padding:0;overflow:hidden;border:2px solid #fff;border-radius:50%;background:var(--am-primary);box-shadow:0 10px 28px rgba(11,39,59,.15),0 0 0 1px rgba(11,39,59,.08);color:#000;pointer-events:auto}
.site-header .navbar-brand .navbar-logo-mark{display:block;width:100%;height:100%;flex:0 0 auto;object-fit:cover}
.site-header .desktop-nav{display:flex;align-items:center;gap:1.45rem;margin-left:auto}
.site-header .desktop-nav-links{display:flex;align-items:center;gap:1.45rem}
.site-header .desktop-nav .nav-link{position:relative;padding:0;color:var(--am-head);font-weight:650}
.site-header .nav-link::after{content:"";position:absolute;left:.5rem;right:.5rem;bottom:.22rem;height:1px;background:linear-gradient(90deg,var(--am-primary),var(--am-secondary));transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-premium)}
.site-header .nav-link:hover::after{transform:scaleX(1)}
.desktop-mega-menu{display:none}
.mobile-header-actions{align-items:center;gap:8px;margin-left:auto;pointer-events:auto}
.site-header .mobile-header-contact{min-height:52px;padding-inline:1.2rem;box-shadow:0 10px 28px rgba(33,110,191,.2)}
.mobile-menu-toggle{position:relative;z-index:2200;width:52px;height:52px;flex:0 0 52px;border:1px solid rgba(11,39,59,.12);border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(11,39,59,.11);padding:0;display:grid;place-items:center;transition:background .35s var(--ease-premium),border-color .35s ease,transform .35s var(--ease-premium)}
.mobile-menu-toggle:hover{transform:scale(1.04)}
.mobile-menu-toggle span{position:absolute;width:20px;height:2px;border-radius:999px;background:var(--am-head);transition:transform .42s var(--ease-premium),top .42s var(--ease-premium),width .42s var(--ease-premium),background .3s ease}
.mobile-menu-toggle span:first-child{top:20px}
.mobile-menu-toggle span:last-child{top:29px;right:15px;width:14px}
.mobile-menu-toggle.is-open{background:var(--am-dark);border-color:var(--am-dark);transform:rotate(90deg)}
.mobile-menu-toggle.is-open span{top:25px;right:auto;width:20px;background:#fff}
.mobile-menu-toggle.is-open span:first-child{transform:rotate(45deg)}
.mobile-menu-toggle.is-open span:last-child{transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:2050;height:100dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:radial-gradient(circle at 82% 12%,rgba(33,110,191,.18),transparent 32%),radial-gradient(circle at 12% 88%,rgba(164,64,133,.12),transparent 36%),var(--am-light);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-24px) scale(.985);transition:opacity .45s var(--ease-premium),transform .55s var(--ease-premium),visibility .45s}
.mobile-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.mobile-menu-inner{min-height:100dvh;padding:96px 20px max(24px,env(safe-area-inset-bottom));display:flex;flex-direction:column}
.mobile-menu-top{padding-bottom:12px;border-bottom:1px solid rgba(11,39,59,.12)}
.mobile-menu-label{color:var(--am-primary);font:750 .67rem/1.2 var(--font-accent);letter-spacing:.11em;text-transform:uppercase}
.mobile-section-kicker{color:var(--am-primary);font-size:.86rem;font-weight:750}
.mobile-menu-main{padding-top:20px}
.mobile-menu-services h2{max-width:12ch;margin:0 0 20px;font-size:clamp(2.25rem,8.5vw,3.6rem);font-weight:820;line-height:.96}
.mobile-service-links{border-top:1px solid rgba(11,39,59,.12)}
.mobile-service-links a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:14px 0;border-bottom:1px solid rgba(11,39,59,.12);color:var(--am-head);font-size:clamp(1.05rem,4vw,1.35rem);font-weight:760;letter-spacing:-.03em;text-decoration:none;opacity:0;transform:translateY(18px);transition:opacity .45s var(--ease-premium),transform .45s var(--ease-premium),color .25s ease}
.mobile-menu.is-open .mobile-service-links a{opacity:1;transform:translateY(0)}
.mobile-menu.is-open .mobile-service-links a:nth-child(1){transition-delay:.08s}
.mobile-menu.is-open .mobile-service-links a:nth-child(2){transition-delay:.14s}
.mobile-menu.is-open .mobile-service-links a:nth-child(3){transition-delay:.2s}
.mobile-menu.is-open .mobile-service-links a:nth-child(4){transition-delay:.26s}
.mobile-service-links a:hover{color:var(--am-primary)}
.mobile-service-links a span:last-child{transition:transform .25s var(--ease-premium)}
.mobile-service-links a:hover span:last-child{transform:translateX(6px)}
.mobile-menu-secondary{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding:18px 0 20px;border-bottom:1px solid rgba(11,39,59,.12)}
.mobile-menu-secondary a{padding:7px 0;color:var(--am-text);font-size:.95rem;font-weight:650;text-decoration:none}
.mobile-contact-panel{margin-top:auto;padding-top:20px}
.mobile-contact-primary{display:flex;align-items:center;gap:14px;margin-top:14px;padding:18px;border-radius:20px;background:var(--am-dark);color:#fff;text-decoration:none}
.hero-background-motion{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none}
.hero-grid-field{position:absolute;inset:-12%;background-image:linear-gradient(rgba(107,165,227,.085) 1px,transparent 1px),linear-gradient(90deg,rgba(107,165,227,.085) 1px,transparent 1px);background-size:76px 76px;-webkit-mask-image:radial-gradient(ellipse 76% 82% at 68% 42%,#000 10%,rgba(0,0,0,.9) 52%,transparent 88%);mask-image:radial-gradient(ellipse 76% 82% at 68% 42%,#000 10%,rgba(0,0,0,.9) 52%,transparent 88%);opacity:.82;transform:rotate(-3deg) scale(1.05);animation:heroGridDrift 28s ease-in-out infinite alternate;will-change:transform,opacity}
.hero-signal-line{position:absolute;top:38%;left:4%;width:88%;height:1px;overflow:hidden;background:linear-gradient(90deg,transparent,rgba(107,165,227,.18) 18%,rgba(128,188,244,.4) 52%,rgba(184,81,151,.2) 78%,transparent);box-shadow:0 0 14px rgba(107,165,227,.16);transform:rotate(-14deg);opacity:.58}
.hero-signal-line::after{content:"";position:absolute;inset:-1px auto -1px 0;width:22%;background:linear-gradient(90deg,transparent,rgba(155,209,255,.22),rgba(207,232,255,.92),rgba(184,81,151,.28),transparent);filter:blur(.2px);transform:translate3d(-150%,0,0);opacity:0;animation:heroSignalScan 11s cubic-bezier(.45,0,.2,1) infinite;will-change:transform,opacity}
.hero-background-motion+ .container-xxl,.hero-background-motion~.container-xxl{position:relative;z-index:1}
@keyframes heroGridDrift{0%{opacity:.68;transform:rotate(-3deg) scale(1.05) translate3d(-1%,1%,0)}to{opacity:.9;transform:rotate(-2deg) scale(1.08) translate3d(2%,-1.5%,0)}}
@keyframes heroSignalScan{0%,18%{opacity:0;transform:translate3d(-150%,0,0)}28%{opacity:.78}72%{opacity:.52}84%,100%{opacity:0;transform:translate3d(560%,0,0)}}
.mobile-contact-icon{width:46px;height:46px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--am-primary),var(--am-secondary));font-size:1.35rem}
.mobile-contact-primary small,.mobile-contact-item small{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;opacity:.65}
.mobile-contact-primary strong,.mobile-contact-item strong{display:block;margin-top:2px;font-size:1rem}
.mobile-contact-item{display:block;padding:16px 0;color:var(--am-head);text-decoration:none}
.mobile-contact-cta{width:100%;margin-top:4px}
html.menu-open,body.menu-open{overflow:hidden;touch-action:none}

.btn-am{position:relative;isolation:isolate;overflow:hidden;min-height:58px;padding:0 1.45rem;border:1px solid transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;color:inherit;font:750 .95rem/1 "Inter",system-ui,sans-serif;text-decoration:none;cursor:pointer;will-change:transform;transition:transform .24s var(--ease-premium),filter .24s ease}
.btn-am-primary{color:#fff;background:linear-gradient(135deg,#216ebf 0%,#216ebf 62%,#3b73b5 100%)}
.btn-am-light{color:var(--am-head);background:#fff;border-color:var(--am-line)}
.btn-am-outline{color:#fff;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.05)}
.btn-am::before{content:"";position:absolute;inset:-2px;z-index:-2;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.45) 48%,transparent 70%);transform:translateX(-140%);transition:transform .9s var(--ease-premium)}
.btn-am::after{content:"";position:absolute;inset:1px;border-radius:inherit;z-index:-1;background:inherit}
.btn-am:hover{color:inherit;text-decoration:none;transform:translateY(-3px) scale(1.012)}.btn-am-primary:hover{color:#fff;background:linear-gradient(135deg,#1d63ad 0%,#216ebf 60%,#9a3f7f 160%)}.btn-am:hover::before{transform:translateX(140%)}
.btn-am .btn-arrow{display:inline-block;transition:transform .24s var(--ease-premium)}.btn-am:hover .btn-arrow{transform:translateX(7px)}

#bewertungen,#kontakt{padding:clamp(100px,10vw,170px) 0}
#bewertungen .mono,#kontakt .mono,.site-footer .mono{font-family:var(--font-accent);font-synthesis:none;letter-spacing:.06em;text-transform:uppercase;font-size:.76rem}
#bewertungen .eyebrow,#kontakt .eyebrow{display:inline-flex;align-items:center;gap:.7rem;color:var(--am-primary);font-weight:700;margin-bottom:1.2rem}
#bewertungen .eyebrow::before,#kontakt .eyebrow::before{content:"";width:34px;height:1px;background:currentColor}
#bewertungen h2,#kontakt h2{font-size:clamp(2.8rem,6vw,6.8rem);max-width:11ch;font-weight:820;letter-spacing:-.055em;line-height:.96;margin:0 0 1.5rem}
#bewertungen h3,#kontakt h3{font-size:clamp(1.4rem,2.2vw,2.35rem);font-weight:780;letter-spacing:-.055em;line-height:.96;margin-top:0}
#bewertungen p,#kontakt p{color:var(--am-text);font-size:clamp(1rem,1.3vw,1.22rem)}
#bewertungen .lead-copy,#kontakt .lead-copy{max-width:760px;font-size:clamp(1.15rem,1.7vw,1.5rem)}
#bewertungen .section-head{margin-bottom:4.5rem}
#bewertungen .section-head p{max-width:700px;margin-left:auto}
.row.am-bs-row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;width:auto;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x));grid-template-columns:none;gap:0}
.row.am-bs-row>*{flex-shrink:0;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}
.container-xxl.row.am-bs-row{width:100%;margin-right:auto;margin-left:auto;padding-right:0;padding-left:0}
.container-xxl.row.am-bs-row>*{padding-right:.75rem;padding-left:.75rem}
.timeline.row.am-bs-row>article{padding:2rem}
.row.am-bs-row.g-3{--bs-gutter-x:1rem;--bs-gutter-y:1rem}.row.am-bs-row.g-4{--bs-gutter-x:1.5rem;--bs-gutter-y:1.5rem}.row.am-bs-row.g-5{--bs-gutter-x:3rem;--bs-gutter-y:3rem}.row.am-bs-row.gy-3{--bs-gutter-y:1rem}.row.am-bs-row.gy-4{--bs-gutter-y:1.5rem}
@media(min-width:992px){.row.am-bs-row.gx-lg-5{--bs-gutter-x:3rem}}
.reviews-layout{align-items:stretch}
.review-videos{display:grid;align-content:start;gap:1rem}.reviews-list{display:flex;flex-direction:column;gap:1.25rem}.reviews-list .reviews-load{margin-top:auto}
.testimonial-video{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:18px;background:var(--am-dark);border:1px solid rgba(11,39,59,.1);box-shadow:0 18px 55px rgba(11,39,59,.08)}
.testimonial-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.reviews-list .review-card{position:relative;height:auto;max-height:1000px;overflow:hidden;padding:clamp(1.35rem,2.2vw,1.8rem);border:1px solid var(--am-line);border-radius:var(--am-radius);background:#fff;transition:max-height .7s var(--ease-premium),opacity .45s ease,border-color .45s ease}
.reviews-list .review-card.is-preview{max-height:124px;opacity:.68;border-color:rgba(33,110,191,.14)}
.reviews-list .review-card.is-preview::before{content:"";position:absolute;z-index:6;inset:18% 0 0;background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.95) 68%,#fff);pointer-events:none}
.reviews-list .review-card.is-preview .review-expand,.reviews-list .review-card.is-preview .review-person{visibility:hidden}
.review-card[hidden]{display:none}.reviews-list .review-card h3{max-width:none;font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.08;letter-spacing:-.035em}
.review-card-head{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin-bottom:1.2rem}.review-card-head.is-google{justify-content:flex-end}.review-identity-image{display:flex;width:132px;height:64px;flex:0 0 auto;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(11,39,59,.08);border-radius:14px;background:#f7f9fb}.review-identity-image img{display:block}.review-identity-image.is-logo img{width:100%;height:100%;padding:.65rem;object-fit:contain}.review-fallback{display:grid;width:100%;height:100%;place-items:center;padding:.45rem;color:var(--am-primary);font-size:.68rem;font-weight:800;text-align:center}.review-rating-source{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem}.stars{color:#d99b0b;font-size:.82rem;letter-spacing:.12em;line-height:1}.review-google-label{display:inline-flex;align-items:center;gap:.35rem;color:var(--am-text);font-size:.68rem;font-weight:700}.review-google-label svg{width:.78rem;height:.78rem;fill:currentColor}.review-copy{position:relative;margin-top:1rem;white-space:pre-line}.review-copy p{margin:0;white-space:pre-line}
.review-copy:not(.is-expanded) p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.review-copy:not(.is-expanded)::after{content:"";position:absolute;inset:auto 0 0;height:2.25rem;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 88%)}
.review-expand{position:relative;z-index:1;margin-top:.8rem;padding:0;border:0;background:transparent;color:var(--am-primary);font:inherit;font-size:.88rem;font-weight:800;text-decoration:underline;text-underline-offset:.22em;cursor:pointer}
.review-person{display:flex;align-items:center;justify-content:flex-start;gap:.85rem;margin-top:1.5rem;padding-top:1.15rem;border-top:1px solid var(--am-line)}.review-person-portrait{display:grid;width:56px;height:56px;flex:0 0 56px;overflow:hidden;place-items:center;border:1px solid rgba(11,39,59,.08);border-radius:50%;background:#f7f9fb}.review-person-portrait img{display:block;width:100%;height:100%;object-fit:cover}.review-person-portrait .review-fallback{padding:0;background:rgba(33,110,191,.09);font-size:.72rem}.review-person-copy{min-width:0}.review-person strong{display:block;margin-bottom:.18rem}
.review-rating-only{margin:1rem 0 0;color:var(--am-text);font-size:.92rem}
.reviews-load{margin-top:.25rem}.reviews-load .btn-am{width:100%;border-color:rgba(33,110,191,.2);color:var(--am-primary);background:rgba(33,110,191,.045)}

#kontakt{background:var(--am-dark);color:#fff}#kontakt h2{max-width:10ch;color:#fff}#kontakt p{color:rgba(255,255,255,.72)}
#kontakt>.container-xxl>.contact-layout-row{--bs-gutter-x:1.5rem;--bs-gutter-y:1.5rem;display:flex;flex-wrap:wrap;width:auto;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x));align-items:center}
#kontakt>.container-xxl>.contact-layout-row>*{min-width:0;margin-top:var(--bs-gutter-y);padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5)}
#kontakt .col-lg-5,#kontakt .col-lg-7{flex:0 0 auto;width:100%;max-width:100%}
#kontakt .portrait{display:block;width:180px;height:180px;object-fit:cover;border-radius:50%;box-shadow:0 18px 45px rgba(11,39,59,.16);border:1px solid rgba(255,255,255,.16);margin:2rem 0}
#kontakt .contact-form{position:relative;max-width:100%;min-width:0;background:#fff;color:var(--am-head);border-radius:var(--am-radius);padding:2rem;border:1px solid rgba(255,255,255,.08);box-shadow:0 28px 70px rgba(11,39,59,.07),0 8px 24px rgba(33,110,191,.035)}
#kontakt .contact-form-header{margin-bottom:1.5rem}#kontakt .contact-form-header h3{margin-bottom:.55rem}#kontakt .contact-form-header p{margin:0;font-size:.98rem}
#kontakt .contact-form .row{display:flex;flex-wrap:wrap;width:calc(100% + 16px);margin-inline:-8px}
#kontakt .contact-form .form-col{flex:0 0 auto;width:100%;padding-inline:8px;margin-bottom:16px}
#kontakt .form-field{position:relative}#kontakt .form-label{display:block;margin:0 0 .5rem;color:var(--am-head);font-weight:700;font-size:.86rem}
#kontakt .form-control{display:block;width:100%;min-height:58px;padding:1rem 1.05rem;border:1px solid var(--am-line);border-radius:12px;background:#fff;color:#212529;font:inherit;line-height:1.5}#kontakt textarea.form-control{min-height:170px;resize:vertical}
#kontakt .consent-box{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--am-line);border-radius:14px;background:var(--am-light)}#kontakt .consent-box input{width:20px;height:20px;margin-top:.1rem;accent-color:var(--am-primary);flex:0 0 auto}#kontakt .consent-box label{margin:0;color:var(--am-text);font-size:.9rem;line-height:1.5}
#kontakt .form-submit-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:.25rem}#kontakt .form-trust{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:0;padding:0;list-style:none;color:var(--am-text);font-size:.84rem}#kontakt .form-trust li::before{content:"✓";color:var(--am-primary);font-weight:800;margin-right:.35rem}
#kontakt .form-status{display:none;margin:0;padding:.9rem 1rem;border-radius:12px;font-size:.86rem;font-weight:650;line-height:1.5}#kontakt .form-status.is-error,#kontakt .form-status.is-success{display:block}#kontakt .form-status.is-error{background:#fff0f4;color:#8e2c51}#kontakt .form-status.is-success{background:#eaf7f0;color:#236d48}
#kontakt .field-error{display:block;min-height:0;margin-top:.35rem;color:#a12620;font-size:.76rem;font-weight:650;line-height:1.4}#kontakt .field-error:empty{display:none}#kontakt .form-control[aria-invalid="true"]{border-color:#b3261e!important;box-shadow:0 0 0 3px rgba(179,38,30,.1)!important}
form[data-email-form] button[type="submit"]:disabled{cursor:wait;opacity:.68}

.site-footer{position:relative;overflow:hidden;padding:clamp(72px,9vw,128px) 0 0;border-top:1px solid rgba(99,174,232,.3);background:#061a29;box-shadow:inset 0 28px 70px rgba(0,0,0,.22),0 -18px 48px rgba(0,0,0,.12);color:rgba(255,255,255,.72);font-size:.94rem}
.site-footer::before{content:none!important}
.site-footer .footer-highlight{position:absolute;top:-260px;left:-160px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(33,110,191,.2),transparent 68%);pointer-events:none}
.site-footer::after{content:"";position:absolute;top:-1px;left:50%;width:min(1120px,82vw);height:2px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(74,157,224,.72) 22%,rgba(184,222,250,.9) 50%,rgba(74,157,224,.72) 78%,transparent);box-shadow:0 0 24px rgba(52,139,209,.38);pointer-events:none}
.site-footer .footer-main{--bs-gutter-x:1.5rem;position:relative;display:flex;flex-wrap:wrap;width:auto;margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x));column-gap:0;row-gap:3rem;padding-bottom:clamp(64px,8vw,100px)}
.site-footer .footer-main>*{padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5)}
.site-footer .footer-brand-logo{display:block;width:min(310px,80%);height:auto;margin-bottom:clamp(2rem,4vw,3.5rem);filter:brightness(0) invert(1)}
.site-footer .footer-statement{max-width:690px;margin:0 0 2rem;color:#fff;font-size:clamp(2.35rem,4.7vw,5.2rem);font-weight:820;line-height:.98;letter-spacing:-.06em}.site-footer .footer-statement span{color:var(--am-blue-soft)}
.site-footer .footer-contact{display:grid;gap:.7rem;max-width:400px;margin:0;color:rgba(255,255,255,.62)}
.site-footer .footer-location{display:block;margin-bottom:.25rem;font-size:.86rem;letter-spacing:.02em}
.site-footer .footer-contact-link{display:flex;align-items:center;gap:.85rem;width:100%;padding:.7rem .85rem;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.82)!important;transition:transform .35s var(--ease-premium),border-color .35s ease,background .35s ease,color .35s ease}
.site-footer .footer-contact-link:hover{transform:translateX(5px);border-color:rgba(107,165,227,.36);background:rgba(33,110,191,.11);color:#fff!important}
.site-footer .footer-contact-icon{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,rgba(107,165,227,.2),rgba(33,110,191,.07));color:var(--am-blue-soft);box-shadow:inset 0 0 0 1px rgba(107,165,227,.12)}
.site-footer .footer-contact-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.site-footer .footer-contact-copy{display:grid;gap:.1rem}
.site-footer .footer-contact-copy small{color:rgba(255,255,255,.7);font-size:.65rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.site-footer .footer-contact-copy strong{color:inherit;font-size:.95rem;font-weight:700;letter-spacing:-.01em}
.site-footer .footer-contact a,.site-footer .footer-nav a,.site-footer .footer-legal a{color:inherit;text-decoration:none;transition:color .22s ease}
.site-footer .footer-nav-panel{align-self:flex-end}
.site-footer .footer-nav-shell{padding:1.5rem;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));box-shadow:inset 0 1px rgba(255,255,255,.04)}
.site-footer .footer-nav-kicker{display:flex;align-items:center;gap:.8rem;margin-bottom:1.4rem;color:rgba(255,255,255,.42);font-size:.67rem}
.site-footer .footer-nav-kicker::after{content:"";height:1px;flex:1;background:rgba(255,255,255,.1)}
.site-footer .footer-nav-title{margin-bottom:1.4rem;color:var(--am-blue-soft);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.site-footer .footer-nav ul{display:grid;gap:.9rem;margin:0;padding:0;list-style:none}.site-footer .footer-nav a{display:inline-flex;align-items:center;gap:.45rem;color:rgba(255,255,255,.72);font-size:1rem}.site-footer .footer-nav a::after{content:"↗";opacity:0;transform:translate(-3px,3px);transition:opacity .22s ease,transform .22s ease}.site-footer .footer-contact a:hover,.site-footer .footer-nav a:hover,.site-footer .footer-legal a:hover{color:#fff}.site-footer .footer-nav a:hover::after{opacity:1;transform:none}.site-footer .footer-nav a:focus-visible,.site-footer .footer-legal a:focus-visible{outline:2px solid var(--am-blue-soft);outline-offset:4px;border-radius:2px;color:#fff}
.site-footer .footer-bottom{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.6rem 0 1.8rem;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.48);font-size:.82rem}.site-footer .footer-company{color:rgba(255,255,255,.72);font-weight:750}.site-footer .footer-legal{display:flex;flex-wrap:wrap;gap:1.25rem}

@media(min-width:768px){#kontakt .contact-form .col-md-6{width:50%}}
@media(min-width:1400px){.container-xxl{width:calc(100% - 24px);max-width:1480px}}
@media(min-width:992px){.site-header{inset:0 0 auto;background:transparent!important;border-bottom:0!important;backdrop-filter:none!important;pointer-events:none}.site-header .navbar{min-height:82px;padding:12px 0}.site-header .navbar>.container-xxl{gap:12px}.site-header .navbar-brand,.site-header .desktop-nav-links{border:1px solid rgba(11,39,59,.1);background:rgba(255,255,255,.92);box-shadow:0 12px 36px rgba(11,39,59,.1);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);pointer-events:auto}.site-header .navbar-brand{width:58px;height:58px;min-height:58px;margin:0;padding:0;overflow:hidden;border:2px solid #fff;border-radius:50%;background:var(--am-primary);box-shadow:0 12px 32px rgba(11,39,59,.16),0 0 0 1px rgba(11,39,59,.08)}.site-header .navbar-brand .navbar-logo-mark{width:100%;height:100%;object-fit:cover}.site-header .desktop-nav{gap:10px;margin-left:auto;pointer-events:auto}.site-header .desktop-nav-links{min-height:58px;gap:1.35rem;padding:0 1.35rem;border-radius:999px}.site-header .desktop-nav>.btn-am{min-height:58px;box-shadow:0 12px 34px rgba(33,110,191,.22)}#kontakt>.container-xxl>.contact-layout-row{--bs-gutter-x:3rem}#kontakt .col-lg-5{width:41.66666667%}#kontakt .col-lg-7{width:58.33333333%}.mobile-menu{display:none!important}.site-header .desktop-services-trigger{display:inline-flex;align-items:center;gap:.42rem}.desktop-services-chevron{width:.43rem;height:.43rem;margin-top:-.2rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .3s var(--ease-premium)}.desktop-services-trigger[aria-expanded="true"] .desktop-services-chevron{transform:translateY(.18rem) rotate(225deg)}.desktop-services-trigger[aria-expanded="true"]::after{transform:scaleX(1)}.desktop-mega-menu{position:absolute;top:100%;left:50%;display:block;width:min(calc(100% - 24px),var(--am-max));padding-top:8px;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-10px);transition:opacity .22s ease,transform .32s var(--ease-premium),visibility .22s}.desktop-mega-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.desktop-mega-surface{overflow:hidden;border:1px solid rgba(11,39,59,.1);border-radius:24px;background:rgba(255,255,255,.98);box-shadow:0 28px 70px rgba(11,39,59,.16),0 8px 24px rgba(11,39,59,.08)}.desktop-mega-services{padding:clamp(1.35rem,2.2vw,2.25rem)}.desktop-mega-kicker{margin-bottom:1rem;color:var(--am-primary);font-size:.64rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.desktop-mega-grid{border-top:1px solid var(--am-line);border-bottom:1px solid var(--am-line)}.desktop-mega-item-wrap--top{border-bottom:1px solid var(--am-line)}.desktop-mega-item-wrap--top:not(:nth-child(3)),.desktop-mega-item-wrap--bottom:nth-child(4){border-right:1px solid var(--am-line)}.desktop-mega-item{display:flex;height:100%;min-height:116px;flex-direction:column;justify-content:center;padding:1.15rem 1.25rem;color:var(--am-head);text-decoration:none;transition:background .25s ease}.desktop-mega-item strong{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.45rem;font-size:clamp(1rem,1.2vw,1.22rem);font-weight:780;letter-spacing:-.025em}.desktop-mega-item strong::after{content:"↗";color:var(--am-primary);font-size:.82rem;opacity:0;transform:translate(-5px,5px);transition:opacity .25s ease,transform .3s var(--ease-premium)}.desktop-mega-item>span{max-width:48ch;color:var(--am-text);font-size:clamp(.76rem,.83vw,.88rem);line-height:1.48}.desktop-mega-item:hover{background:var(--am-light)}.desktop-mega-item:hover strong::after{opacity:1;transform:translate(0,0)}.desktop-mega-all{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.65rem .15rem 0;color:var(--am-primary);font-size:.86rem;font-weight:800;text-decoration:none}.desktop-mega-all span:last-child{transition:transform .3s var(--ease-premium)}.desktop-mega-all:hover span:last-child{transform:translateX(5px)}.desktop-mega-consultation{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:clamp(1.5rem,2.4vw,2.4rem);background:radial-gradient(circle at 100% 0,rgba(107,165,227,.2),transparent 42%),var(--am-dark);color:#fff}.desktop-mega-consultation>.mono{margin-bottom:1rem;color:var(--am-blue-soft);font-size:.61rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.desktop-mega-consultation>strong{max-width:18ch;color:#fff;font-size:clamp(1.1rem,1.45vw,1.45rem);line-height:1.13;letter-spacing:-.035em}.desktop-mega-consultation>p{max-width:28ch;margin:.8rem 0 1.35rem;color:rgba(255,255,255,.68);font-size:clamp(.74rem,.8vw,.84rem);line-height:1.5}.desktop-mega-consultation>a{display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.16);color:#fff;font-size:.82rem;font-weight:780;text-decoration:none}.desktop-mega-consultation>a span{color:var(--am-blue-soft);transition:transform .3s var(--ease-premium)}.desktop-mega-consultation>a:hover span{transform:translateX(5px)}.desktop-services-trigger:focus-visible,.desktop-mega-menu a:focus-visible{outline:3px solid rgba(33,110,191,.42);outline-offset:4px;border-radius:4px}}
@media(max-width:1199.98px){#bewertungen .section-head p{margin-left:0}}
@media(min-width:992px){.site-header .navbar-brand{flex-basis:58px}}
@media(max-width:991.98px){.site-header .desktop-nav{display:none!important}}
@media(max-width:767.98px){#kontakt .contact-form{padding:1.25rem;border-radius:20px}#kontakt .contact-form .form-submit-row{align-items:stretch}#kontakt .contact-form .form-submit-row .btn-am,#kontakt .contact-form .form-trust{width:100%}}
@media(max-width:575.98px){.container-xxl{width:100%}.site-header .navbar-brand{width:48px;height:48px;min-height:48px;flex-basis:48px}.mobile-header-actions{gap:6px}.site-header .mobile-header-contact{min-height:48px;padding-inline:.85rem!important;font-size:.8rem}.mobile-menu-toggle{width:48px;height:48px;flex:0 0 48px}.mobile-menu-toggle span:first-child{top:18px}.mobile-menu-toggle span:last-child{top:27px;right:13px}.mobile-menu-toggle.is-open span{top:23px}.mobile-menu-inner{padding-top:88px;padding-inline:16px}.mobile-menu-secondary{grid-template-columns:1fr}.mobile-menu-services h2{font-size:clamp(2.15rem,10.5vw,2.75rem)}.site-footer{padding-top:64px}.site-footer .footer-main{row-gap:2.5rem}.site-footer .footer-brand-logo{width:230px}.site-footer .footer-statement{font-size:clamp(2.4rem,13vw,3.7rem)}.site-footer .footer-bottom{align-items:flex-start;flex-direction:column}}
@media(max-width:575.98px){.customer-proof>.container-xxl{width:calc(100% - 30px)}}

/* Österreichische Typografie auf schmalen Geräten: große Schrift bleibt erhalten,
   lange Komposita dürfen aber nach dem de-AT-Wörterbuch getrennt werden. */
@media(max-width:575.98px){
  .btn-am,.button,[role="button"]{max-width:100%;height:auto;min-width:0;padding-inline:.9rem!important;white-space:normal!important;line-height:1.25;text-align:center;-webkit-hyphens:none;hyphens:none;word-break:normal}
  .review-card-head{align-items:flex-start;gap:.8rem}.review-identity-image{width:108px;height:56px}.review-rating-source{gap:.35rem}.review-google-label{font-size:.62rem}.review-person{align-items:center;flex-direction:row}.review-person-portrait{width:52px;height:52px;flex-basis:52px}
}

/* Typografie und Standardabstände bewusst entkoppelt von seitenlokalen Resets. */
.site-header,#bewertungen,#kontakt,.site-footer{font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
#bewertungen .lead-copy,#kontakt .lead-copy,#kontakt .col-lg-5>div>p{margin-top:0;margin-bottom:1rem}
#bewertungen .review-card h3{margin-top:1rem;margin-bottom:.9rem}
#bewertungen .review-person .mono{margin:0;color:var(--am-head)}
#kontakt .consent-box label{font-weight:400}

/* Bootstrap Accordion, visuell an das Againstmedia-System angepasst. */
.start-faq .am-faq-accordion{max-width:980px;--bs-accordion-bg:transparent;--bs-accordion-border-color:var(--am-line);--bs-accordion-btn-bg:transparent;--bs-accordion-active-bg:transparent;--bs-accordion-active-color:var(--am-head);--bs-accordion-btn-focus-box-shadow:none}
.start-faq .accordion-item{border:0;border-top:1px solid var(--am-line);border-radius:0!important;background:transparent}
.start-faq .accordion-item:last-child{border-bottom:1px solid var(--am-line)}
.start-faq .accordion-header{margin:0;line-height:1.25}
.start-faq .accordion-button{padding:1.4rem 0;background:transparent;color:var(--am-head);font-size:clamp(1.1rem,2vw,1.45rem);font-weight:750;line-height:1.35;box-shadow:none!important}
.start-faq .accordion-button::after{display:none}
.start-faq .accordion-button:not(.collapsed){color:var(--am-head);background:transparent}
.start-faq .accordion-body{max-width:850px;padding:0 0 1.4rem}
.start-faq .accordion-body p{margin:0;color:var(--am-text);font-size:clamp(1rem,1.15vw,1.18rem)}
.start-faq .accordion-body .text-link{margin-top:.8rem}
.start-faq .accordion-collapse.collapsing{transition:height .4s cubic-bezier(.4,0,.2,1)}
@media(max-width:767.98px){.hero-grid-field{inset:-6%;background-size:58px 58px;opacity:.48;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.82),transparent 76%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.82),transparent 76%)}.hero-signal-line{top:28%;left:-4%;width:96%}.hero-signal-line::after{animation-duration:14s}}
@media(max-width:575.98px){.site-footer .footer-nav-shell{padding:1.25rem}.site-footer .footer-nav a{font-size:.93rem}}
@media(prefers-reduced-motion:reduce){.reviews-list .review-card,.site-footer .footer-contact-link,.site-footer .footer-nav a,.site-footer .footer-nav a::after,.start-faq .accordion-collapse.collapsing,.desktop-mega-menu,.desktop-services-chevron,.desktop-mega-item,.desktop-mega-item strong::after,.desktop-mega-all span:last-child,.desktop-mega-consultation>a span{transition:none}.hero-grid-field{animation:none!important;will-change:auto;opacity:.62;transform:rotate(-3deg) scale(1.05)}.hero-signal-line{opacity:.3}.hero-signal-line::after{display:none;animation:none!important;will-change:auto}}
/* The official GTM fallback must never influence page geometry. */
.gtm-noscript{position:absolute!important;width:0!important;height:0!important;border:0!important;overflow:hidden!important;visibility:hidden!important}

/* Keep reviewer portrait and identity together despite legacy page-level review styles. */
#bewertungen .review-person{align-items:center;justify-content:flex-start;gap:.85rem}
#bewertungen .review-person-copy{min-width:0;text-align:left}
