/* ===========================================================
   BrandauBikes — Design System
   Schrift: Barlow (Text) + Barlow Condensed (Headlines, sportlich)
   Familienfarbe Orange · Geschwister von SportPerform
   =========================================================== */

/* Schriften selbst gehostet (statt Google Fonts direkt) — kein Cookie-Banner nötig,
   da beim Laden keine Verbindung/IP-Übertragung mehr an Google stattfindet. */
@font-face{font-family:'Amiko';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/amiko-400.woff2') format('woff2')}
@font-face{font-family:'Amiko';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/amiko-600.woff2') format('woff2')}
@font-face{font-family:'Amiko';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/amiko-700.woff2') format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/barlow-400.woff2') format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/barlow-500.woff2') format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/barlow-600.woff2') format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/barlow-700.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/barlow-condensed-500.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/barlow-condensed-600.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/barlow-condensed-700.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/barlow-condensed-800.woff2') format('woff2')}

:root{
  --orange:#F1531A; --orange-dark:#C94314;
  --ink:#12161A; --ink-2:#2A3138; --grey:#6A737B;
  --line:#E7E4DE; --bg:#FBFAF8; --bg-2:#F1EEE9; --white:#fff;
  --radius:14px;
  --shadow:0 12px 34px rgba(18,22,26,.09);
  --shadow-lg:0 26px 64px rgba(18,22,26,.16);
  --maxw:1200px;
  --font:'Barlow',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --display:'Barlow Condensed','Barlow',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.62;
  -webkit-font-smoothing:antialiased;font-size:17.5px;overflow-x:clip;max-width:100%}
img{max-width:100%;display:block;-webkit-user-drag:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--display);margin:0;font-weight:700;line-height:1.02;letter-spacing:.005em}
h1{font-size:clamp(2.9rem,7vw,5.4rem);text-transform:uppercase}
h2{font-size:clamp(2rem,4.4vw,3.4rem);text-transform:uppercase}
h3{font-size:1.5rem}
p{margin:0 0 1rem}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.hl{color:var(--orange)}
.muted{color:var(--grey)}
.ta-r{text-align:right}
.eyebrow{display:inline-flex;align-items:center;gap:.5em;font-weight:700;text-transform:uppercase;
  letter-spacing:.16em;font-size:.74rem;color:var(--orange);margin-bottom:1rem;font-family:var(--font)}
.eyebrow::before{content:"";width:26px;height:2px;background:currentColor;display:inline-block}
.eyebrow.light{color:var(--orange)}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;gap:.5em;font-weight:700;font-size:.98rem;padding:.85em 1.5em;
  border-radius:999px;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .15s,color .15s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 10px 24px rgba(241,83,26,.3)}
.btn-primary:hover{background:var(--orange-dark)}
.btn-ghost{border-color:currentColor}
.btn-ghost:hover{background:var(--ink);color:#fff}
.btn-light{background:#fff;color:var(--ink)}
.btn-wa{background:#25D366;color:#fff!important}.btn-wa:hover{background:#1ebe5d}

/* ---- Marken-Umschalter ---- */
.brandbar{background:var(--ink);color:#c8cdd1;font-size:.8rem}
.brandbar .wrap{display:flex;align-items:center;justify-content:space-between;height:38px;gap:16px}
.brandbar .fam{display:flex;gap:2px}
.brandbar a.fam-link{padding:.32em .9em;border-radius:999px;font-weight:700;color:#c8cdd1}
.brandbar a.fam-link.active{background:var(--orange);color:#fff}
.brandbar a.fam-link:not(.active):hover{color:#fff}
.brandbar .meta{display:flex;gap:18px}.brandbar .meta a:hover{color:#fff}
@media(max-width:680px){.brandbar .meta{display:none}}

/* ---- Header + Navigation ---- */
.site-head{position:sticky;top:0;z-index:60;background:rgba(251,250,248,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;min-height:128px;gap:18px}
.foot-logo{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.foot-icon{height:128px;width:auto;display:block;flex-shrink:0;border-radius:18px}
.foot-word{display:flex;flex-direction:column;justify-content:center}
.foot-hours{font-size:.94rem;line-height:1.6;opacity:.9}
.foot-hours b{display:block;margin-bottom:4px;opacity:1}
.foot-hours span{display:block;margin-top:3px}
.foot-hours em{font-style:normal;font-weight:600;opacity:.95}
.logo{display:flex;align-items:center;flex-shrink:0}
.logo-lockup{height:85px;width:auto}
.logo-icon{display:none;height:85px;width:auto;border-radius:14px}
@media(max-width:600px){.logo-lockup{display:none}.logo-icon{display:block}}
.nav{display:flex;gap:22px;align-items:center}
.nav>a,.sub-toggle{font-weight:600;font-size:1rem;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:.25em;padding:6px 0}
.nav>a:hover,.sub-toggle:hover{color:var(--orange)}
.nav>a.active{color:var(--orange)}
.car{font-size:.7em;transition:transform .2s}
.has-sub{position:relative}
.has-sub::after{content:"";position:absolute;left:0;right:-14px;top:100%;height:16px}
.has-sub .sub{position:absolute;top:calc(100% + 14px);left:-14px;min-width:248px;background:#fff;border:1px solid var(--line);
  border-radius:12px;box-shadow:var(--shadow-lg);padding:8px;display:none;flex-direction:column}
.has-sub .sub a{padding:.6em .8em;border-radius:8px;font-weight:600;font-size:.95rem;color:var(--ink-2)}
.has-sub .sub a:hover{background:var(--bg-2);color:var(--orange)}
.has-sub:hover .sub{display:flex}
.has-sub:hover .car{transform:rotate(180deg)}
.has-sub.act>.sub-toggle{color:var(--orange)}
.sub-note{display:block;font-size:.74rem;font-weight:500;color:var(--grey)}
.has-sub .sub a.sub-bridge{margin-top:6px;border-top:1px solid var(--line);border-radius:0 0 8px 8px;color:var(--orange);font-size:.86rem}
.has-sub .sub a.sub-bridge:hover{background:var(--bg-2)}
.nav-cta{display:flex;gap:10px;align-items:center;flex-wrap:nowrap;justify-content:flex-end}
.nav-cta .btn{height:48px;padding:0 1.5em;box-sizing:border-box}
.lang-switch{display:inline-flex;align-items:center;justify-content:center;gap:.35em;min-width:34px;height:34px;padding:0 11px;white-space:nowrap;
  border:1px solid var(--line);border-radius:9px;font-weight:700;font-size:.82rem;letter-spacing:.06em;
  color:var(--ink-2);text-decoration:none;background:#fff;transition:.15s}
.lang-switch:hover{border-color:var(--orange);color:var(--orange)}
.burger{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px;padding:8px}
.burger span{width:26px;height:2.5px;background:var(--ink);display:block;border-radius:2px}
@media(max-width:1080px){.nav-cta .btn-ghost{display:none}}
@media(max-width:700px){.nav-cta .btn-primary .cta-full{display:none}}
@media(max-width:640px){
  .lang-switch{min-width:0;height:28px;padding:0 6px;font-size:.68rem;gap:.2em}
  .lang-switch .lang-txt{display:none}
  .btn-wa-nav{height:32px;width:32px;font-size:.85rem}
  .nav-cta{gap:6px}
}
@media(max-width:960px){
  .site-head .wrap{justify-content:flex-start}
  .nav-cta{margin-left:auto;flex-wrap:wrap}
  .burger{display:flex;order:-1}
  .nav{position:absolute;top:100%;left:0;right:auto;width:min(84vw,320px);background:#fff;border-bottom:1px solid var(--line);
    border-right:1px solid var(--line);border-radius:0 0 14px 0;
    flex-direction:column;align-items:stretch;gap:0;padding:8px 16px 18px;display:none;box-shadow:var(--shadow-lg);max-height:calc(100vh - 100px);overflow:auto}
  .nav.open{display:flex}
  .nav>a,.sub-toggle{padding:14px 4px;border-bottom:1px solid var(--line);font-size:1.05rem}
  .has-sub .sub{position:static;display:none;box-shadow:none;border:0;min-width:0;padding:0 0 8px 12px}
  .has-sub.open .sub{display:flex}
  .has-sub.open .car{transform:rotate(180deg)}
}

/* ---- Hero ---- */
.hero{position:relative;overflow:hidden;background:var(--ink);color:#fff}
.hero .bg{position:absolute;inset:0}
.hero .bg img{width:100%;height:100%;object-fit:cover;opacity:.52}
.hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(18,22,26,.94) 0%,rgba(18,22,26,.72) 44%,rgba(18,22,26,.28) 100%)}
.hero .wrap{position:relative;padding:78px 24px 84px}
.hero.tall .wrap{padding:104px 24px 108px}
.hero h1{max-width:16ch}
.hero .lead{font-size:1.2rem;max-width:52ch;margin:1.3rem 0 1.9rem;color:#e7e9eb}
.hero .cta-row{display:flex;gap:12px;flex-wrap:wrap}
.badges{display:flex;gap:28px;flex-wrap:wrap;margin-top:2.4rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.16)}
.badges b{display:block;font-family:var(--display);font-size:1.9rem;color:#fff;line-height:1}
.badges span{font-size:.82rem;color:#b9bec3}

/* ---- Sections ---- */
section{padding:80px 0}
section.alt{background:var(--bg-2)}
.section-head{max-width:60ch;margin-bottom:44px}
.section-head.center{margin-inline:auto;text-align:center}
.section-head.center .eyebrow{justify-content:center}
.section-head h2{margin-bottom:.5rem}
.section-head .muted{font-size:1.12rem}

/* ---- Cards ---- */
.grid{display:grid;gap:22px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.grid-3,.grid-2{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);
  transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.card .ph{aspect-ratio:16/10;overflow:hidden;background:var(--bg-2)}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
/* Logo-Bilder in Karten vollständig zeigen statt beschneiden */
.card .ph img[src*="jobrad-1920w"]{object-fit:contain;padding:26px;background:#fff}
.card:hover .ph img{transform:scale(1.05)}
.card .body{padding:24px}
.card .kicker{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--orange)}
.card h3{margin:.4rem 0 .5rem}
.card p{font-size:.98rem;color:var(--grey);margin-bottom:1rem}
.card .more{font-weight:700;color:var(--ink);display:inline-flex;gap:.4em}
.card .more::after{content:"→";transition:transform .2s}
.card:hover .more::after{transform:translateX(4px)}

/* ---- Split ---- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.split.rev .txt{order:2}
.split .media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/3}
.split .media img{width:100%;height:100%;object-fit:cover}
/* Bike-Fitting: Portraits nicht am Kopf abschneiden – Bildausschnitt nach oben */
.page-bike-fitting .split .media img{object-position:center 22%}
.page-bike-fitting .hero .bg img{object-position:center 20%}
.split .media iframe{display:block;width:100%;height:100%}
@media(max-width:860px){.split{grid-template-columns:1fr;gap:28px}.split.rev .txt{order:0}}
.ticks{list-style:none;padding:0;margin:1.1rem 0 1.7rem}
.ticks li{padding:.35em 0 .35em 1.9em;position:relative}
.ticks li::before{content:"✓";position:absolute;left:0;color:var(--orange);font-weight:900}
.numlist{list-style:none;padding:0;margin:1rem 0 0;counter-reset:n}
.numlist li{display:flex;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:1.1rem;font-weight:500}
.numlist .n{flex:none;width:40px;height:40px;border-radius:50%;background:var(--orange);color:#fff;font-family:var(--display);
  font-weight:700;font-size:1.3rem;display:flex;align-items:center;justify-content:center}

/* ---- Partner-Leiste ---- */
.partners{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}
.partners .lbl{text-align:center;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--grey);margin-bottom:22px}
.partners .row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:36px}
.partners img{height:34px;width:auto;opacity:.55;filter:grayscale(1);transition:opacity .2s,filter .2s}
.partners img:hover{opacity:1;filter:none}
/* Leasing-Vergleich */
.lgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:960px;margin-inline:auto}
.lcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.lcard h3{margin-bottom:.15rem}
.lcard .lclaim{font-size:.82rem;color:var(--orange);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .9rem}
.lcard ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.55rem}
.lcard li{font-size:.9rem;padding-left:1.5em;position:relative;line-height:1.35;color:var(--ink-2)}
.lcard li.pro::before{content:"\2713";position:absolute;left:0;color:#16a34a;font-weight:800}
.lcard li.con::before{content:"\2715";position:absolute;left:0;color:#dc2626;font-weight:800}
.fein{text-align:center;font-size:.82rem;color:var(--grey);margin-top:22px;max-width:70ch;margin-inline:auto}
@media(max-width:900px){.lgrid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.lgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.lgrid{grid-template-columns:1fr}}
/* FAQ */
.faqlist{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.faq{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 20px}
.faq summary{cursor:pointer;font-weight:700;padding:16px 0;list-style:none;position:relative;padding-right:30px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:2px;top:12px;font-size:1.4rem;color:var(--orange);line-height:1}
.faq[open] summary::after{content:"\2013"}
.faq-a{padding:0 0 16px;color:var(--ink-2);font-size:.95rem;line-height:1.55}
.partners.marquee{overflow:hidden}
.partners.marquee .row{flex-wrap:nowrap;justify-content:flex-start;width:max-content;animation:marq 34s linear infinite;will-change:transform;-webkit-transform:translateZ(0)}
.partners.marquee:hover .row{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.partners.marquee .row{animation:none;flex-wrap:wrap;width:auto;justify-content:center}}

/* ---- Cross / Band (dunkel) ---- */
.cross{background:var(--ink);color:#fff;border-radius:22px;padding:52px;position:relative;overflow:hidden}
.cross::before{content:"";position:absolute;right:-60px;top:-60px;width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(241,83,26,.45),transparent 70%)}
.cross .inner{position:relative;display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:center}
.cross h2{color:#fff}
.cross p{color:#cfd4d8;max-width:56ch;margin:0}
.cross b{color:#fff}
@media(max-width:760px){.cross{padding:32px;text-align:center}.cross .inner{grid-template-columns:1fr}.cross p{margin:0 auto}.cross .ta-r{text-align:center}}

/* ---- Reviews ---- */
.review{background:#fff;border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);height:100%}
.review .stars{color:var(--orange);letter-spacing:2px;margin-bottom:.5rem}
.review p{font-size:.98rem}
.review .who{font-weight:700;font-size:.82rem;color:var(--grey);margin-top:.6rem}

/* ---- Events ---- */
.event-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
.event-card.hl-card{border-color:var(--orange);box-shadow:0 18px 44px rgba(241,83,26,.14)}
.event-card .tag{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:#fff;background:var(--orange);padding:.35em .8em;border-radius:999px;margin-bottom:.8rem}
.event-card h3{font-size:1.7rem;margin-bottom:.5rem}

/* ---- FAQ ---- */
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}
.faq summary{cursor:pointer;padding:18px 22px;font-weight:700;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--orange);font-size:1.5rem;font-weight:700;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details[open] summary{color:var(--orange)}
.faq p{padding:0 22px 20px;margin:0;color:var(--grey)}

/* ---- Kontakt ---- */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}
.contact .info b{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--grey);margin-top:1.2rem}
.contact .info a.big{font-size:1.3rem;font-weight:700;color:var(--ink)}
.contact .info .big-adr{font-size:1.2rem;font-weight:700;margin:.2rem 0 0}
.contact .media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);min-height:320px}
@media(max-width:860px){.contact{grid-template-columns:1fr}}

/* ---- Legal ---- */
.legal{max-width:74ch}
.legal h1{text-transform:none;font-size:2.6rem;margin-bottom:1rem}
.legal h3{margin:1.6rem 0 .5rem}
#artikel-body h2{text-transform:none;font-size:1.55rem;margin:2rem 0 .6rem}
#artikel-body h3{text-transform:none;font-size:1.2rem;margin:1.6rem 0 .5rem}
#artikel-body p{margin-bottom:1rem;line-height:1.7}
#artikel-body ul,#artikel-body ol{margin:.5rem 0 1rem 1.4rem;line-height:1.7}
#artikel-body li{margin-bottom:.3rem}

/* ---- Footer ---- */
.site-foot{background:var(--ink);color:#aeb4b9;padding:64px 0 26px;font-size:.94rem}
.site-foot .foot-top{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:38px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.12)}
.site-foot .foot-top p{flex:1;min-width:220px;margin:0}
.site-foot .foot-nl{flex:0 0 320px;max-width:100%}
.site-foot .foot-nl h4{margin-bottom:.6rem}
@media(max-width:820px){.site-foot .foot-nl{flex-basis:100%}}
.site-foot .cols{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:30px;margin-bottom:38px}
.site-foot .foot-brand{font-family:'Amiko',sans-serif;font-weight:700;font-size:1.25rem;color:#fff;line-height:1}
.site-foot .foot-brand span{color:var(--orange)}
.site-foot .foot-tag{font-family:'Amiko',sans-serif;font-weight:600;font-size:.78rem;color:var(--orange);margin:3px 0 0}
.site-foot h4{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 1rem;font-family:var(--font);font-weight:800}
.site-foot a{display:block;padding:.2em 0}.site-foot a:hover{color:#fff}
.site-foot a[href*="whatsapp"]{color:#25D366}.site-foot a[href*="whatsapp"]:hover{color:#1ebe5d}
.site-foot .fam-foot{display:flex;gap:12px;margin-top:14px}
.site-foot .fam-foot a{border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:.5em .9em;font-weight:700}
.site-foot .fam-foot a:hover{border-color:var(--orange);color:var(--orange)}
.site-foot .bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;font-size:.82rem;align-items:center}
.site-foot .bottom a{display:inline;padding:0}
.site-foot .bottom span:last-child{display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:820px){.site-foot .cols{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.site-foot .cols{grid-template-columns:1fr}}

/* ---- Google Trust Badge ---- */
.google-trust{display:inline-flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 20px;text-decoration:none;color:var(--ink);transition:box-shadow .2s,border-color .2s}
.google-trust:hover{box-shadow:var(--shadow);border-color:var(--orange)}
.google-trust img{width:46px;height:46px;border-radius:50%;flex-shrink:0;object-fit:cover}
.google-trust .trust-name{font-weight:700;font-size:.95rem;color:var(--ink);line-height:1.2}
.google-trust .trust-rating{color:var(--orange);font-size:.9rem;margin-top:3px;font-weight:600}
.google-trust .trust-rating b{color:var(--ink);font-weight:700}
.google-trust .trust-source{font-size:.75rem;color:var(--grey);margin-top:2px;display:flex;align-items:center;gap:5px}
.google-trust-wrap{margin-top:24px}
.google-trust-wrap.center{display:flex;justify-content:center}

.btn-wa-nav{display:inline-flex;align-items:center;justify-content:center;gap:.5em;height:48px;padding:0 1.5em;background:#25D366;color:#fff!important;
  border:2px solid transparent;border-radius:999px;font-weight:700;font-size:.98rem;text-decoration:none;white-space:nowrap;transition:transform .15s,background .15s;box-sizing:border-box}
.btn-wa-nav:hover{background:#1ebe5d;transform:translateY(-2px)}
@media(max-width:960px){.btn-wa-nav .wa-txt{display:none}.btn-wa-nav{width:48px;padding:0}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s,transform .6s}
.reveal.in{opacity:1;transform:none}

/* ---- Produkt-Popup (Shop) ---- */
.pmodal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}
.pmodal[hidden]{display:none}
.pmodal-backdrop{position:absolute;inset:0;background:rgba(18,22,26,.6);backdrop-filter:blur(2px)}
.pmodal-box{position:relative;background:#fff;border-radius:var(--radius);max-width:900px;width:100%;max-height:88vh;overflow:auto;padding:36px;box-shadow:var(--shadow-lg)}
.pmodal-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;background:var(--bg-2);border:0;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--ink);z-index:1}
.pmodal-close:hover{background:var(--line)}
.pmodal-body p.muted{padding:40px 0;text-align:center}
@media(max-width:680px){
  .pmodal{padding:0}
  .pmodal-box{max-width:none;width:100%;height:100%;max-height:none;border-radius:0;padding:24px}
  .pmodal-box .split{grid-template-columns:1fr}
}
