/*
Theme Name: Extreme Power
Description: Custom block theme for Extreme Power Consulting (child of Twenty Twenty-Five). Light premium layout, charcoal + orange accent. v2.
Template: twentytwentyfive
Version: 2.0.12
Requires at least: 6.7
Text Domain: extreme-power
*/
body{-webkit-font-smoothing:antialiased}
.epc-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(8px)}
.epc-logo{display:inline-flex;align-items:center;text-decoration:none}
.epc-logo img{height:58px;width:auto;display:block}
.epc-footer .epc-logo img{height:84px}
.wp-block-navigation a{text-transform:uppercase;letter-spacing:.08em;font-family:var(--wp--preset--font-family--barlow-condensed);font-weight:600;font-size:.95rem;color:#15181E}
.wp-block-navigation a:hover{color:#E3633B}
.epc-nav-cta>a{background:#E3633B;color:#fff!important;padding:.55rem 1.1rem!important;border-radius:2px}
.wp-block-button__link{text-transform:uppercase;letter-spacing:.08em;font-family:var(--wp--preset--font-family--barlow-condensed);font-weight:700}
.is-style-outline .wp-block-button__link{border:1.5px solid currentColor;background:transparent;color:#15181E}
.epc-eyebrow{font-family:var(--wp--preset--font-family--barlow-condensed);font-weight:700;letter-spacing:.22em;text-transform:uppercase;font-size:.85rem;color:#E3633B;margin-bottom:.4rem}
.epc-eyebrow:before{content:"";display:inline-block;width:28px;height:2px;background:#E3633B;vertical-align:middle;margin-right:.7rem}
/* covers */
.epc-banner,.epc-hero{color:#fff}
.epc-banner:after,.epc-hero:after,.epc-band:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.epc-banner:after{background:linear-gradient(180deg,rgba(15,17,22,.25) 0%,rgba(15,17,22,.15) 40%,rgba(15,17,22,.82) 100%)}
.epc-hero:after{background:linear-gradient(90deg,rgba(13,15,20,.86) 0%,rgba(13,15,20,.55) 45%,rgba(13,15,20,.1) 100%)}
.epc-band:after{background:linear-gradient(90deg,rgba(13,15,20,.88) 0%,rgba(13,15,20,.6) 55%,rgba(13,15,20,.25) 100%)}
.epc-banner .wp-block-cover__inner-container,.epc-hero .wp-block-cover__inner-container,.epc-band .wp-block-cover__inner-container{z-index:2;position:relative}
.epc-banner h1,.epc-hero h1,.epc-hero h2,.epc-band h2,.epc-band h3{color:#fff}
.epc-banner{padding-bottom:3.5rem!important}
.epc-hero h1{font-size:clamp(2.8rem,6vw,5.4rem);line-height:1.02;max-width:12ch}
.epc-hero .lead{font-size:1.25rem;max-width:36rem;color:rgba(255,255,255,.88)}
.epc-hero .is-style-outline .wp-block-button__link{color:#fff}
.epc-page-main{padding:4.5rem 1.5rem 5rem}
.epc-page-main h2{margin-top:2.6rem}
.epc-page-main li{margin-bottom:.35rem}
.epc-page-main ul li::marker{color:#E3633B}
/* sections */
.epc-sec{padding:6rem 1.5rem}
.epc-sec h2{margin-top:0}
.epc-muted{color:#5D6574}
.epc-card{background:#fff;border:1px solid #E7E8EB;border-radius:4px;padding:2rem!important;box-shadow:0 1px 2px rgba(20,24,33,.04);transition:box-shadow .25s,transform .25s;position:relative}
.epc-card:before{content:"";position:absolute;left:2rem;top:0;width:36px;height:3px;background:#E3633B}
.epc-card:hover{box-shadow:0 18px 40px rgba(20,24,33,.10);transform:translateY(-3px)}
.epc-card h3{margin-top:.4rem}
.has-base-2-background-color .epc-card,.has-base-3-background-color .epc-card{border-color:transparent}
.epc-placeholder{background:#FFF6F2;border-left:3px solid #E3633B;padding:.6rem .9rem;border-radius:2px;color:#7a3b25;font-size:.95rem}
.wp-block-details summary{font-weight:600;cursor:pointer;font-size:1.15rem}
.wp-block-details{border-bottom:1px solid #E7E8EB;padding:1.2rem 0}
/* logo strip */
.epc-logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:2.2rem 2.4rem;align-items:center;justify-items:center;max-width:1240px;margin:2.5rem auto 0}
.epc-logos img{max-height:78px;max-width:150px;width:auto;height:auto;object-fit:contain;transition:all .3s}
.epc-logos img:hover{transform:scale(1.06)}
/* image cards / gallery */
.epc-svc{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;max-width:1240px;margin:2.5rem auto 0}
.epc-svc a{display:block;text-decoration:none;color:inherit;background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 1px 2px rgba(20,24,33,.05);transition:all .3s}
.epc-svc a:hover{box-shadow:0 20px 44px rgba(20,24,33,.12);transform:translateY(-4px)}
.epc-svc img{width:100%;aspect-ratio:4/3.2;object-fit:cover;display:block;transition:transform .6s}
.epc-svc a:hover img{transform:scale(1.04)}
.epc-svc .t{padding:1.3rem 1.4rem 1.6rem}
.epc-svc h3{font-size:1.35rem;margin:0 0 .4rem}
.epc-svc p{font-size:.98rem;color:#5D6574;margin:0}
.epc-svc .more{display:inline-block;margin-top:.8rem;color:#E3633B;font-family:var(--wp--preset--font-family--barlow-condensed);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem}
.epc-gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:.8rem;max-width:1240px;margin:2.5rem auto 0}
.epc-gal figure{margin:0;position:relative;overflow:hidden;border-radius:3px}
.epc-gal figure.w2{grid-column:span 2}.epc-gal figure.h2{grid-row:span 2}
.epc-gal img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.epc-gal figure:hover img{transform:scale(1.05)}
.epc-gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:2rem 1rem .8rem;color:#fff;font-family:var(--wp--preset--font-family--barlow-condensed);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.9rem;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent)}
/* testimonials */
.epc-tst{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;max-width:1240px;margin:2.5rem auto 0}
.epc-tst blockquote{margin:0;background:#fff;border:1px solid #E7E8EB;border-radius:4px;padding:2rem 2rem 1.6rem;display:flex;flex-direction:column;gap:1.2rem;position:relative}
.epc-tst blockquote:before{content:"\201C";position:absolute;top:.4rem;right:1.4rem;font-family:Anton,serif;font-size:4.5rem;color:#E3633B;opacity:.25;line-height:1}
.epc-tst p{margin:0;font-size:1.02rem;line-height:1.7}
.epc-tst footer{display:flex;align-items:center;gap:.9rem;margin-top:auto}
.epc-tst footer img{width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:top}
.epc-tst cite{font-style:normal;font-family:var(--wp--preset--font-family--barlow-condensed);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:1.05rem;color:#15181E;display:block}
.epc-tst small{color:#5D6574;font-size:.9rem}
/* split */
.epc-split{display:grid;grid-template-columns:1.05fr 1fr;gap:4.5rem;align-items:center;max-width:1240px;margin:0 auto}
.epc-split.rev{grid-template-columns:1fr 1.05fr}.epc-split.rev .img{order:2}
.epc-split .img img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:4px;box-shadow:0 30px 60px rgba(20,24,33,.18)}
.epc-split .img{position:relative}
.epc-split .img:after{content:"";position:absolute;left:-18px;bottom:-18px;width:120px;height:120px;border-left:3px solid #E3633B;border-bottom:3px solid #E3633B;z-index:-1}
.epc-stats{display:flex;gap:2.6rem;margin:1.8rem 0;flex-wrap:wrap}
.epc-stats b{display:block;font-family:Anton,sans-serif;font-weight:400;font-size:2.4rem;color:#15181E;line-height:1}
.epc-stats span{font-size:.85rem;color:#5D6574;text-transform:uppercase;letter-spacing:.1em}
.epc-feature-pics{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1.6rem}
.epc-feature-pics img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:3px}
@media (max-width:900px){.epc-svc,.epc-gal{grid-template-columns:1fr 1fr}.epc-tst,.epc-split,.epc-split.rev{grid-template-columns:1fr;gap:2.4rem}.epc-split.rev .img{order:0}.epc-sec{padding:4rem 1.25rem}.epc-gal{grid-auto-rows:170px}.epc-hero h1{font-size:2.7rem}.epc-logo img{height:46px}.epc-logos{grid-template-columns:repeat(3,1fr);gap:1.6rem}}
.wp-site-blocks>*,.wp-block-post-content>.alignfull,.wp-block-post-content>.alignfull+*{margin-block-start:0!important}
.wp-site-blocks>footer{margin-block-start:0!important}
.epc-front .wp-block-post-content>*{margin-block-start:0}
.epc-hero,.epc-band,.epc-banner{padding-left:clamp(1.25rem,4vw,3rem)!important;padding-right:clamp(1.25rem,4vw,3rem)!important}
@media (max-width:900px){.epc-logos img{max-width:100%;max-height:56px}.epc-hero:after{background:linear-gradient(180deg,rgba(13,15,20,.55) 0%,rgba(13,15,20,.85) 100%)}.epc-svc{grid-template-columns:1fr}}
.epc-page-main .epc-sec{padding:1rem 0 2rem!important;background:none!important}
.epc-page-main .epc-svc{grid-template-columns:repeat(2,1fr)}
@media (max-width:900px){.epc-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.epc-logos img{max-width:100%!important}}
main.epc-page-main .wp-block-group.epc-sec.has-background{background-color:transparent!important;padding:1rem 0 2rem!important}
main.epc-page-main .epc-svc{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* Round buttons everywhere */
.wp-element-button,.wp-block-button__link,.wp-block-button .wp-block-button__link,button,input[type=submit],input[type=button],.button{border-radius:9999px !important;}

/* Logos always in colour */
.epc-hidden{display:none !important;}
.epc-gal img[src*="ekvc-17u"]{object-position:center 15% !important;}

/* Knoblauch figure */
.epc-feature-pics figure.epc-kk{margin:0;position:relative;overflow:hidden}
.epc-feature-pics .epc-kk img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}
.epc-kk figcaption{position:absolute;left:0;right:0;bottom:0;padding:.6rem .8rem;color:#fff;font-size:.8rem;line-height:1.3;background:linear-gradient(transparent,rgba(0,0,0,.7))}
/* Round images */
.wp-block-image img,.epc-gal img,.epc-gal figure,.epc-svc img,.epc-feature-pics img,.epc-kk img,.epc-kk,figure img,main img:not(.epc-logos img):not(.custom-logo){border-radius:18px !important;overflow:hidden;}

/* Athletes page banner framing (page-id-72) */
.page-id-72 .epc-banner img.wp-block-cover__image-background{object-position:42% 8% !important}
@media (max-width:781px){.page-id-72 .epc-banner img.wp-block-cover__image-background{object-position:40% 10% !important}}
/* v2.0.8 speaking hero mobile */
@media (max-width:781px){
.wp-block-cover.epc-hero-speaking{min-height:560px !important;align-items:flex-end !important;padding-top:300px !important;padding-bottom:36px !important}
.wp-block-cover.epc-hero-speaking .wp-block-cover__image-background{object-position:20% 0% !important}
}
/* 2.0.10 mobile menu fix: backdrop-filter made the header the containing block of the fixed overlay */
@media(max-width:600px){.epc-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important}.wp-block-navigation__responsive-container.is-menu-open{z-index:100000}.wp-block-navigation__responsive-container.is-menu-open a{pointer-events:auto}}
.epc-kkq{margin:1.4rem 0 1.6rem;padding:1rem 1.2rem;border-left:3px solid #E3633B;color:rgba(255,255,255,.92);max-width:560px}.epc-kkq p{margin:0 0 .6rem;font-style:italic;font-size:.95rem;line-height:1.55}.epc-kkq cite{font-style:normal;font-weight:700;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}
.epc-bg-split{display:grid;grid-template-columns:1fr 340px;gap:3rem;align-items:center;margin:2rem 0}.epc-bg-text{min-width:0}.epc-bg-img img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:4px;box-shadow:0 30px 60px rgba(20,24,33,.18)}@media (max-width:900px){.epc-bg-split{grid-template-columns:1fr;gap:1.5rem}.epc-bg-img{max-width:360px}}
