:root{--paper:#f3f1ec;--paper2:#fbfaf7;--ink:#111;--black:#151515;--grey:#686866;--line:#d4d1ca;--signal:#e84424;--signal2:#b92e16;--cyan:#16a9e0;--max:1600px;--pad:clamp(22px,4vw,72px);--section:clamp(72px,9vw,150px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body.pa3-site{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:18px;line-height:1.55}body.pa3-site.admin-bar .pa3-header{top:32px}a{color:inherit}.pa3-skip{position:absolute;left:-9999px}.pa3-skip:focus{left:20px;top:20px;z-index:99999;background:#fff;padding:12px}.pa3-header{position:sticky;top:0;z-index:9999;background:rgba(243,241,236,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.pa3-header-inner{max-width:var(--max);margin:auto;min-height:86px;padding:0 var(--pad);display:flex;align-items:center;gap:30px}.pa3-brand{text-decoration:none;display:flex;flex-direction:column;line-height:1}.pa3-brand strong{font-size:26px}.pa3-brand small{font-size:9px;letter-spacing:.14em;margin-top:7px}.pa3-nav{margin-left:auto}.pa3-menu{display:flex;align-items:center;gap:5px;list-style:none;margin:0;padding:0}.pa3-menu>li{position:relative}.pa3-menu>li>a{display:block;text-decoration:none;padding:32px 12px;font-size:13px;font-weight:700}.pa3-menu .sub-menu{position:absolute;left:0;top:100%;min-width:260px;background:var(--paper2);border:1px solid var(--line);padding:8px;list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s}.pa3-menu li:hover>.sub-menu,.pa3-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.pa3-menu .sub-menu a{display:block;padding:12px;text-decoration:none;font-size:14px}.pa3-menu .sub-menu a:hover{background:#fff}.pa3-menu-cta>a{background:var(--signal);color:#fff!important;padding:13px 15px!important;margin-left:8px}.pa3-menu-toggle{display:none;border:1px solid var(--ink);background:transparent;padding:10px 13px;font-weight:700}.pa3-main{min-height:60vh}.pa3-section{border-bottom:1px solid var(--line);padding:var(--section) 0}.pa3-section.pa3-dark{background:var(--black);color:var(--paper);border-color:#303030}.pa3-section.pa3-soft{background:var(--paper2)}.pa3-wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}.pa3-kicker{font:700 12px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);margin:0 0 28px}.pa3-dark .pa3-kicker{color:#aaa}h1,h2,h3{font-family:Helvetica Neue,Arial,sans-serif;letter-spacing:-.045em;line-height:.94;margin:0 0 .5em}h1{font-size:clamp(58px,8vw,134px)}h2{font-size:clamp(46px,6vw,96px)}h3{font-size:clamp(26px,2.7vw,42px);line-height:1.02}em{font-style:normal;color:var(--signal)}.pa3-lead{font-size:clamp(21px,2vw,31px);line-height:1.38}.pa3-narrow{max-width:850px}.pa3-display{font-size:clamp(78px,11vw,190px)}.pa3-hero{min-height:calc(100vh - 86px);display:flex;align-items:flex-end}.pa3-hero .pa3-wrap{padding-top:80px;padding-bottom:80px}.pa3-hero-bottom{display:grid;grid-template-columns:.8fr 1.5fr;gap:70px;align-items:start;max-width:1250px;margin-top:55px}.pa3-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.pa3-btn{display:inline-flex;align-items:center;gap:18px;padding:15px 18px;text-decoration:none;border:1px solid currentColor;font-size:12px;font-weight:800;letter-spacing:.05em;background:transparent}.pa3-btn-primary{background:var(--signal);border-color:var(--signal);color:#fff}.pa3-btn-primary:hover{background:var(--signal2);border-color:var(--signal2)}.pa3-btn-ghost:hover{background:var(--ink);color:var(--paper)}.pa3-dark .pa3-btn-ghost:hover{background:var(--paper);color:var(--ink)}.pa3-problem-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-top:55px}.pa3-problem{padding:clamp(26px,3.5vw,55px);text-decoration:none;border-right:1px solid var(--line);min-height:380px;display:flex;flex-direction:column;transition:.18s}.pa3-problem:last-child{border-right:0}.pa3-problem small{font:700 11px/1 ui-monospace,monospace;letter-spacing:.08em}.pa3-problem h3{margin-top:70px}.pa3-problem b{font-size:12px;margin-top:auto}.pa3-problem:hover{background:var(--signal);color:#fff}.pa3-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,120px);align-items:start}.pa3-chips,.pa3-chipgrid{display:flex;flex-wrap:wrap;border-top:1px solid var(--line);margin:40px 0}.pa3-chips span,.pa3-chipgrid span{padding:15px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font:700 12px/1 ui-monospace,monospace;letter-spacing:.06em}.pa3-chipgrid{display:grid;grid-template-columns:repeat(4,1fr)}.pa3-chipgrid span{min-height:100px;display:flex;align-items:flex-end}.pa3-project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;margin-top:55px}.pa3-project-card{background:var(--paper2);border:1px solid var(--line)}.pa3-project-img{display:block;aspect-ratio:4/3;overflow:hidden}.pa3-project-img img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s}.pa3-project-card:hover img{transform:scale(1.015)}.pa3-project-card>div{padding:clamp(28px,3vw,48px)}.pa3-project-card small{font:700 11px/1 ui-monospace,monospace;letter-spacing:.08em;color:var(--grey)}.pa3-project-card h3{margin-top:30px}.pa3-project-card h3 a{text-decoration:none}.pa3-arrow{color:var(--signal);font-weight:800;font-size:12px;text-decoration:none}.pa3-duality{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-bottom:1px solid #363636;padding-bottom:70px;margin-bottom:70px}.pa3-center{text-align:center}.pa3-person{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,7vw,120px);align-items:center}.pa3-person-img,.pa3-about-img{width:100%;height:auto;max-height:900px;object-fit:cover;display:block}.pa3-price-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin:55px 0 38px}.pa3-price-grid article{padding:clamp(30px,4vw,60px);border-right:1px solid var(--line)}.pa3-price-grid article:last-child{border-right:0}.pa3-price-grid .featured{box-shadow:inset 0 0 0 3px var(--signal)}.pa3-price-grid small{font:700 12px ui-monospace,monospace}.pa3-price-grid strong{display:block;font-size:clamp(36px,4vw,64px);margin:20px 0;line-height:1}.pa3-score-demo{display:flex;align-items:flex-end;gap:18px;margin:50px 0}.pa3-score-demo strong{font-size:clamp(100px,15vw,230px);line-height:.75;letter-spacing:-.08em}.pa3-score-demo span{font:700 12px ui-monospace,monospace}.pa3-cardgrid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin-top:55px}.pa3-cardgrid article{padding:clamp(28px,4vw,56px);border-right:1px solid var(--line);min-height:260px}.pa3-cardgrid article:last-child{border-right:0}.pa3-case-img{width:100%;display:block;margin:55px 0;border:1px solid var(--line)}.pa3-case-facts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.pa3-case-facts span{padding:24px;border-right:1px solid var(--line);font-weight:700}.pa3-case-facts span:last-child{border-right:0}.pa3-contact-link{font-size:clamp(26px,3vw,48px);color:var(--signal);text-decoration:none}.pa3-form label,.pa3-check label{display:block;font-size:14px;font-weight:700;margin-bottom:22px}.pa3-form input,.pa3-form select,.pa3-form textarea,.pa3-check input{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:13px 0;font-size:18px;border-radius:0}.pa3-form textarea{border:1px solid var(--line);padding:14px}.pa3-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.pa3-consent{font-weight:400!important;font-size:13px!important}.pa3-consent input{width:auto!important;margin-right:8px}.pa3-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.pa3-progress{height:4px;background:var(--line);position:sticky;top:86px;z-index:20;margin:35px 0 50px}.pa3-progress span{display:block;height:100%;background:var(--signal);width:0;transition:.2s}.pa3-question{border:0;border-top:1px solid var(--line);padding:42px 0;margin:0}.pa3-question legend{font-size:clamp(22px,2.3vw,36px);font-weight:800;line-height:1.2;max-width:1050px}.pa3-question legend small{display:block;font:700 11px ui-monospace,monospace;color:var(--grey);margin-bottom:12px}.pa3-scale{display:flex;gap:8px;margin-top:24px}.pa3-scale label{margin:0}.pa3-scale input{position:absolute;opacity:0;width:1px}.pa3-scale span{width:54px;height:54px;border:1px solid var(--line);display:grid;place-items:center;cursor:pointer}.pa3-scale input:checked+span,.pa3-scale label:hover span{background:var(--signal);border-color:var(--signal);color:#fff}.pa3-scale-labels{display:flex;justify-content:space-between;max-width:302px;color:var(--grey);font-size:11px}.pa3-check-contact{border-top:1px solid var(--line);padding-top:60px}.pa3-check-result{margin-top:70px;padding-top:60px;border-top:1px solid var(--line)}.pa3-score-result{display:flex;align-items:flex-end;gap:15px}.pa3-score-result strong{font-size:clamp(100px,15vw,220px);line-height:.8}.pa3-result-row{display:grid;grid-template-columns:180px 80px 1fr;gap:20px;align-items:center;border-top:1px solid var(--line);padding:14px 0;font:700 12px ui-monospace,monospace}.pa3-result-row i{height:4px;background:var(--line)}.pa3-result-row u{display:block;height:100%;background:var(--signal)}.pa3-article-grid{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--line);margin-top:55px}.pa3-article-grid article{padding:clamp(28px,4vw,55px);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.pa3-article-grid small{font:700 11px ui-monospace,monospace;color:var(--grey)}.pa3-article-grid h3{margin-top:35px}.pa3-article-grid h3 a{text-decoration:none}.pa3-article-body,.pa3-legal{max-width:960px}.pa3-footer{background:var(--black);color:var(--paper);padding:clamp(80px,9vw,140px) 0 45px}.pa3-footer-cta{margin-bottom:90px}.pa3-footer-grid{display:grid;grid-template-columns:1.4fr 1.2fr 1fr 1fr;gap:40px;padding-top:40px;border-top:1px solid #363636;line-height:1.8}.pa3-footer a{color:inherit;text-decoration:none}.pa3-footer strong{font-size:24px}
@media(max-width:1100px){body.pa3-site{font-size:17px}.pa3-menu-toggle{display:block;margin-left:auto}.pa3-nav{position:absolute;left:0;right:0;top:100%;background:var(--paper2);border-bottom:1px solid var(--line);display:none;padding:12px var(--pad) 25px}.pa3-nav.is-open{display:block}.pa3-menu{display:block}.pa3-menu>li>a{padding:14px 0;font-size:17px}.pa3-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;border:0;background:transparent;padding:0 0 10px 18px}.pa3-menu-cta>a{margin:10px 0 0!important;padding:13px!important;display:inline-block!important}.pa3-problem-grid{grid-template-columns:1fr 1fr}.pa3-problem:nth-child(2){border-right:0}.pa3-problem:nth-child(-n+2){border-bottom:1px solid var(--line)}.pa3-chipgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){body.pa3-site.admin-bar .pa3-header{top:46px}.pa3-hero{min-height:auto}.pa3-hero-bottom,.pa3-two,.pa3-person,.pa3-duality{grid-template-columns:1fr;gap:35px}.pa3-project-grid,.pa3-price-grid,.pa3-cardgrid,.pa3-article-grid{grid-template-columns:1fr}.pa3-price-grid article,.pa3-cardgrid article{border-right:0;border-bottom:1px solid var(--line)}.pa3-project-grid{gap:22px}.pa3-case-facts{grid-template-columns:1fr 1fr}.pa3-case-facts span:nth-child(2){border-right:0}.pa3-form-grid{grid-template-columns:1fr}.pa3-footer-grid{grid-template-columns:1fr 1fr}.pa3-progress{top:70px}}
@media(max-width:540px){.pa3-header-inner{min-height:70px}.pa3-brand strong{font-size:21px}.pa3-brand small{font-size:8px}.pa3-section{padding:70px 0}.pa3-display{font-size:clamp(62px,18vw,92px)}h1{font-size:clamp(52px,15vw,82px)}h2{font-size:clamp(42px,12vw,68px)}.pa3-problem-grid{grid-template-columns:1fr}.pa3-problem{border-right:0!important;border-bottom:1px solid var(--line);min-height:300px}.pa3-chipgrid{grid-template-columns:1fr 1fr}.pa3-case-facts,.pa3-footer-grid{grid-template-columns:1fr}.pa3-case-facts span{border-right:0;border-bottom:1px solid var(--line)}.pa3-scale span{width:46px;height:46px}.pa3-result-row{grid-template-columns:1fr auto}.pa3-result-row i{grid-column:1/-1}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* PixelArzt 3.3 contrast hotfix
   Enfold can assign explicit dark colors to headings. These scoped rules
   make all dark PixelArzt surfaces reliably readable. */
body.pa3-site .pa3-section.pa3-dark,
body.pa3-site .pa3-footer{
  color:#f3f1ec !important;
}
body.pa3-site .pa3-section.pa3-dark h1,
body.pa3-site .pa3-section.pa3-dark h2,
body.pa3-site .pa3-section.pa3-dark h3,
body.pa3-site .pa3-section.pa3-dark h4,
body.pa3-site .pa3-section.pa3-dark h5,
body.pa3-site .pa3-section.pa3-dark h6,
body.pa3-site .pa3-section.pa3-dark p,
body.pa3-site .pa3-section.pa3-dark li,
body.pa3-site .pa3-section.pa3-dark strong,
body.pa3-site .pa3-section.pa3-dark b,
body.pa3-site .pa3-section.pa3-dark span:not(.pa3-btn span),
body.pa3-site .pa3-footer h1,
body.pa3-site .pa3-footer h2,
body.pa3-site .pa3-footer h3,
body.pa3-site .pa3-footer h4,
body.pa3-site .pa3-footer h5,
body.pa3-site .pa3-footer h6,
body.pa3-site .pa3-footer p,
body.pa3-site .pa3-footer li,
body.pa3-site .pa3-footer strong,
body.pa3-site .pa3-footer b{
  color:#f3f1ec !important;
}
body.pa3-site .pa3-section.pa3-dark .pa3-kicker,
body.pa3-site .pa3-footer .pa3-kicker{
  color:#b8b8b3 !important;
}
body.pa3-site .pa3-section.pa3-dark em,
body.pa3-site .pa3-footer em{
  color:#e84424 !important;
}
body.pa3-site .pa3-section.pa3-dark a:not(.pa3-btn),
body.pa3-site .pa3-footer a{
  color:#f3f1ec !important;
}
body.pa3-site .pa3-section.pa3-dark .pa3-btn-primary,
body.pa3-site .pa3-footer .pa3-btn-primary{
  color:#fff !important;
}
body.pa3-site .pa3-section.pa3-dark .pa3-btn-ghost{
  color:#f3f1ec !important;
}


/* PixelArzt 3.4 spacing refinement
   Keeps the editorial feel but removes excessive empty areas,
   especially on tablets and smaller desktop screens. */

:root{
  --pa-section: clamp(56px, 6vw, 104px);
}

/* Standard section rhythm */
body.pa3-site .pa3-section{
  padding-top: var(--pa-section) !important;
  padding-bottom: var(--pa-section) !important;
}

/* Hero: no more forced full-viewport emptiness */
body.pa3-site .pa3-hero{
  min-height: auto !important;
  padding-top: clamp(72px, 8vw, 118px) !important;
  padding-bottom: clamp(72px, 8vw, 118px) !important;
}

/* Tighten large vertical gaps created by section stacks */
body.pa3-site .pa3-section + .pa3-section{
  margin-top: 0 !important;
}

/* Footer should feel substantial but not oversized */
body.pa3-site .pa3-footer{
  padding-top: clamp(64px, 7vw, 96px) !important;
  padding-bottom: clamp(48px, 5vw, 72px) !important;
}

/* Dark CTA areas should not create an empty viewport */
body.pa3-site .pa3-section.pa3-dark{
  min-height: auto !important;
}

/* Tablet landscape / portrait */
@media (max-width: 1180px){
  :root{
    --pa-section: 64px;
  }

  body.pa3-site .pa3-hero{
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }

  body.pa3-site .pa3-section{
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  body.pa3-site .pa3-footer{
    padding-top: 64px !important;
    padding-bottom: 48px !important;
  }
}

/* Tablet portrait / large phones */
@media (max-width: 820px){
  :root{
    --pa-section: 48px;
  }

  body.pa3-site .pa3-hero{
    padding-top: 52px !important;
    padding-bottom: 56px !important;
  }

  body.pa3-site .pa3-section{
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  body.pa3-site .pa3-footer{
    padding-top: 52px !important;
    padding-bottom: 40px !important;
  }
}

/* Phones */
@media (max-width: 560px){
  :root{
    --pa-section: 36px;
  }

  body.pa3-site .pa3-hero{
    padding-top: 40px !important;
    padding-bottom: 44px !important;
  }

  body.pa3-site .pa3-section{
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }

  body.pa3-site .pa3-footer{
    padding-top: 44px !important;
    padding-bottom: 32px !important;
  }
}


/* PixelArzt 3.5 mobile responsiveness hotfix
   Prevents horizontal scrolling and forces grids/media/text to fit viewport. */

html, body{
  width:100%;
  max-width:100%;
  overflow-x:hidden !important;
}

body.pa3-site,
body.pa3-site #wrap_all,
body.pa3-site #main,
body.pa3-site .container_wrap,
body.pa3-site .container{
  width:100% !important;
  max-width:100% !important;
  overflow-x:hidden !important;
}

/* Every PixelArzt component may shrink */
body.pa3-site *,
body.pa3-site *::before,
body.pa3-site *::after{
  box-sizing:border-box;
  min-width:0;
}

/* Media can never exceed the viewport/container */
body.pa3-site img,
body.pa3-site picture,
body.pa3-site video,
body.pa3-site iframe,
body.pa3-site svg,
body.pa3-site canvas{
  display:block;
  max-width:100% !important;
  height:auto !important;
}

body.pa3-site iframe{
  width:100% !important;
}

/* Long words/URLs must wrap instead of widening the page */
body.pa3-site h1,
body.pa3-site h2,
body.pa3-site h3,
body.pa3-site h4,
body.pa3-site h5,
body.pa3-site h6,
body.pa3-site p,
body.pa3-site li,
body.pa3-site a,
body.pa3-site label,
body.pa3-site input,
body.pa3-site textarea,
body.pa3-site select{
  overflow-wrap:anywhere;
  word-break:normal;
}

/* Fluid inner width on all devices */
body.pa3-site .pa3-inner{
  width:min(100% - 40px, 1480px) !important;
  max-width:1480px !important;
  margin-inline:auto !important;
}

/* Flexible grids: no fixed columns may force overflow */
body.pa3-site .pa3-grid,
body.pa3-site .pa3-grid-2,
body.pa3-site .pa3-grid-3,
body.pa3-site .pa3-grid-4,
body.pa3-site .pa3-footer-grid,
body.pa3-site .pa3-form-grid{
  max-width:100% !important;
}

/* Tables/code areas must scroll internally, never the whole site */
body.pa3-site table{
  max-width:100%;
}
body.pa3-site pre,
body.pa3-site code{
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

/* Forms */
body.pa3-site input,
body.pa3-site select,
body.pa3-site textarea,
body.pa3-site button{
  max-width:100% !important;
}
body.pa3-site input,
body.pa3-site select,
body.pa3-site textarea{
  width:100%;
}

/* Mobile + tablet */
@media (max-width: 900px){
  body.pa3-site .pa3-inner{
    width:calc(100% - 36px) !important;
  }

  body.pa3-site .pa3-grid,
  body.pa3-site .pa3-grid-2,
  body.pa3-site .pa3-grid-3,
  body.pa3-site .pa3-grid-4,
  body.pa3-site .pa3-footer-grid,
  body.pa3-site .pa3-form-grid{
    grid-template-columns:minmax(0,1fr) !important;
  }

  body.pa3-site .pa3-hero-grid,
  body.pa3-site .pa3-split{
    grid-template-columns:minmax(0,1fr) !important;
  }

  /* Header navigation becomes horizontally safe */
  body.pa3-site .pa3-header-inner{
    width:calc(100% - 32px) !important;
    max-width:100% !important;
  }

  body.pa3-site .pa3-nav{
    max-width:100% !important;
  }

  /* Large typography must scale to phone width */
  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1{
    font-size:clamp(52px, 15vw, 96px) !important;
    line-height:.88 !important;
    letter-spacing:-.055em !important;
    max-width:100% !important;
  }

  body.pa3-site h2{
    font-size:clamp(34px, 9vw, 58px) !important;
    line-height:.96 !important;
  }

  body.pa3-site h3{
    font-size:clamp(24px, 6.5vw, 38px) !important;
  }

  body.pa3-site .pa3-lead{
    font-size:clamp(18px, 4.7vw, 24px) !important;
  }

  /* Cards and project visuals */
  body.pa3-site .pa3-card,
  body.pa3-site .pa3-project-card,
  body.pa3-site .pa3-project-visual,
  body.pa3-site .pa3-person,
  body.pa3-site .pa3-score{
    width:100% !important;
    max-width:100% !important;
  }
}

/* Phones */
@media (max-width: 600px){
  body.pa3-site .pa3-inner{
    width:calc(100% - 28px) !important;
  }

  body.pa3-site .pa3-header-inner{
    width:calc(100% - 24px) !important;
  }

  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1{
    font-size:clamp(46px, 15.5vw, 74px) !important;
  }

  body.pa3-site .pa3-btn{
    max-width:100%;
    white-space:normal !important;
    text-align:left;
  }

  body.pa3-site .pa3-section{
    overflow:hidden;
  }
}


/* PixelArzt 3.6 – mobile overflow fix
   Hardens the actual PA3 containers instead of only generic wrappers. */

html{
  max-width:100%;
  overflow-x:clip !important;
}
body.pa3-site{
  width:100%;
  max-width:100vw;
  overflow-x:clip !important;
}

/* Actual layout wrapper used by every PixelArzt section */
body.pa3-site .pa3-wrap{
  width:100% !important;
  max-width:1600px !important;
  padding-left:clamp(14px,4vw,72px) !important;
  padding-right:clamp(14px,4vw,72px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  overflow-x:clip;
}

/* Never let section contents create a wider document */
body.pa3-site .pa3-main,
body.pa3-site .pa3-section,
body.pa3-site .pa3-header,
body.pa3-site .pa3-footer,
body.pa3-site .pa3-wrap{
  max-inline-size:100%;
}

/* Flex/grid children must be allowed to shrink */
body.pa3-site .pa3-wrap > *,
body.pa3-site .pa3-two > *,
body.pa3-site .pa3-person > *,
body.pa3-site .pa3-duality > *,
body.pa3-site .pa3-project-grid > *,
body.pa3-site .pa3-price-grid > *,
body.pa3-site .pa3-cardgrid > *,
body.pa3-site .pa3-article-grid > *,
body.pa3-site .pa3-footer-grid > *,
body.pa3-site .pa3-form-grid > *,
body.pa3-site .pa3-hero-bottom > *{
  min-width:0 !important;
  max-width:100%;
}

/* Images and project mockups */
body.pa3-site .pa3-project-img,
body.pa3-site .pa3-project-img img,
body.pa3-site .pa3-case-img,
body.pa3-site .pa3-person-img,
body.pa3-site .pa3-about-img{
  max-width:100% !important;
  width:100% !important;
}

/* Prevent large decorative/score elements from widening mobile viewport */
body.pa3-site .pa3-score-demo,
body.pa3-site .pa3-score-result{
  max-width:100%;
  flex-wrap:wrap;
}

/* Digital check scale previously could become wider than narrow phones */
@media (max-width:600px){
  body.pa3-site .pa3-wrap{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  body.pa3-site .pa3-scale{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:5px !important;
    width:100% !important;
    max-width:100% !important;
  }

  body.pa3-site .pa3-scale label{
    min-width:0 !important;
    width:100% !important;
  }

  body.pa3-site .pa3-scale span{
    width:100% !important;
    height:auto !important;
    aspect-ratio:1 / 1;
    max-width:none !important;
  }

  body.pa3-site .pa3-scale-labels{
    width:100% !important;
    max-width:100% !important;
  }

  body.pa3-site .pa3-chipgrid{
    grid-template-columns:1fr !important;
  }

  body.pa3-site .pa3-chips span,
  body.pa3-site .pa3-chipgrid span{
    width:100% !important;
    border-right:0 !important;
  }

  body.pa3-site .pa3-actions{
    width:100%;
  }

  body.pa3-site .pa3-actions .pa3-btn{
    width:100%;
    justify-content:space-between;
  }

  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1,
  body.pa3-site h1,
  body.pa3-site h2,
  body.pa3-site h3{
    max-width:100% !important;
    overflow-wrap:break-word !important;
    hyphens:auto;
  }

  body.pa3-site .pa3-contact-link{
    font-size:clamp(20px,7vw,34px) !important;
  }

  body.pa3-site .pa3-score-demo strong,
  body.pa3-site .pa3-score-result strong{
    font-size:clamp(72px,30vw,126px) !important;
  }

  /* Any accidental fixed-width Enfold content nested around the plugin */
  body.pa3-site #wrap_all,
  body.pa3-site #main,
  body.pa3-site .container_wrap,
  body.pa3-site .container,
  body.pa3-site .content,
  body.pa3-site .entry-content-wrapper{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
}


/* PixelArzt 3.7 – mobile typography/readability
   Makes all secondary and body copy comfortably readable on phones. */

@media (max-width:700px){

  body.pa3-site{
    font-size:18px !important;
    line-height:1.58 !important;
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }

  /* Normal copy */
  body.pa3-site p,
  body.pa3-site li,
  body.pa3-site .pa3-card p,
  body.pa3-site .pa3-problem p,
  body.pa3-site .pa3-project-card p,
  body.pa3-site .pa3-price-grid p,
  body.pa3-site .pa3-article-grid p,
  body.pa3-site .pa3-person p,
  body.pa3-site .pa3-two p,
  body.pa3-site .pa3-duality p,
  body.pa3-site .pa3-footer p{
    font-size:17px !important;
    line-height:1.58 !important;
  }

  body.pa3-site .pa3-lead{
    font-size:20px !important;
    line-height:1.45 !important;
  }

  /* Headings: strong hierarchy without becoming cramped */
  body.pa3-site h1{
    font-size:clamp(46px,14vw,66px) !important;
    line-height:.93 !important;
  }

  body.pa3-site h2{
    font-size:clamp(32px,9.5vw,44px) !important;
    line-height:1 !important;
  }

  body.pa3-site h3{
    font-size:clamp(24px,7vw,31px) !important;
    line-height:1.08 !important;
  }

  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1{
    font-size:clamp(48px,15vw,70px) !important;
    line-height:.88 !important;
  }

  /* Meta/kicker labels were much too small on phones */
  body.pa3-site .pa3-kicker{
    font-size:13px !important;
    line-height:1.35 !important;
    letter-spacing:.1em !important;
    margin-bottom:20px !important;
  }

  body.pa3-site .pa3-problem small,
  body.pa3-site .pa3-project-card small,
  body.pa3-site .pa3-article-grid small,
  body.pa3-site .pa3-question legend small,
  body.pa3-site .pa3-price-grid small{
    font-size:13px !important;
    line-height:1.35 !important;
  }

  body.pa3-site .pa3-problem b,
  body.pa3-site .pa3-arrow{
    font-size:14px !important;
    line-height:1.35 !important;
  }

  body.pa3-site .pa3-chips span,
  body.pa3-site .pa3-chipgrid span{
    font-size:14px !important;
    line-height:1.35 !important;
    padding:14px 16px !important;
  }

  /* Buttons */
  body.pa3-site .pa3-btn{
    font-size:14px !important;
    line-height:1.25 !important;
    padding:16px 17px !important;
    min-height:48px;
  }

  /* Forms + Digital Check */
  body.pa3-site .pa3-form label,
  body.pa3-site .pa3-check label{
    font-size:16px !important;
    line-height:1.35 !important;
  }

  body.pa3-site .pa3-form input,
  body.pa3-site .pa3-form select,
  body.pa3-site .pa3-form textarea,
  body.pa3-site .pa3-check input{
    font-size:17px !important;
    line-height:1.45 !important;
  }

  body.pa3-site .pa3-consent{
    font-size:14px !important;
    line-height:1.5 !important;
  }

  body.pa3-site .pa3-question legend{
    font-size:22px !important;
    line-height:1.25 !important;
  }

  body.pa3-site .pa3-scale-labels{
    font-size:13px !important;
  }

  body.pa3-site .pa3-result-row{
    grid-template-columns:1fr !important;
    gap:5px !important;
    font-size:14px !important;
    line-height:1.4 !important;
    padding:16px 0 !important;
  }

  /* Pricing */
  body.pa3-site .pa3-price-grid strong{
    font-size:42px !important;
  }

  /* Footer */
  body.pa3-site .pa3-footer strong{
    font-size:22px !important;
  }

  body.pa3-site .pa3-footer a{
    font-size:16px !important;
    line-height:1.5 !important;
  }

  /* Brand / mobile navigation */
  body.pa3-site .pa3-brand strong{
    font-size:23px !important;
  }

  body.pa3-site .pa3-brand small{
    font-size:10px !important;
  }

  body.pa3-site .pa3-menu-toggle{
    font-size:13px !important;
  }

  body.pa3-site .pa3-menu>li>a,
  body.pa3-site .pa3-menu .sub-menu a{
    font-size:18px !important;
    line-height:1.3 !important;
  }
}

@media (max-width:390px){
  body.pa3-site{
    font-size:17px !important;
  }

  body.pa3-site p,
  body.pa3-site li,
  body.pa3-site .pa3-card p,
  body.pa3-site .pa3-problem p,
  body.pa3-site .pa3-project-card p,
  body.pa3-site .pa3-price-grid p,
  body.pa3-site .pa3-article-grid p,
  body.pa3-site .pa3-person p,
  body.pa3-site .pa3-two p,
  body.pa3-site .pa3-duality p,
  body.pa3-site .pa3-footer p{
    font-size:16px !important;
  }

  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1{
    font-size:clamp(44px,14.5vw,60px) !important;
  }

  body.pa3-site h2{
    font-size:clamp(30px,9vw,40px) !important;
  }
}


/* PixelArzt 3.8 – centered smartphone layout + intelligent text wrapping */

@media (max-width:700px){

  /* Center all primary content blocks on phones */
  body.pa3-site .pa3-section,
  body.pa3-site .pa3-hero,
  body.pa3-site .pa3-footer,
  body.pa3-site .pa3-card,
  body.pa3-site .pa3-project-card,
  body.pa3-site .pa3-person,
  body.pa3-site .pa3-two,
  body.pa3-site .pa3-duality,
  body.pa3-site .pa3-price-grid > *,
  body.pa3-site .pa3-article-grid > *,
  body.pa3-site .pa3-problem,
  body.pa3-site .pa3-score,
  body.pa3-site .pa3-question{
    text-align:center !important;
  }

  /* Center inner wrappers and their direct content */
  body.pa3-site .pa3-wrap{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site .pa3-wrap > *,
  body.pa3-site .pa3-card > *,
  body.pa3-site .pa3-project-card > *,
  body.pa3-site .pa3-person > *,
  body.pa3-site .pa3-two > *,
  body.pa3-site .pa3-duality > *{
    margin-left:auto;
    margin-right:auto;
  }

  /* Headings and text should always fit the display */
  body.pa3-site h1,
  body.pa3-site h2,
  body.pa3-site h3,
  body.pa3-site h4,
  body.pa3-site h5,
  body.pa3-site h6,
  body.pa3-site p,
  body.pa3-site li,
  body.pa3-site a,
  body.pa3-site strong,
  body.pa3-site span,
  body.pa3-site small,
  body.pa3-site label,
  body.pa3-site legend{
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-wrap:break-word !important;
    word-break:normal !important;
    hyphens:auto;
  }

  /* Constrain readable text lines and center them */
  body.pa3-site p,
  body.pa3-site .pa3-lead,
  body.pa3-site .pa3-copy,
  body.pa3-site .pa3-intro{
    max-width:34em !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Headlines adapt fluidly to the actual phone width */
  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1{
    font-size:clamp(42px,14vw,68px) !important;
    line-height:.9 !important;
    text-wrap:balance;
  }

  body.pa3-site h2{
    font-size:clamp(30px,9.5vw,44px) !important;
    text-wrap:balance;
  }

  body.pa3-site h3{
    font-size:clamp(23px,7vw,31px) !important;
    text-wrap:balance;
  }

  /* Center actions and buttons */
  body.pa3-site .pa3-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    width:100%;
  }

  body.pa3-site .pa3-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    width:auto !important;
    max-width:100% !important;
    white-space:normal !important;
  }

  /* Center lists and ticks while keeping them readable */
  body.pa3-site ul,
  body.pa3-site ol{
    max-width:34em !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    list-style-position:inside;
  }

  /* Center chips/meta labels */
  body.pa3-site .pa3-kicker,
  body.pa3-site .pa3-chips,
  body.pa3-site .pa3-chipgrid,
  body.pa3-site .pa3-meta,
  body.pa3-site .pa3-arrow{
    text-align:center !important;
    justify-content:center !important;
  }

  /* Center media */
  body.pa3-site img,
  body.pa3-site picture,
  body.pa3-site video,
  body.pa3-site iframe,
  body.pa3-site svg{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Project imagery should be full-width within the centered phone container */
  body.pa3-site .pa3-project-img,
  body.pa3-site .pa3-project-visual,
  body.pa3-site .pa3-person-img,
  body.pa3-site .pa3-about-img{
    width:100% !important;
    max-width:100% !important;
  }

  /* Forms: fields stay full-width, labels centered */
  body.pa3-site .pa3-form,
  body.pa3-site .pa3-check{
    text-align:center !important;
  }

  body.pa3-site .pa3-form label,
  body.pa3-site .pa3-check label{
    text-align:center !important;
    width:100%;
  }

  body.pa3-site .pa3-form input,
  body.pa3-site .pa3-form select,
  body.pa3-site .pa3-form textarea{
    text-align:left !important;
    width:100% !important;
  }

  /* Footer centered on smartphones */
  body.pa3-site .pa3-footer-grid{
    text-align:center !important;
  }

  body.pa3-site .pa3-footer-grid > *{
    align-items:center !important;
    justify-content:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Mobile navigation centered */
  body.pa3-site .pa3-menu,
  body.pa3-site .pa3-menu .sub-menu{
    text-align:center !important;
  }

  body.pa3-site .pa3-menu>li>a,
  body.pa3-site .pa3-menu .sub-menu a{
    justify-content:center !important;
    text-align:center !important;
    white-space:normal !important;
  }
}

/* Very narrow phones */
@media (max-width:390px){
  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1{
    font-size:clamp(40px,13.8vw,56px) !important;
  }

  body.pa3-site h2{
    font-size:clamp(28px,9vw,38px) !important;
  }

  body.pa3-site .pa3-btn{
    width:100% !important;
  }
}


/* PixelArzt 3.9 – smartphone readability + complete centering
   Intentionally stronger than previous mobile rules. */

@media (max-width:700px){

  html{
    font-size:18px !important;
  }

  body.pa3-site{
    font-size:19px !important;
    line-height:1.6 !important;
    text-align:center !important;
  }

  /* EVERYTHING in the visible PixelArzt content is centered by default */
  body.pa3-site .pa3-main,
  body.pa3-site .pa3-main section,
  body.pa3-site .pa3-main div,
  body.pa3-site .pa3-main article,
  body.pa3-site .pa3-main header,
  body.pa3-site .pa3-main footer,
  body.pa3-site .pa3-footer,
  body.pa3-site .pa3-footer div{
    text-align:center !important;
  }

  /* Comfortable readable body copy */
  body.pa3-site .pa3-main p,
  body.pa3-site .pa3-main li,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer li{
    font-size:18px !important;
    line-height:1.62 !important;
    max-width:32em !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Larger intro/lead copy */
  body.pa3-site .pa3-lead{
    font-size:22px !important;
    line-height:1.48 !important;
    max-width:28em !important;
  }

  /* Headline hierarchy tuned for real phones */
  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1,
  body.pa3-site h1{
    font-size:clamp(48px,15vw,68px) !important;
    line-height:.92 !important;
    letter-spacing:-.04em !important;
    text-align:center !important;
    text-wrap:balance;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site h2{
    font-size:clamp(36px,10vw,48px) !important;
    line-height:1.02 !important;
    letter-spacing:-.025em !important;
    text-align:center !important;
    text-wrap:balance;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site h3{
    font-size:clamp(26px,7.5vw,34px) !important;
    line-height:1.12 !important;
    text-align:center !important;
  }

  body.pa3-site h4,
  body.pa3-site h5,
  body.pa3-site h6{
    font-size:21px !important;
    line-height:1.3 !important;
    text-align:center !important;
  }

  /* Kicker / labels / metadata */
  body.pa3-site .pa3-kicker{
    font-size:14px !important;
    line-height:1.4 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
  }

  body.pa3-site small,
  body.pa3-site .pa3-meta,
  body.pa3-site .pa3-problem small,
  body.pa3-site .pa3-project-card small,
  body.pa3-site .pa3-article-grid small{
    font-size:14px !important;
    line-height:1.4 !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-problem b,
  body.pa3-site .pa3-arrow{
    font-size:15px !important;
    line-height:1.4 !important;
    text-align:center !important;
  }

  /* Cards */
  body.pa3-site .pa3-problem,
  body.pa3-site .pa3-project-card,
  body.pa3-site .pa3-card,
  body.pa3-site .pa3-price-grid > *,
  body.pa3-site .pa3-article-grid > *,
  body.pa3-site .pa3-question{
    text-align:center !important;
  }

  body.pa3-site .pa3-problem > *,
  body.pa3-site .pa3-project-card > *,
  body.pa3-site .pa3-card > *,
  body.pa3-site .pa3-price-grid > * > *,
  body.pa3-site .pa3-article-grid > * > *{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Lists centered visually */
  body.pa3-site ul,
  body.pa3-site ol{
    padding-left:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    list-style-position:inside !important;
    text-align:center !important;
  }

  /* Buttons larger and centered */
  body.pa3-site .pa3-actions,
  body.pa3-site .pa3-actions > *,
  body.pa3-site .pa3-btn{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site .pa3-btn{
    font-size:15px !important;
    line-height:1.25 !important;
    min-height:52px !important;
    padding:17px 20px !important;
    justify-content:center !important;
    text-align:center !important;
  }

  /* Chips */
  body.pa3-site .pa3-chips,
  body.pa3-site .pa3-chipgrid{
    justify-items:center !important;
    align-items:center !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-chips span,
  body.pa3-site .pa3-chipgrid span{
    font-size:15px !important;
    line-height:1.4 !important;
    text-align:center !important;
  }

  /* Pricing */
  body.pa3-site .pa3-price-grid strong{
    font-size:46px !important;
    text-align:center !important;
  }

  /* Digital Check */
  body.pa3-site .pa3-question legend{
    font-size:24px !important;
    line-height:1.3 !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site .pa3-scale{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site .pa3-scale-labels{
    font-size:14px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site .pa3-result-row{
    font-size:16px !important;
    text-align:center !important;
  }

  /* Forms: labels centered, typed content left for usability */
  body.pa3-site .pa3-form label,
  body.pa3-site .pa3-check label{
    font-size:17px !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-form input,
  body.pa3-site .pa3-form select,
  body.pa3-site .pa3-form textarea{
    font-size:18px !important;
    line-height:1.45 !important;
    text-align:left !important;
  }

  body.pa3-site .pa3-consent{
    font-size:15px !important;
  }

  /* Image blocks centered */
  body.pa3-site img,
  body.pa3-site picture,
  body.pa3-site video,
  body.pa3-site iframe,
  body.pa3-site svg{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Header also centered on smartphones */
  body.pa3-site .pa3-header-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    text-align:center !important;
    padding-top:14px !important;
    padding-bottom:14px !important;
  }

  body.pa3-site .pa3-brand{
    align-items:center !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-brand strong{
    font-size:26px !important;
  }

  body.pa3-site .pa3-brand small{
    font-size:11px !important;
  }

  body.pa3-site .pa3-menu-toggle{
    font-size:14px !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-nav,
  body.pa3-site .pa3-menu,
  body.pa3-site .pa3-menu li,
  body.pa3-site .pa3-menu a{
    width:100% !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-menu>li>a,
  body.pa3-site .pa3-menu .sub-menu a{
    font-size:19px !important;
    padding:12px 8px !important;
    justify-content:center !important;
  }

  /* Footer larger and centered */
  body.pa3-site .pa3-footer,
  body.pa3-site .pa3-footer-grid,
  body.pa3-site .pa3-footer-grid > *{
    text-align:center !important;
  }

  body.pa3-site .pa3-footer strong{
    font-size:24px !important;
  }

  body.pa3-site .pa3-footer,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer a{
    font-size:17px !important;
    line-height:1.6 !important;
  }
}

@media (max-width:390px){
  body.pa3-site{
    font-size:18px !important;
  }

  body.pa3-site .pa3-main p,
  body.pa3-site .pa3-main li,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer li{
    font-size:17px !important;
  }

  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1,
  body.pa3-site h1{
    font-size:clamp(46px,14.5vw,60px) !important;
  }

  body.pa3-site h2{
    font-size:clamp(34px,9.5vw,42px) !important;
  }
}


/* PixelArzt 4.0 – true fluid smartphone typography
   Font sizes now adapt continuously to viewport width instead of fixed phone sizes. */

@media (max-width:700px){

  /* Base scale reacts continuously between narrow and wide phones */
  body.pa3-site{
    font-size:clamp(18px, 4.8vw, 21px) !important;
    line-height:1.62 !important;
    text-align:center !important;
  }

  /* Body copy */
  body.pa3-site .pa3-main p,
  body.pa3-site .pa3-main li,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer li,
  body.pa3-site .pa3-card p,
  body.pa3-site .pa3-problem p,
  body.pa3-site .pa3-project-card p,
  body.pa3-site .pa3-price-grid p,
  body.pa3-site .pa3-article-grid p,
  body.pa3-site .pa3-person p,
  body.pa3-site .pa3-two p,
  body.pa3-site .pa3-duality p{
    font-size:clamp(18px, 4.6vw, 21px) !important;
    line-height:1.62 !important;
  }

  /* Lead copy */
  body.pa3-site .pa3-lead{
    font-size:clamp(21px, 5.4vw, 25px) !important;
    line-height:1.5 !important;
  }

  /* Hero + headings */
  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1,
  body.pa3-site h1{
    font-size:clamp(46px, 14.8vw, 74px) !important;
    line-height:.9 !important;
    letter-spacing:-.045em !important;
    text-wrap:balance;
  }

  body.pa3-site h2{
    font-size:clamp(34px, 10vw, 52px) !important;
    line-height:.98 !important;
    text-wrap:balance;
  }

  body.pa3-site h3{
    font-size:clamp(26px, 7.4vw, 36px) !important;
    line-height:1.08 !important;
    text-wrap:balance;
  }

  body.pa3-site h4,
  body.pa3-site h5,
  body.pa3-site h6{
    font-size:clamp(21px, 5.6vw, 27px) !important;
    line-height:1.25 !important;
  }

  /* Small labels still remain readable */
  body.pa3-site .pa3-kicker,
  body.pa3-site small,
  body.pa3-site .pa3-meta,
  body.pa3-site .pa3-problem small,
  body.pa3-site .pa3-project-card small,
  body.pa3-site .pa3-article-grid small{
    font-size:clamp(14px, 3.7vw, 17px) !important;
    line-height:1.4 !important;
  }

  body.pa3-site .pa3-problem b,
  body.pa3-site .pa3-arrow,
  body.pa3-site .pa3-chips span,
  body.pa3-site .pa3-chipgrid span{
    font-size:clamp(15px, 4vw, 18px) !important;
    line-height:1.4 !important;
  }

  /* Buttons scale with the viewport as well */
  body.pa3-site .pa3-btn{
    font-size:clamp(15px, 4vw, 18px) !important;
    line-height:1.25 !important;
    min-height:clamp(50px, 13vw, 58px) !important;
    padding:
      clamp(15px, 4vw, 19px)
      clamp(18px, 5vw, 24px) !important;
  }

  /* Pricing */
  body.pa3-site .pa3-price-grid strong{
    font-size:clamp(42px, 12vw, 58px) !important;
  }

  /* Forms and Digital Check */
  body.pa3-site .pa3-form label,
  body.pa3-site .pa3-check label{
    font-size:clamp(16px, 4.3vw, 19px) !important;
  }

  body.pa3-site .pa3-form input,
  body.pa3-site .pa3-form select,
  body.pa3-site .pa3-form textarea{
    font-size:clamp(17px, 4.5vw, 20px) !important;
    line-height:1.45 !important;
  }

  body.pa3-site .pa3-consent{
    font-size:clamp(14px, 3.8vw, 17px) !important;
  }

  body.pa3-site .pa3-question legend{
    font-size:clamp(22px, 6vw, 28px) !important;
    line-height:1.3 !important;
  }

  body.pa3-site .pa3-scale-labels,
  body.pa3-site .pa3-result-row{
    font-size:clamp(14px, 3.8vw, 17px) !important;
  }

  /* Footer */
  body.pa3-site .pa3-footer strong{
    font-size:clamp(22px, 6vw, 28px) !important;
  }

  body.pa3-site .pa3-footer,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer a{
    font-size:clamp(17px, 4.5vw, 20px) !important;
    line-height:1.58 !important;
  }

  /* Brand + nav */
  body.pa3-site .pa3-brand strong{
    font-size:clamp(24px, 6.5vw, 30px) !important;
  }

  body.pa3-site .pa3-brand small{
    font-size:clamp(10px, 2.8vw, 13px) !important;
  }

  body.pa3-site .pa3-menu-toggle{
    font-size:clamp(14px, 3.8vw, 17px) !important;
  }

  body.pa3-site .pa3-menu>li>a,
  body.pa3-site .pa3-menu .sub-menu a{
    font-size:clamp(18px, 4.9vw, 22px) !important;
    line-height:1.28 !important;
  }
}

/* Tiny phones: preserve readability without blowing up layout */
@media (max-width:360px){
  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1,
  body.pa3-site h1{
    font-size:clamp(42px, 14vw, 54px) !important;
  }

  body.pa3-site h2{
    font-size:clamp(32px, 9.6vw, 40px) !important;
  }

  body.pa3-site .pa3-main p,
  body.pa3-site .pa3-main li,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer li{
    font-size:clamp(17px, 4.8vw, 19px) !important;
  }
}


/* =========================================================
   PixelArzt 4.1 FINAL MOBILE LAYER
   Root-cause fix after full CSS review:
   - older mobile rules left several 11–15px labels in place
   - previous clamp() formulas sat at their minimum on 360–390px phones
   - some component selectors still overrode centered alignment
   This layer deliberately wins the cascade on phones.
   ========================================================= */

@media screen and (max-width: 720px){

  :root{
    --pa-m-body: clamp(20px, 5.4vw, 24px);
    --pa-m-lead: clamp(23px, 6.2vw, 28px);
    --pa-m-small: clamp(16px, 4.3vw, 18px);
    --pa-m-button: clamp(16px, 4.5vw, 19px);
    --pa-m-h3: clamp(28px, 8vw, 36px);
    --pa-m-h2: clamp(38px, 11vw, 50px);
    --pa-m-h1: clamp(52px, 15.5vw, 72px);
  }

  html{
    -webkit-text-size-adjust:100% !important;
    text-size-adjust:100% !important;
  }

  body.pa3-site{
    font-size:var(--pa-m-body) !important;
    line-height:1.58 !important;
    text-align:center !important;
  }

  /* --- Full mobile centering, including components that previously resisted it --- */
  body.pa3-site .pa3-main,
  body.pa3-site .pa3-main section,
  body.pa3-site .pa3-main article,
  body.pa3-site .pa3-main div:not(.pa3-bar):not(.pa3-progress),
  body.pa3-site .pa3-main header,
  body.pa3-site .pa3-footer,
  body.pa3-site .pa3-footer div,
  body.pa3-site .pa3-problem,
  body.pa3-site .pa3-card,
  body.pa3-site .pa3-project-card,
  body.pa3-site .pa3-project-card > div,
  body.pa3-site .pa3-price-grid > *,
  body.pa3-site .pa3-article-grid > *,
  body.pa3-site .pa3-person,
  body.pa3-site .pa3-duality,
  body.pa3-site .pa3-two,
  body.pa3-site .pa3-question,
  body.pa3-site .pa3-result-row{
    text-align:center !important;
  }

  body.pa3-site .pa3-wrap,
  body.pa3-site .pa3-main p,
  body.pa3-site .pa3-main ul,
  body.pa3-site .pa3-main ol,
  body.pa3-site .pa3-main h1,
  body.pa3-site .pa3-main h2,
  body.pa3-site .pa3-main h3,
  body.pa3-site .pa3-main h4,
  body.pa3-site .pa3-main h5,
  body.pa3-site .pa3-main h6,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer ul,
  body.pa3-site .pa3-footer ol{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* --- Readable body text: minimum 20px on normal smartphones --- */
  body.pa3-site .pa3-main p,
  body.pa3-site .pa3-main li,
  body.pa3-site .pa3-footer p,
  body.pa3-site .pa3-footer li,
  body.pa3-site .pa3-card p,
  body.pa3-site .pa3-problem p,
  body.pa3-site .pa3-project-card p,
  body.pa3-site .pa3-price-grid p,
  body.pa3-site .pa3-article-grid p,
  body.pa3-site .pa3-person p,
  body.pa3-site .pa3-duality p,
  body.pa3-site .pa3-two p{
    font-size:var(--pa-m-body) !important;
    line-height:1.58 !important;
    max-width:30em !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    hyphens:auto;
  }

  body.pa3-site .pa3-lead{
    font-size:var(--pa-m-lead) !important;
    line-height:1.45 !important;
    max-width:27em !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* --- Headlines --- */
  body.pa3-site .pa3-display,
  body.pa3-site .pa3-hero h1,
  body.pa3-site h1{
    font-size:var(--pa-m-h1) !important;
    line-height:.91 !important;
    letter-spacing:-.045em !important;
    text-align:center !important;
    text-wrap:balance;
    max-width:100% !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  body.pa3-site h2{
    font-size:var(--pa-m-h2) !important;
    line-height:1 !important;
    letter-spacing:-.03em !important;
    text-align:center !important;
    text-wrap:balance;
    max-width:100% !important;
  }

  body.pa3-site h3{
    font-size:var(--pa-m-h3) !important;
    line-height:1.1 !important;
    text-align:center !important;
    text-wrap:balance;
  }

  body.pa3-site h4,
  body.pa3-site h5,
  body.pa3-site h6{
    font-size:clamp(23px, 6.3vw, 29px) !important;
    line-height:1.25 !important;
    text-align:center !important;
  }

  /* --- All "small" text is now genuinely readable --- */
  body.pa3-site small,
  body.pa3-site .pa3-kicker,
  body.pa3-site .pa3-meta,
  body.pa3-site .pa3-arrow,
  body.pa3-site .pa3-problem small,
  body.pa3-site .pa3-project-card small,
  body.pa3-site .pa3-article-grid small,
  body.pa3-site .pa3-price-grid small,
  body.pa3-site .pa3-problem b,
  body.pa3-site .pa3-scale-labels,
  body.pa3-site .pa3-consent{
    font-size:var(--pa-m-small) !important;
    line-height:1.45 !important;
    text-align:center !important;
    letter-spacing:.03em !important;
  }

  body.pa3-site .pa3-kicker{
    letter-spacing:.08em !important;
  }

  /* --- Lists --- */
  body.pa3-site ul,
  body.pa3-site ol{
    padding-left:0 !important;
    list-style-position:inside !important;
    text-align:center !important;
    max-width:30em !important;
  }

  /* --- Buttons --- */
  body.pa3-site .pa3-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
    width:100% !important;
  }

  body.pa3-site .pa3-btn{
    font-size:var(--pa-m-button) !important;
    line-height:1.25 !important;
    min-height:54px !important;
    padding:17px 22px !important;
    text-align:center !important;
    justify-content:center !important;
    white-space:normal !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* --- Chips / service rows --- */
  body.pa3-site .pa3-chips,
  body.pa3-site .pa3-chipgrid{
    justify-items:center !important;
    align-items:center !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-chips span,
  body.pa3-site .pa3-chipgrid span{
    font-size:var(--pa-m-small) !important;
    line-height:1.4 !important;
    text-align:center !important;
    width:100% !important;
  }

  /* --- Pricing --- */
  body.pa3-site .pa3-price-grid strong{
    font-size:clamp(48px, 13vw, 62px) !important;
    line-height:1 !important;
    text-align:center !important;
  }

  /* --- Digital Check --- */
  body.pa3-site .pa3-question legend{
    font-size:clamp(25px, 7vw, 31px) !important;
    line-height:1.25 !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site .pa3-result-row{
    font-size:var(--pa-m-small) !important;
    line-height:1.45 !important;
    grid-template-columns:1fr !important;
    text-align:center !important;
  }

  /* --- Forms --- */
  body.pa3-site .pa3-form label,
  body.pa3-site .pa3-check label{
    font-size:clamp(18px, 4.9vw, 21px) !important;
    line-height:1.35 !important;
    text-align:center !important;
    display:block !important;
  }

  body.pa3-site .pa3-form input,
  body.pa3-site .pa3-form select,
  body.pa3-site .pa3-form textarea{
    font-size:clamp(18px, 4.9vw, 21px) !important;
    line-height:1.45 !important;
    text-align:left !important;
  }

  /* --- Header & navigation --- */
  body.pa3-site .pa3-header-inner{
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:10px !important;
  }

  body.pa3-site .pa3-brand{
    align-items:center !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-brand strong{
    font-size:clamp(27px, 7.4vw, 32px) !important;
  }

  body.pa3-site .pa3-brand small{
    font-size:clamp(12px, 3.2vw, 14px) !important;
  }

  body.pa3-site .pa3-menu-toggle{
    font-size:clamp(15px, 4vw, 18px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.pa3-site .pa3-nav,
  body.pa3-site .pa3-menu,
  body.pa3-site .pa3-menu li,
  body.pa3-site .pa3-menu a{
    width:100% !important;
    text-align:center !important;
  }

  body.pa3-site .pa3-menu>li>a,
  body.pa3-site .pa3-menu .sub-menu a{
    font-size:clamp(20px, 5.5vw, 24px) !important;
    line-height:1.25 !important;
    padding:14px 8px !important;
    justify-content:center !important;
  }

  /* --- Media centered --- */
  body.pa3-site img,
  body.pa3-site picture,
  body.pa3-site video,
  body.pa3-site iframe,
  body.pa3-site svg{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* --- Footer --- */
  body.pa3-site .pa3-footer,
  body.pa3-site .pa3-footer-grid,
  body.pa3-site .pa3-footer-grid > *{
    text-align:center !important;
  }

  body.pa3-site .pa3-footer strong{
    font-size:clamp(24px, 6.5vw, 30px) !important;
  }

  body.pa3-site .pa3-footer a{
    font-size:var(--pa-m-body) !important;
    line-height:1.55 !important;
  }
}

/* Narrowest phones: preserve room but never return to tiny text */
@media screen and (max-width: 370px){
  :root{
    --pa-m-body: 19px;
    --pa-m-lead: 22px;
    --pa-m-small: 15px;
    --pa-m-button: 16px;
    --pa-m-h3: 27px;
    --pa-m-h2: 35px;
    --pa-m-h1: 47px;
  }
}
