/*
Theme Name: ProVia Relaunch
Author: ToMa·MAC
Description: Schlankes Block-Theme mit Originalinhalten und lokalem Kontaktformular.
Version: 1.0.6
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: provia-relaunch
*/
:root{--pv-red:#d71923;--pv-ink:#242c2b;--pv-muted:#626965;--pv-paper:#f3f3ed;--pv-line:#d6d9d0;--pv-soft:#e7eae3;--pv-max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--pv-paper);color:var(--pv-ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--pv-red)}img{max-width:100%;height:auto;display:block}figure{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.045em;line-height:1.08;text-wrap:balance}h1{font-size:clamp(2.4rem,4.7vw,4.5rem)}h2{font-size:clamp(2rem,3.7vw,3.45rem)}h3{font-size:clamp(1.35rem,2vw,1.8rem)}p{margin:0 0 1.1em}ul,ol{padding-left:1.3em}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--pv-red);outline-offset:5px}::selection{background:#f1bdbe;color:#202820}.wp-site-blocks{padding:0}.wp-block-group{margin-block:0}.wp-block-heading{margin-top:0}main{margin-block-start:0!important}.pv-section{max-width:var(--pv-max);margin:0 auto;padding:86px 38px}.pv-section:after{content:'';display:block;clear:both}.pv-kicker{color:var(--pv-muted);font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:22px}.pv-lead{font-size:clamp(1.05rem,1.4vw,1.22rem);line-height:1.65;max-width:760px}.pv-header{border-bottom:1px solid var(--pv-line);background:var(--pv-paper)}.pv-header-inner{max-width:var(--pv-max);margin:auto;padding:22px 38px;display:flex;align-items:center;justify-content:space-between;gap:30px}.pv-brand img{width:210px;height:auto}.pv-topline{border-bottom:1px solid var(--pv-line);font-size:12px;letter-spacing:.015em}.pv-topline-inner{max-width:var(--pv-max);padding:9px 38px;margin:auto;display:flex;justify-content:space-between;gap:20px}.pv-topline a{text-decoration:none}.pv-menu{display:flex;align-items:center;gap:27px;font-size:14px}.pv-menu a{text-decoration:none;white-space:nowrap}.pv-menu a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--pv-red);text-decoration-thickness:2px}.pv-menu .pv-contact-link{background:var(--pv-red);padding:13px 23px;color:#fff}.pv-menu-toggle{display:none;border:1px solid var(--pv-line);background:transparent;padding:9px 15px;color:var(--pv-ink)}.pv-skip{position:fixed;left:16px;top:-100px;background:#fff;padding:14px;z-index:99999}.pv-skip:focus{top:15px}.pv-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:45px;align-items:center;padding-top:58px;padding-bottom:70px;min-height:650px}.pv-hero h1{margin-bottom:25px}.pv-hero-copy .pv-lead{max-width:590px;color:#4d5751;font-size:17px}.pv-hero-visual{position:relative;align-self:stretch;padding:0 0 35px}.pv-hero-image{height:100%;min-height:470px}.pv-hero-image img{width:100%;height:100%;min-height:470px;object-fit:cover}.pv-image-index{position:absolute;bottom:0;right:0;margin:0;font-size:12px;letter-spacing:.18em;color:var(--pv-muted)}.pv-hero-visual:after{content:'';height:5px;width:70px;background:var(--pv-red);position:absolute;bottom:9px;left:0}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.wp-block-button__link{background:var(--pv-red);color:#fff;border:1px solid var(--pv-red);border-radius:0;padding:14px 22px;line-height:1.4;font-size:15px;font-weight:600;text-decoration:none;display:inline-block}.wp-block-button__link:hover{background:#a51922;color:#fff;border-color:#a51922}.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--pv-ink);border-color:#a5ada2}.wp-block-button.is-style-outline .wp-block-button__link:hover{border-color:var(--pv-red);color:var(--pv-red)}.pv-tone{background:var(--pv-soft);max-width:none;padding-left:max(38px,calc((100vw - 1164px)/2));padding-right:max(38px,calc((100vw - 1164px)/2))}.pv-section-heading{max-width:680px;margin-bottom:42px}.pv-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px}.pv-service{position:relative;display:grid;grid-template-columns:46px 1fr;column-gap:12px;border-top:1px solid #bdc5b8;padding:25px 0 28px}.pv-service .pv-number{grid-row:1/3;color:var(--pv-red);font-size:12px;letter-spacing:.1em;padding-top:6px;margin:0}.pv-service h3{margin:0 0 10px;letter-spacing:-.025em}.pv-service p:not(.pv-number){grid-column:2;margin-bottom:0;color:#535e56;font-size:15px}.pv-company{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.pv-company-visual img{width:100%;height:360px;object-fit:cover}.pv-company-copy .pv-lead{margin-top:25px}.pv-retrofit{display:grid;grid-template-columns:1.15fr 1fr;gap:65px;align-items:center;border-top:1px solid var(--pv-line)}.pv-retro-copy>p{font-size:16px}.pv-retro-image img{width:100%;height:400px;object-fit:cover}.pv-career-band{background:var(--pv-red);color:white;max-width:none;padding-left:max(38px,calc((100vw - 1164px)/2));padding-right:max(38px,calc((100vw - 1164px)/2));position:relative}.pv-career-band h2{margin-bottom:16px}.pv-career-band .wp-block-button__link{border-color:#fff;background:#fff;color:var(--pv-red)}.pv-career-band:before{content:'↗';position:absolute;right:10%;top:60px;font-size:100px;line-height:1;opacity:.35}.pv-certificate-band{text-align:center}.pv-certificate-band .wp-block-buttons{justify-content:center}.pv-page-intro{padding-top:65px;padding-bottom:38px;border-bottom:1px solid var(--pv-line)}.pv-page-intro h1{margin-bottom:28px;max-width:950px}.pv-prose{max-width:850px}.pv-prose h2,.pv-prose h3{margin-top:45px}.pv-prose h3{font-size:1.5rem}.pv-prose p,.pv-prose li{overflow-wrap:anywhere}.pv-wide-image img{width:100%;height:330px;object-fit:cover}.pv-wide-image{margin-bottom:55px}.pv-company-story>figure{float:right;width:40%;margin:0 0 30px 45px}.pv-company-story h3{margin-top:0}.pv-people{display:grid;grid-template-columns:1fr 1fr;gap:50px}.pv-person{display:grid;grid-template-columns:145px 1fr;gap:25px}.pv-person figure img{width:145px;height:180px;object-fit:cover;object-position:top}.pv-person h3{font-size:24px;margin:0 0 15px}.pv-person-text>p{font-size:15px}.pv-person-text>p:first-of-type{font-size:13px;color:var(--pv-red);font-weight:bold}.pv-timeline{max-width:850px;padding-left:45px;border-left:1px solid var(--pv-line)}.pv-timeline h3{position:relative;color:var(--pv-red);margin-top:42px}.pv-timeline h3:before{content:'';width:11px;height:11px;background:var(--pv-red);position:absolute;left:-51px;top:10px;border-radius:50%}.pv-brochure-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:35px}.pv-placeholder{border:1px dashed #989e92;background:#e6e9df;min-height:240px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;text-align:center}.pv-placeholder p:last-child{font-size:12px;overflow-wrap:anywhere}.pv-placeholder-label{font-size:11px;letter-spacing:.13em;font-weight:bold;color:#89481a}.pv-dummy{font-size:27px;color:#727a69}.pv-placeholder-copy{padding:20px;border-left:3px solid #a97e22;background:#efeadf;margin:25px 0}.pv-placeholder-copy p:last-child{margin:0}.pv-contact-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}.pv-contact-info h2{font-size:32px}.pv-contact-info a{font-size:20px;text-decoration:none}.pv-form{margin:0}.pv-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.pv-field{margin-bottom:22px}.pv-field label{display:block;margin-bottom:8px;font-size:14px;font-weight:600}.pv-field input,.pv-field select,.pv-field textarea{width:100%;background:#fff;border:1px solid #b8c0b2;border-radius:0;padding:14px;color:#242c2b;min-width:0}.pv-field textarea{resize:vertical;min-height:170px}.pv-field select{appearance:auto}.pv-form button{border:0;background:var(--pv-red);color:#fff;padding:15px 27px;cursor:pointer}.pv-form button:hover{background:#a51922}.pv-form-hint{font-size:13px;line-height:1.65;color:#5d665d}.pv-hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.pv-feedback{border-left:4px solid var(--pv-red);padding:20px;background:#fff1ef;margin-bottom:25px}.pv-feedback.pv-success{border-color:#336647;background:#e7f0e7}.pv-feedback:focus{outline:2px solid var(--pv-red)}.pv-feedback p:last-child{margin-bottom:0}.pv-footer{background:#e1e5dd;border-top:1px solid #cbd2c4;margin-block-start:0!important}.pv-footer-inner{max-width:var(--pv-max);padding:60px 38px 25px;margin:auto}.pv-footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px}.pv-footer-grid img{width:200px;mix-blend-mode:multiply}.pv-footer-grid h2{font-size:15px;letter-spacing:0;font-weight:bold}.pv-footer-grid p,.pv-footer-grid a{font-size:14px;line-height:1.9}.pv-footer-grid nav{display:grid;gap:7px}.pv-footer-grid a{text-decoration:none}.pv-footer-bottom{border-top:1px solid #bcc5b4;margin-top:42px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#535e51}.pv-footer-bottom a{margin-left:20px}.pv-stage-note{font-size:11px;letter-spacing:.08em;border-bottom:1px solid var(--pv-line);padding:6px 20px;text-align:center;color:#68715f;background:#e8ecdf}.pv-empty{min-height:50vh}.pv-prose a{overflow-wrap:anywhere}
@media(min-width:1500px){.pv-hero{min-height:690px}}
@media(max-width:1000px){.pv-header-inner{gap:20px}.pv-menu{gap:16px;font-size:13px}.pv-brand img{width:180px}.pv-hero{gap:30px}.pv-people{gap:30px}.pv-person{grid-template-columns:100px 1fr;gap:18px}.pv-person figure img{width:100px;height:135px}.pv-contact-layout{gap:35px}.pv-company,.pv-retrofit{gap:35px}}
@media(max-width:760px){html{scroll-padding-top:30px}.pv-topline-inner{padding:8px 22px;flex-wrap:wrap;gap:3px 20px}.pv-topline-inner span{display:none}.pv-header-inner{padding:18px 22px;flex-wrap:wrap}.pv-menu-toggle{display:block}.pv-menu{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}.pv-menu.is-open{display:flex}.pv-menu a{padding:13px 0;border-top:1px solid var(--pv-line)}.pv-menu .pv-contact-link{padding:13px 15px;margin-top:6px}.pv-section{padding:50px 22px}.pv-hero{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding-top:35px;min-height:0}.pv-hero h1{font-size:clamp(2.35rem,8.8vw,3.5rem)}.pv-hero-copy .pv-lead{font-size:16px}.pv-hero-visual{align-self:stretch}.pv-hero-image,.pv-hero-image img{height:290px;min-height:0}.pv-services{grid-template-columns:1fr}.pv-service{padding:23px 0}.pv-company,.pv-retrofit{grid-template-columns:1fr;gap:30px}.pv-company-visual img,.pv-retro-image img{height:280px}.pv-retro-image{order:-1}.pv-career-band:before{font-size:70px;top:38px;right:25px}.pv-people{grid-template-columns:1fr;gap:40px}.pv-person{grid-template-columns:110px 1fr}.pv-person figure img{width:110px;height:150px}.pv-company-story>figure{float:none;width:100%;margin:0 0 30px}.pv-company-story>figure img{max-height:320px;width:100%;object-fit:cover}.pv-page-intro{padding-bottom:25px}.pv-wide-image img{height:230px}.pv-prose h2,.pv-prose h3{margin-top:32px}.pv-brochure-grid{grid-template-columns:1fr 1fr;gap:12px}.pv-placeholder{min-height:220px;padding:15px}.pv-contact-layout{grid-template-columns:1fr;gap:30px}.pv-form-grid{grid-template-columns:1fr;gap:0}.pv-footer-inner{padding:45px 22px 20px}.pv-footer-grid{grid-template-columns:1fr 1fr;gap:35px}.pv-footer-grid>div:first-child{grid-column:1/-1}.pv-footer-bottom{flex-direction:column;gap:10px}.pv-footer-bottom a{margin:0 20px 0 0}}
@media(max-width:380px){.pv-person{grid-template-columns:1fr}.pv-person figure img{width:135px;height:170px}.pv-brochure-grid{grid-template-columns:1fr}.pv-footer-grid{grid-template-columns:1fr}.pv-footer-grid>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.pv-brochure-original{border:1px solid var(--pv-line);padding:10px;background:#fff}.pv-brochure-original img{width:100%;height:auto}

/* Long original German headings must reflow without editing their wording. */
.wp-block-group{min-width:0}h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere;hyphens:auto}.pv-hero-copy,.pv-hero-visual{min-width:0}@media(max-width:380px){.pv-brand img{width:165px}.pv-header-inner{gap:15px}}

@media(min-width:761px){.pv-hero h1{font-size:clamp(2.35rem,4vw,3.5rem)}}

/* Targeted contrast correction: content and geometry remain unchanged. */
.pv-person-text>p:first-of-type{color:#b4141d}
.pv-field input,.pv-field select,.pv-field textarea{border-color:#7b8476}
