/* Telecoms4Business unified premium dynamic design — 2026-10-14 */
/* Shared visual system. No content or EJS data is generated here. */
:root{--t4bp-ink:#10294d;--t4bp-blue:#2778f2;--t4bp-border:#dce6f3;--t4bp-soft:#f7faff}
/* Photo-backed hero: uses an image already referenced by the existing live templates. */
:is(.t4b-gold-service,.kc-page,.kcp-gold,.pci-gold) :is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero),
.solution-hero.keyword-industry-hero,.solution-hero:not(.keyword-industry-hero){
 background-image:linear-gradient(105deg,rgba(5,21,49,.94),rgba(10,39,81,.84) 60%,rgba(13,52,102,.8)),url('/images/managed-it-hero.jpg')!important;
 background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
 color:#fff!important;
}
/* Override legacy pseudo-element overlays that obscure hero photographs. */
:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero)::before{opacity:0!important;pointer-events:none!important}
:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) :is(h1,.keyword-hero-intro,.kc-eyebrow,.kcp-eyebrow,.pci-eyebrow){color:#fff!important}
:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) h1{font-size:clamp(2.5rem,4.5vw,4.8rem)!important;line-height:1.08!important;letter-spacing:-.045em!important;text-wrap:balance}
:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) :is(.solution-hero__inner,.kc-hero-grid,.kcp-hero-inner,.pci-hero-inner){max-width:1240px;margin-inline:auto;gap:clamp(26px,4vw,60px)}
:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) :is(.keyword-hero-quote,.kc-quote,.kcp-quote,.pci-quote){background:#fff!important;border-radius:22px!important;padding:clamp(18px,2.3vw,30px)!important;box-shadow:0 24px 60px rgba(0,0,0,.2)!important;color:#122b4c!important;min-width:0}
:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) :is(.keyword-hero-quote,.kc-quote,.kcp-quote,.pci-quote) :is(h1,h2,h3,p,label,small,span,legend,strong){color:#122b4c}
:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) :is(.keyword-hero-quote,.kc-quote,.kcp-quote,.pci-quote) :is(input,textarea,select){color:#122b4c}
/* Holiday Parks-style editorial sections and spacious cards. */
:is(.t4b-premium,.kc-page,.provider-shell) :is(.px-section,.kc-section){padding-block:clamp(54px,6vw,94px)}
:is(.t4b-premium,.kc-page,.provider-shell) :is(.px-section-head,.kc-head){max-width:900px;margin-inline:auto;margin-bottom:34px}
:is(.t4b-premium,.kc-page,.provider-shell) :is(.px-section-head,.kc-head) h2{font-size:clamp(2rem,3.3vw,3.7rem);line-height:1.14;letter-spacing:-.035em;color:var(--t4bp-ink)}
:is(.t4b-premium,.kc-page,.provider-shell) :is(.px-v6-card,.px-card,.kc-card,.kcp-card,.pci-card){background:#fff;border:1px solid var(--t4bp-border);border-radius:22px;box-shadow:0 14px 45px rgba(16,41,77,.055);padding:clamp(22px,2.6vw,38px);min-width:0}
:is(.t4b-premium,.kc-page,.provider-shell) :is(.px-v6-card,.px-card,.kc-card,.kcp-card,.pci-card) h3{color:var(--t4bp-ink);font-size:clamp(1.2rem,1.5vw,1.6rem);line-height:1.3}
:is(.t4b-premium,.kc-page,.provider-shell) :is(.px-v6-card,.px-card,.kc-card,.kcp-card,.pci-card) p{line-height:1.75;color:#4a607c}
/* Existing page-specific final CTAs remain; shared footer banner stays removed. */
@media(max-width:900px){:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) :is(.solution-hero__inner,.kc-hero-grid,.kcp-hero-inner,.pci-hero-inner){grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:650px){:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) h1{font-size:clamp(2.15rem,9vw,3.4rem)!important}:is(.solution-hero,.kc-hero,.kcp-hero,.pci-hero) :is(.keyword-hero-quote,.kc-quote,.kcp-quote,.pci-quote){border-radius:16px!important}}
