/*
Theme Name: Promedia Solutions Sprint 3
Theme URI: https://www.promedia-solutions.de/
Author: Promedia Solutions
Description: Individuelles Block-Theme für Promedia Solutions – Sprint 3 mit Hero Manager 2.0.
Version: 3.2.3
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: promedia-sprint1
*/
:root{--pm-black:#111;--pm-white:#fff;--pm-gold:#c79a2d;--pm-light:#f5f5f5;--pm-muted:#707070;--pm-max:1280px;--pm-radius:9px;--pm-shadow:0 24px 70px rgba(0,0,0,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--pm-black);color:#fff}a{text-underline-offset:.18em}.pm-shell{width:min(calc(100% - 48px),var(--pm-max));margin:auto}.pm-site-header{position:fixed;inset:0 0 auto;z-index:1000;transition:.28s}.pm-site-header.is-scrolled{background:rgba(12,12,12,.84);backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(255,255,255,.09)}.pm-header-inner{width:min(calc(100% - 48px),var(--pm-max));min-height:104px;margin:auto;display:grid;grid-template-columns:minmax(250px,360px) 1fr auto;align-items:center;gap:34px}.pm-site-header.is-scrolled .pm-header-inner{min-height:78px}.pm-brand{display:block;width:min(100%,350px);height:72px}.pm-brand-mark{display:block;width:100%;height:100%;background:url('assets/images/promedia-solutions-logo.svg') left center/contain no-repeat}.pm-nav{display:flex;justify-content:center;gap:28px}.pm-nav a,.pm-header-cta{color:#fff;text-decoration:none;font-weight:750}.pm-nav a:hover{color:var(--pm-gold)}.pm-header-cta,.pm-button-primary{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 26px;border-radius:var(--pm-radius);background:var(--pm-gold);color:#111;text-decoration:none;font-weight:850;border:1px solid var(--pm-gold);transition:.2s}.pm-header-cta:hover,.pm-button-primary:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 14px 32px rgba(199,154,45,.28)}.pm-menu-toggle{display:none}.pm-hero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden;isolation:isolate;background:#090909}.pm-hero-media,.pm-hero-media:after{position:absolute;inset:0}.pm-hero-media{z-index:-2;background-position:center;background-size:cover;transform:scale(1.025);transition:transform 9s}.pm-hero.is-ready .pm-hero-media{transform:scale(1)}.pm-hero-media video{width:100%;height:100%;object-fit:cover;object-position:var(--pm-hero-position,center center)}.pm-hero-media:after{content:"";z-index:4;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,calc(var(--pm-hero-overlay,.58) + .25)),rgba(0,0,0,var(--pm-hero-overlay,.58)) 46%,rgba(0,0,0,calc(var(--pm-hero-overlay,.58) * .4))),linear-gradient(0deg,rgba(0,0,0,calc(var(--pm-hero-overlay,.58) + .08)),transparent 55%)}.pm-hero-inner{width:min(calc(100% - 48px),var(--pm-max));margin:auto;padding:168px 0 100px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:82px;align-items:end}.pm-hero-copy,.pm-proof-grid{opacity:0;transform:translateY(24px);transition:.8s}.pm-proof-grid{transition-delay:.18s}.pm-hero.is-ready .pm-hero-copy,.pm-hero.is-ready .pm-proof-grid{opacity:1;transform:none}.pm-kicker{margin:0 0 18px;color:var(--pm-gold);text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:900}.pm-hero h1{margin:0;max-width:900px;font-size:clamp(3.2rem,6vw,5.6rem);line-height:.97;letter-spacing:-.045em}.pm-hero-lead{max-width:770px;margin:30px 0 0;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.55;color:rgba(255,255,255,.88)}.pm-byline{color:rgba(255,255,255,.7)}.pm-actions{display:flex;gap:16px;margin-top:36px}.pm-button-secondary{display:inline-flex;align-items:center;min-height:54px;padding:0 26px;border:1px solid rgba(255,255,255,.76);border-radius:var(--pm-radius);color:#fff;text-decoration:none;font-weight:850}.pm-proof-grid{display:grid;gap:15px}.pm-proof-card{padding:21px 24px;background:rgba(17,17,17,.6);border:1px solid rgba(255,255,255,.14);border-radius:16px;backdrop-filter:blur(16px);box-shadow:var(--pm-shadow)}.pm-proof-card strong{display:block;font-size:clamp(1.65rem,2.6vw,2.35rem);line-height:1;margin-bottom:9px}.pm-proof-card span{color:rgba(255,255,255,.72)}.pm-scroll-cue{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);color:#bbb;text-decoration:none;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.pm-section{padding:120px 0}.pm-section-head{margin-bottom:52px}.pm-section-head h2,.pm-showreel h2,.pm-about h2,.pm-contact h2{margin:0;font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.04;letter-spacing:-.045em}.pm-head-row{display:flex;justify-content:space-between;align-items:end;gap:30px}.pm-head-row>a,.pm-about-copy>a{color:var(--pm-gold);text-decoration:none;font-weight:800}.pm-services{background:#f5f5f5;color:#111}.pm-service-list{display:grid}.pm-service-row{display:grid;grid-template-columns:80px minmax(280px,.7fr) minmax(360px,1.3fr);gap:38px;align-items:center;padding:34px 0;border-top:1px solid #d5d5d5}.pm-service-number{font-size:1rem;color:var(--pm-gold);font-weight:900}.pm-service-copy h3{font-size:clamp(1.8rem,3vw,3rem);margin:0 0 14px;letter-spacing:-.035em}.pm-service-copy p{line-height:1.65;color:#555}.pm-service-copy a{color:#111;font-weight:800;text-decoration:none}.pm-service-media{height:290px;overflow:hidden;background:#ddd}.pm-service-media img,.pm-reference-media img,.pm-about-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.pm-service-row:hover img,.pm-reference-card:hover img{transform:scale(1.035)}.pm-media-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#252525,#0c0c0c);color:#888;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.pm-references{background:#111}.pm-reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pm-reference-card{background:#181818;overflow:hidden}.pm-reference-card a{color:#fff;text-decoration:none}.pm-reference-media{height:320px}.pm-reference-info{padding:22px}.pm-reference-info span{color:var(--pm-gold);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.pm-reference-info h3{margin:8px 0 0;font-size:1.45rem}.pm-showreel{min-height:560px;display:grid;grid-template-columns:1.15fr .85fr;background:#080808}.pm-showreel-media{background:linear-gradient(135deg,#1e1e1e,#070707);background-size:cover;background-position:center}.pm-showreel-copy{padding:90px;display:flex;flex-direction:column;justify-content:center}.pm-showreel-copy p:not(.pm-kicker){color:#bbb;line-height:1.7}.pm-showreel-copy .pm-button-primary{align-self:flex-start;margin-top:22px}.pm-admin-note{color:#888;font-style:italic}.pm-about{background:#fff;color:#111}.pm-about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:88px;align-items:center}.pm-about-image{height:720px;overflow:hidden;background:#eee}.pm-about-copy>p{font-size:1.12rem;line-height:1.75;color:#484848}.pm-timeline{margin:38px 0;display:grid}.pm-timeline div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px 0;border-top:1px solid #ddd}.pm-timeline strong{color:var(--pm-gold)}.pm-testimonials{background:#f5f5f5;color:#111}.pm-testimonial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.pm-testimonial-card{margin:0;padding:38px;background:#fff;border:1px solid #e0e0e0}.pm-quote{font-size:4rem;line-height:.7;color:var(--pm-gold);font-family:serif}.pm-quote-text{font-size:1.03rem;line-height:1.72;color:#333}.pm-quote-text p{margin:12px 0 28px}.pm-testimonial-card footer{display:grid;gap:3px}.pm-testimonial-card footer span{color:#777;font-size:.9rem}.pm-contact{padding:100px 0;background:#0a0a0a}.pm-contact-grid{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.pm-contact p:not(.pm-kicker){max-width:780px;color:#bbb;line-height:1.7}.pm-empty{padding:34px;border:1px dashed #777;color:#777}.pm-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.pm-reveal.is-visible{opacity:1;transform:none}.pm-site-footer{background:#090909;border-top:1px solid rgba(255,255,255,.08)}.pm-footer-inner{width:min(calc(100% - 48px),var(--pm-max));margin:auto;padding:72px 0 28px}.pm-footer-grid{display:grid;grid-template-columns:minmax(300px,1.5fr) minmax(180px,.55fr) minmax(220px,.65fr);gap:72px;align-items:start}.pm-footer-brand{max-width:430px}.pm-footer-logo{display:block;width:min(100%,330px);height:76px}.pm-footer-logo-mark{display:block;width:100%;height:100%;background:url('assets/images/promedia-solutions-logo.svg') left center/contain no-repeat}.pm-footer-brand p{margin:20px 0 0;color:#8f8f8f;font-size:1rem;letter-spacing:.015em}.pm-footer-column{display:grid;gap:11px;align-content:start}.pm-footer-column h2{margin:0 0 10px;color:var(--pm-gold);font-size:.78rem;text-transform:uppercase;letter-spacing:.17em}.pm-footer-column a,.pm-footer-consent{color:#fff;text-decoration:none;font-size:.98rem;line-height:1.45}.pm-footer-column a:hover,.pm-footer-consent:hover{color:var(--pm-gold)}.pm-footer-consent{appearance:none;border:0;background:none;padding:0;text-align:left;font:inherit;cursor:pointer}.pm-footer-bottom{margin-top:58px;padding-top:22px;border-top:1px solid #222;display:flex;justify-content:space-between;gap:24px;color:#777;font-size:.92rem}
@media(max-width:1050px){.pm-footer-grid{grid-template-columns:1.2fr .7fr .7fr;gap:42px}.pm-header-inner{grid-template-columns:1fr auto}.pm-menu-toggle{display:inline-flex}.pm-header-cta{display:none}.pm-nav{position:absolute;top:84px;left:24px;right:24px;display:none;flex-direction:column;background:#111;padding:20px}.pm-nav.is-open{display:flex}.pm-hero-inner{grid-template-columns:1fr}.pm-proof-grid{grid-template-columns:repeat(3,1fr)}.pm-service-row{grid-template-columns:60px 1fr}.pm-service-media{grid-column:2}.pm-reference-grid{grid-template-columns:repeat(2,1fr)}.pm-showreel{grid-template-columns:1fr}.pm-showreel-media{min-height:380px}.pm-about-grid{grid-template-columns:1fr}.pm-about-image{height:580px}.pm-contact-grid{grid-template-columns:1fr}}
@media(max-width:700px){.pm-shell,.pm-header-inner,.pm-hero-inner,.pm-footer-inner{width:min(calc(100% - 32px),var(--pm-max))}.pm-brand{width:250px}.pm-hero-inner{padding-top:138px}.pm-hero h1{font-size:clamp(2.65rem,12vw,4.25rem)}.pm-proof-grid,.pm-reference-grid,.pm-testimonial-grid{grid-template-columns:1fr}.pm-service-row{grid-template-columns:1fr;gap:14px}.pm-service-media{grid-column:auto;height:230px}.pm-showreel-copy{padding:60px 24px}.pm-about-image{height:480px}.pm-timeline div{grid-template-columns:1fr}.pm-footer-grid{grid-template-columns:1fr;gap:42px}.pm-footer-logo{width:280px;height:66px}.pm-footer-bottom{flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}.pm-reveal{opacity:1;transform:none}}

/* Sprint 3 – Hero Manager 2.0 */
.pm-hero-media{background-position:var(--pm-hero-position,center center)}
.pm-hero-media>video,.pm-youtube-background{position:absolute;inset:0;z-index:1}
.pm-youtube-background{overflow:hidden;pointer-events:none}
.pm-youtube-background iframe{position:absolute;top:50%;left:50%;width:177.78vh;min-width:100%;height:56.25vw;min-height:100%;border:0;transform:translate(-50%,-50%) scale(1.03)}
.pm-youtube-consent{position:absolute;z-index:3;right:clamp(24px,4vw,70px);bottom:clamp(90px,12vh,150px);max-width:360px;padding:18px 20px;background:rgba(10,10,10,.76);border:1px solid rgba(255,255,255,.18);border-radius:12px;backdrop-filter:blur(14px);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.pm-youtube-consent p{margin:0 0 12px;color:rgba(255,255,255,.78);font-size:.82rem;line-height:1.45}
.pm-consent-button{appearance:none;border:1px solid var(--pm-gold);background:var(--pm-gold);color:#111;border-radius:7px;padding:10px 14px;font-weight:850;cursor:pointer}
.pm-mobile-media{display:none}
@media(max-width:700px){.pm-desktop-media{display:none!important}.pm-mobile-media{display:block}.pm-hero-media{background-image:var(--pm-mobile-image,inherit)}.pm-youtube-consent{display:none}}

/* Blog archive */
.pm-blog-page{min-height:60vh;background:#111;color:#fff}.pm-kicker{color:#c79a2d;font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.pm-blog-grid{gap:32px}.pm-blog-card{padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.14)}.pm-blog-card .wp-block-post-featured-image img{border-radius:12px;object-fit:cover}.pm-blog-card .wp-block-post-title{margin:.55rem 0}.pm-blog-card .wp-block-post-title a{color:#fff;text-decoration:none}.pm-blog-card .wp-block-post-title a:hover{color:#c79a2d}.pm-post-date{color:rgba(255,255,255,.62);font-size:.86rem}.pm-blog-card .wp-block-post-excerpt{color:rgba(255,255,255,.78)}.pm-blog-card .wp-block-post-excerpt__more-link{color:#c79a2d;font-weight:700}.wp-block-query-pagination{margin-top:56px}.wp-block-query-pagination a{color:#fff}@media(max-width:900px){.pm-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:640px){.pm-blog-grid{grid-template-columns:1fr!important}.pm-blog-page{padding-top:130px!important}}


/* Sprint 3.2 – Design System & Blog 2.0 */
:root{
  --pm-space-1:.5rem;--pm-space-2:1rem;--pm-space-3:1.5rem;--pm-space-4:2rem;
  --pm-space-5:3rem;--pm-space-6:4rem;--pm-space-7:6rem;
  --pm-border:rgba(255,255,255,.14);--pm-surface:#181818;--pm-surface-soft:#222;
  --pm-text-muted:rgba(255,255,255,.68);--pm-transition:180ms ease;
}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(199,154,45,.55);outline-offset:3px}
.pm-blog-tools{display:grid;grid-template-columns:1fr;gap:24px;margin:0 0 56px}
.pm-blog-tools .wp-block-search{width:100%;max-width:none}
.pm-blog-tools .wp-block-search__inside-wrapper{border:1px solid var(--pm-border);border-radius:var(--pm-radius);overflow:hidden;background:var(--pm-surface)}
.pm-blog-tools .wp-block-search__input{min-height:54px;border:0;background:transparent;color:#fff;padding:0 18px}
.pm-blog-tools .wp-block-search__button{margin:0;border:0;border-left:1px solid var(--pm-border);background:var(--pm-gold);color:#111;font-weight:850;padding:0 28px}
.pm-category-panel{padding:22px 24px 24px;border:1px solid var(--pm-border);border-radius:12px;background:rgba(255,255,255,.025)}
.pm-category-label{margin:0 0 16px;color:var(--pm-gold);font-size:.78rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.pm-blog-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px;margin:0;padding:0;list-style:none}
.pm-blog-categories li{margin:0;min-width:0}
.pm-blog-categories a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--pm-border);border-radius:8px;color:#fff;text-decoration:none;font-weight:700;line-height:1.2;transition:var(--pm-transition);background:var(--pm-surface)}
.pm-blog-categories a:hover{border-color:var(--pm-gold);color:var(--pm-gold);transform:translateY(-1px)}
.pm-blog-card{border-radius:12px;transition:transform var(--pm-transition),background var(--pm-transition);padding:0 0 28px}
.pm-blog-card:hover{transform:translateY(-4px)}
.pm-blog-card .wp-block-post-featured-image{overflow:hidden;border-radius:12px}
.pm-blog-card .wp-block-post-featured-image img{transition:transform .45s ease}
.pm-blog-card:hover .wp-block-post-featured-image img{transform:scale(1.025)}
.pm-single-wrap{background:#111;color:#fff;padding:170px 24px 110px}
.pm-single-inner{width:min(100%,980px);margin:auto}
.pm-single-meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--pm-text-muted);font-size:.92rem;margin:20px 0 34px}
.pm-single-meta a{color:var(--pm-gold);text-decoration:none}
.pm-single-content{font-size:1.12rem;line-height:1.82;color:rgba(255,255,255,.86)}
.pm-single-content :where(h2,h3,h4){margin-top:2.2em;color:#fff}
.pm-single-content img{border-radius:12px}
.pm-related{margin-top:80px;padding-top:48px;border-top:1px solid var(--pm-border)}
.pm-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.pm-related-card{background:var(--pm-surface);border-radius:12px;overflow:hidden}
.pm-related-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.pm-related-card__body{padding:20px}
.pm-related-card__body a{color:#fff;text-decoration:none;font-weight:800;font-size:1.1rem;line-height:1.25}
.pm-related-card__body a:hover{color:var(--pm-gold)}
@media(max-width:1000px){.pm-blog-categories{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.pm-blog-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-related-grid{grid-template-columns:1fr}.pm-single-wrap{padding-top:130px}}

@media(max-width:520px){.pm-blog-categories{grid-template-columns:1fr}.pm-category-panel{padding:18px}}


/* Sprint 3.2.2 – ruhigeres Blog-Archiv */
.pm-blog-page{padding-top:145px!important}
.pm-blog-page > .wp-block-group:first-child{max-width:900px;margin-bottom:38px!important}
.pm-blog-page h1{max-width:850px;font-size:clamp(3rem,6vw,5.2rem)!important;line-height:1.02;letter-spacing:-.045em}
.pm-blog-tools{grid-template-columns:minmax(0,1fr) minmax(230px,320px);align-items:end;gap:16px;margin-bottom:48px}
.pm-category-panel{padding:0;border:0;background:transparent}
.pm-category-label{margin:0 0 9px;color:var(--pm-text-muted);font-size:.72rem;letter-spacing:.12em}
.pm-blog-categories{display:block;width:100%}
.pm-blog-categories select{width:100%;min-height:56px;padding:0 44px 0 16px;border:1px solid var(--pm-border);border-radius:var(--pm-radius);background:var(--pm-surface);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.pm-blog-grid{gap:48px 28px}
.pm-blog-card{padding-bottom:0;border-bottom:0}
.pm-blog-card .wp-block-post-featured-image{margin-bottom:18px!important}
.pm-blog-card .wp-block-post-title{margin:.45rem 0 .75rem;font-size:clamp(1.45rem,2.1vw,2rem)!important;line-height:1.08;letter-spacing:-.025em}
.pm-blog-card .wp-block-post-excerpt{margin-top:0;color:rgba(255,255,255,.7);font-size:.98rem;line-height:1.58}
.pm-blog-card .wp-block-post-excerpt__excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pm-blog-card .wp-block-post-excerpt__more-text{margin-top:14px}
.pm-blog-card .wp-block-post-excerpt__more-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.pm-blog-card .wp-block-post-excerpt__more-link:after{content:'→';transition:transform var(--pm-transition)}
.pm-blog-card .wp-block-post-excerpt__more-link:hover:after{transform:translateX(3px)}
@media(max-width:900px){.pm-blog-tools{grid-template-columns:1fr}.pm-blog-page h1{font-size:clamp(2.8rem,9vw,4.5rem)!important}}
@media(max-width:640px){.pm-blog-page{padding-top:120px!important}.pm-blog-page h1{font-size:clamp(2.45rem,12vw,3.5rem)!important}.pm-blog-grid{gap:38px}}


/* Sprint 3.2.3 – Kategorien aus dem Blog-Archiv entfernt */
.pm-blog-tools{display:block;margin-bottom:48px}
.pm-blog-tools .wp-block-search{width:100%;max-width:none}
