/* IPRO shares the homepage's typography, fine rules and section rhythm. */
body:has(.ipro-modern) .site-decor,body:has(.ipro-modern) .site-shell__stage,body:has(.ipro-modern) .site-shell__skew{display:none!important}
.ipro-modern{background:#111214;color:#f4f4f0;position:relative;z-index:3;padding-top:190px;padding-bottom:102px;--ipro-gap:102px;font-family:var(--font-sans)}
.ipro-container{width:min(var(--site-body-max,1600px),88%);margin-inline:auto}
.ipro-modern a{color:inherit;text-decoration:none}
.ipro-modern a:focus-visible,.ipro-modern summary:focus-visible{outline:2px solid #ffe200;outline-offset:5px}
.ipro-modern h1,.ipro-modern h2,.ipro-modern h3,.ipro-modern .ipro-lead,.ipro-modern .ipro-button,.ipro-modern .ipro-link{font-family:var(--font-display)}
.ipro-modern h1{font-size:clamp(44px,4.5vw,76px);font-weight:700;line-height:1.02;margin:0 0 28px;letter-spacing:normal}
.ipro-modern h1 span{color:#ffe200}
.ipro-modern h2{font-size:clamp(32px,2.8vw,48px);line-height:1.15;font-weight:700;margin:0}
.ipro-modern h3{font-size:26px;line-height:1.3;font-weight:700;margin:0 0 18px}
.ipro-modern p{line-height:1.8}
.ipro-crumbs{display:flex;gap:12px;font-size:13px;color:#999da3;margin-bottom:45px}
.ipro-intro__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}
.ipro-kicker{font-family:var(--font-display);color:#b6b9bd;font-size:20px;margin:0 0 20px}
.ipro-lead{font-size:24px!important;font-weight:300;color:#c3c5c9;margin:0}
.ipro-actions{display:flex;flex-wrap:wrap;gap:25px;align-items:center;margin-top:30px}
.ipro-button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;padding:16px 22px;background:#ffe200;color:#111!important;font-size:21px;font-weight:700}
.ipro-button:hover{background:#fff07a}
.ipro-link{display:inline-flex;gap:24px;font-size:20px;border-bottom:1px solid #4a4c50;padding:12px 0}
.ipro-link:hover{border-color:#ffe200}.ipro-link span{color:#ffe200}
.ipro-intro__image{position:relative;background:#18191b;border-bottom:1px solid #44464a}
.ipro-intro__image>img{width:100%;aspect-ratio:1.15;object-fit:cover;object-position:43% center}
.ipro-intro__image>span{display:block;padding:18px 22px;color:#b7b9bd;font-family:var(--font-display);font-size:16px;letter-spacing:.08em}
.ipro-intro__bottom{border-top:0;border-bottom:1px solid #44464a;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:45px}
.ipro-intro__bottom>p{max-width:750px;color:#b7b9bd;font-family:var(--font-display);font-size:22px;margin:0}
.ipro-workflow,.ipro-benefits,.ipro-films,.ipro-partner{margin-top:var(--ipro-gap);scroll-margin-top:35px}
.ipro-section-heading{margin-bottom:36px}.ipro-section-heading>p{color:#a5a7ab;margin:15px 0 0}
.ipro-workflow__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:start}
.ipro-system{position:sticky;top:40px;border:0;padding:0}
.ipro-system__nodes{display:flex;align-items:center;gap:15px}
.ipro-system__nodes>div{text-align:center;flex:1;font-family:var(--font-display);color:#898d93;transition:color .4s}
.ipro-system__nodes strong{font-size:34px;line-height:40px;display:block}.ipro-system__nodes span{display:block;font-size:17px;margin-top:8px}.ipro-system__nodes svg{width:64px;height:40px;margin:auto}
.ipro-system__nodes>i{height:1px;width:40px;background:#44464a;position:relative;overflow:hidden}
.ipro-system__nodes>i:after{content:'';position:absolute;inset:0;background:#ffe200;transform:scaleX(var(--ipro-progress,0));transform-origin:left;transition:transform .5s}
.ipro-system__nodes .is-active{color:#ffe200}
.ipro-system>img{width:100%;aspect-ratio:1.6;object-fit:cover;object-position:center;margin-top:30px}
.ipro-system__caption{font-family:var(--font-display);font-size:23px;min-height:0;color:#c3c5c9;margin:22px 0 0}
.ipro-workflow__steps{list-style:none;padding:0;margin:0}
.ipro-workflow__steps>li{position:relative;display:flex;gap:24px;padding:22px 0;border-bottom:1px solid #44464a;min-height:0;align-items:center}
.ipro-workflow__steps>li:first-child{padding-top:0;min-height:0}
.ipro-workflow__steps p{font-family:var(--font-display);font-size:26px;line-height:1.5;color:#999da3;margin:0;transition:color .4s}
.ipro-step-dot{width:9px;height:9px;flex:0 0 9px;border:1px solid #777;transform:rotate(45deg);transition:background .4s,border-color .4s}
.ipro-workflow__steps .is-active p{color:#f4f4f0}.ipro-workflow__steps .is-active .ipro-step-dot{background:#ffe200;border-color:#ffe200}
.ipro-benefits__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-bottom:38px}
.ipro-benefits__grid>div{padding:22px 0}.ipro-benefits__grid h3{font-size:28px;margin:20px 0}.ipro-check{font-size:24px;color:#ffe200}
.ipro-details details{border-bottom:1px solid #44464a}
.ipro-details summary{display:flex;justify-content:space-between;gap:25px;cursor:pointer;font-family:var(--font-display);font-size:26px;padding:24px 0;list-style:none}
.ipro-details summary::-webkit-details-marker{display:none}.ipro-details summary span{color:#ffe200}.ipro-details details[open] summary span{transform:rotate(45deg)}
.ipro-details ul{padding:0 0 24px 22px;margin:0;color:#b7b9bd}.ipro-details li{padding:8px 0;line-height:1.6}.ipro-details>details>p{color:#b7b9bd;max-width:900px;margin:0 0 28px}
.ipro-films__grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.ipro-films figure{margin:0}.ipro-films video{width:100%;aspect-ratio:16/9;object-fit:contain;background:#090a0c}.ipro-films figcaption{font-family:var(--font-display);font-size:24px;border-bottom:1px solid #44464a;padding:20px 0}
.ipro-partner{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:0;border-bottom:1px solid #44464a;padding-block:0 40px}
.ipro-partner p{color:#b7b9bd;margin:20px 0}.ipro-partner .ipro-notice{font-size:14px;border-left:2px solid #ffe200;padding-left:18px}
@media(max-width:1000px){.ipro-modern{padding-top:160px}.ipro-intro__grid{gap:30px}.ipro-workflow__grid{gap:35px}.ipro-benefits__grid{gap:22px}.ipro-partner{gap:35px}}
@media(max-width:700px){.ipro-modern{padding-top:120px;--ipro-gap:70px}.ipro-intro__grid,.ipro-workflow__grid,.ipro-partner,.ipro-benefits__grid,.ipro-films__grid{grid-template-columns:1fr}.ipro-intro__image>img{aspect-ratio:1.6}.ipro-intro__bottom{align-items:start;flex-direction:column}.ipro-system{position:relative;top:auto}.ipro-workflow__steps>li{min-height:0;padding:25px 0}.ipro-lead{font-size:22px!important}.ipro-workflow__steps p{font-size:23px}}
@media(prefers-reduced-motion:reduce){.ipro-modern *{transition:none!important;scroll-behavior:auto!important}}

/* Exact type roles from the local Unternehmen page. */
.ipro-modern{font-family:var(--font-sans);font-size:17px;font-weight:300;letter-spacing:normal}
.ipro-modern h1{font-family:var(--font-display);font-size:clamp(2rem,3.8vw,3rem);font-weight:300;line-height:1.2;letter-spacing:.02em;margin-bottom:24px}
.ipro-modern h2,.ipro-modern h3,.ipro-benefits__grid h3{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1.2;letter-spacing:.02em}
.ipro-modern p,.ipro-modern .ipro-lead,.ipro-modern .ipro-intro__bottom>p,.ipro-modern .ipro-system__caption,.ipro-modern .ipro-workflow__steps p{
    font-family:var(--font-sans);font-size:17px!important;font-weight:300;line-height:1.65;letter-spacing:normal;
}
.ipro-modern .ipro-kicker{font-family:var(--font-display);font-size:20px!important;font-weight:300;line-height:1.2;letter-spacing:.02em}
.ipro-modern .ipro-button,.ipro-modern .ipro-link{font-family:var(--font-display);font-size:20px;line-height:1.2;font-weight:600;letter-spacing:.02em}
.ipro-modern .ipro-button{padding:12px 18px}
.ipro-details summary,.ipro-films figcaption{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1.2;letter-spacing:.02em}
.ipro-details li{font-family:var(--font-sans);font-size:17px;font-weight:300;line-height:1.65;letter-spacing:normal}
.ipro-intro__image>span{font-family:var(--font-sans);font-size:14px;font-weight:300;letter-spacing:normal;line-height:1.65}
.ipro-system__nodes strong{font-family:var(--font-display);font-size:24px;font-weight:700;line-height:1.2}
.ipro-system__nodes span{font-family:var(--font-sans);font-size:17px;font-weight:300;letter-spacing:normal;line-height:1.65}

/* Compact introduction; films are presented only in the media section. */
.ipro-intro__grid{display:block}
.ipro-intro__copy{max-width:900px}
.ipro-intro__copy .ipro-lead{max-width:800px}
.ipro-intro__copy h1{margin-bottom:24px}
.ipro-intro__bottom{margin-top:38px}
.ipro-system{padding-block:0}
.ipro-system__caption{margin-top:35px}
.ipro-films__grid{align-items:start}
.ipro-films video{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}

/* One closing rule per section, without a duplicate link underline. */
.ipro-intro__bottom>.ipro-link{border-bottom:0}
@media(max-width:700px){.ipro-workflow__steps>li{padding:22px 0}.ipro-workflow__steps>li:first-child{padding-top:0}}


/* Give benefits a clear title / explanation hierarchy. */
.ipro-benefits>.ipro-section-heading h2{font-size:26px;font-weight:600;line-height:1.25}
.ipro-benefits>.ipro-section-heading{margin-bottom:28px}
.ipro-benefits__grid{gap:38px;margin-bottom:40px}
.ipro-benefits__grid>div{display:flex;align-items:flex-start;gap:14px;padding:0}
.ipro-benefits__grid .ipro-check{flex:0 0 18px;font-size:22px;line-height:26px}
.ipro-benefits__grid h3{font-size:20px;font-weight:600;line-height:1.3;margin:0 0 10px}
.ipro-modern .ipro-benefits__grid p{font-family:var(--font-sans);font-size:17px;font-weight:300;color:#aeb2b8;line-height:1.65;margin:0}
.ipro-details summary{font-size:20px;font-weight:300;color:#c6c9ce;letter-spacing:.02em;padding:20px 0}
.ipro-details summary:hover,.ipro-details details[open] summary{color:#fff}
@media(max-width:700px){.ipro-benefits__grid{gap:26px}}

/* Shared O.CT artwork with the same visibility as the homepage. */
.ipro-modern::before{
    content:'';
    position:absolute;
    inset:210px 0 0;
    background:url('/images/brand/bold-line-long.png') no-repeat right top;
    background-size:100% auto;
    filter:grayscale(1);
    opacity:.55296;
    pointer-events:none;
    z-index:0;
    -webkit-mask-image:linear-gradient(to bottom,transparent,#000 180px,#000 80%,transparent);
    mask-image:linear-gradient(to bottom,transparent,#000 180px,#000 80%,transparent);
}
.ipro-modern>.ipro-container{position:relative;z-index:1}
@media(max-width:700px){.ipro-modern::before{top:150px;background-size:180% auto;background-position:75% top;opacity:.38016}}


/* Shared breadcrumbs: the same appearance as the original wrapping page. */
.ipro-modern .crumbs{font-family:var(--font-sans);font-size:.9rem;font-weight:300;line-height:1.5;letter-spacing:normal}
.ipro-modern .crumbs a{color:#ffe200}
.ipro-modern .crumbs a:hover{color:#fff}
