.content-page { background:var(--color-background); }
.content-page-main { overflow:clip; }
.content-page-shell { width:min(calc(100% - 12vw),76rem); margin-inline:auto; }

.content-page-hero { position:relative; padding:clamp(9rem,14vh,11rem) 0 clamp(4.5rem,8vw,7rem); overflow:hidden; background:radial-gradient(circle at 86% 18%,rgba(52,42,255,.1),transparent 30%),radial-gradient(circle at 8% 90%,rgba(235,221,47,.3),transparent 27%),#fbfbfe; }
.content-page-hero::after { position:absolute; right:-9rem; bottom:-14rem; width:31rem; height:31rem; content:""; border:1px solid rgba(52,42,255,.13); border-radius:50%; pointer-events:none; }
.content-page-hero .content-page-shell { position:relative; z-index:1; }
.content-page-hero .visual-label { margin-bottom:1.4rem; }
.content-page-hero h1 { max-width:14ch; font-size:clamp(3.8rem,7vw,6.8rem); line-height:.92; letter-spacing:-.06em; }
.content-page-hero__intro { max-width:48rem; margin-top:1.6rem; color:rgba(23,23,74,.74); font-size:clamp(1.1rem,1.7vw,1.4rem); line-height:1.65; }
.content-page-shape { position:absolute; pointer-events:none; }
.content-page-shape--blue { top:32%; right:8%; width:8rem; height:8rem; background:rgba(52,42,255,.065); border:1px solid rgba(52,42,255,.1); border-radius:2rem 5rem 3rem 5rem; transform:rotate(18deg); }
.content-page-shape--yellow { bottom:-3rem; left:5%; width:10rem; height:10rem; background:rgba(235,221,47,.28); border-radius:50%; }

.content-page-article { padding:clamp(5rem,9vw,8rem) 0 clamp(8rem,12vw,11rem); background:linear-gradient(180deg,#fff,rgba(52,42,255,.025)); }
.content-page-entry { --content-width:48rem; --wide-width:76rem; color:var(--color-text); font-family:var(--font-body); }
.content-page-entry>* { width:min(calc(100% - 12vw),var(--content-width)); margin-right:auto; margin-left:auto; }
.content-page-entry>.alignwide { width:min(calc(100% - 12vw),var(--wide-width)); max-width:none; }
.content-page-entry>.alignfull { width:100%; max-width:none; }
.content-page-entry>*+* { margin-top:1.5rem; }
.content-page-entry>h2,.content-page-entry>h3,.content-page-entry>h4 { margin-top:clamp(3.5rem,7vw,6rem); }
.content-page-entry h2 { font-size:clamp(2.8rem,5vw,4.8rem); line-height:.96; letter-spacing:-.05em; }
.content-page-entry h3 { font-size:clamp(2rem,3.4vw,3.2rem); line-height:1; letter-spacing:-.04em; }
.content-page-entry h4 { font-family:var(--font-body); font-size:1.15rem; line-height:1.3; }
.content-page-entry p,.content-page-entry li { font-size:clamp(1rem,1.3vw,1.1rem); line-height:1.75; }
.content-page-entry ul,.content-page-entry ol { padding-left:1.4rem; }
.content-page-entry li+li { margin-top:.55rem; }
.content-page-entry a { color:var(--color-primary); text-underline-offset:.2em; }
.content-page-entry a:focus-visible { outline:3px solid rgba(52,42,255,.24); outline-offset:3px; border-radius:.15rem; }

.content-page-entry .wp-block-columns { gap:clamp(2rem,5vw,5rem); align-items:flex-start; }
.content-page-entry .wp-block-column>*+* { margin-top:1.2rem; }
.content-page-entry .wp-block-image img,.content-page-entry .wp-block-gallery img,.content-page-entry .wp-block-cover { border-radius:1.4rem 3.5rem 1.4rem 3.5rem; }
.content-page-entry .wp-block-image figcaption,.content-page-entry .wp-block-gallery figcaption { color:rgba(23,23,74,.62); font-size:.78rem; line-height:1.5; }
.content-page-entry .wp-block-gallery { gap:.8rem; }
.content-page-entry .wp-block-gallery.is-style-logos { display:grid; grid-template-columns:repeat(auto-fit,minmax(10rem,1fr)); gap:.8rem; }
.content-page-entry .wp-block-gallery.is-style-logos figure { display:grid; min-height:9rem; place-items:center; padding:1.5rem; background:#fff; border:1px solid rgba(52,42,255,.12); border-radius:1rem; }
.content-page-entry .wp-block-gallery.is-style-logos img { width:100%; height:5rem; object-fit:contain; border-radius:0; }
.content-page-entry .wp-block-quote { padding:clamp(2rem,4vw,3.5rem); background:rgba(235,221,47,.58); border:0; border-radius:1.4rem 3.5rem 1.4rem 3.5rem; }
.content-page-entry .wp-block-quote p { font-family:var(--font-heading); font-size:clamp(1.8rem,3.5vw,3.2rem); line-height:1.05; letter-spacing:-.035em; }
.content-page-entry .wp-block-quote cite { display:block; margin-top:1rem; font-size:.85rem; font-style:normal; font-weight:600; }
.content-page-entry .wp-block-pullquote { padding:clamp(3rem,7vw,6rem) 6vw; color:#fff; background:var(--color-primary); border:0; }
.content-page-entry .wp-block-pullquote blockquote { max-width:60rem; margin:auto; }
.content-page-entry .wp-block-pullquote p { font-family:var(--font-heading); font-size:clamp(2.2rem,5vw,4.8rem); line-height:.95; }

.content-page-entry .wp-block-group.has-background { padding:clamp(2rem,5vw,4.5rem); border-radius:1.5rem 4rem 1.5rem 4rem; }
.content-page-entry .wp-block-cover.alignfull { min-height:clamp(25rem,55vw,46rem); border-radius:0; }
.content-page-entry .wp-block-buttons { gap:.75rem; margin-top:2rem; }
.content-page-entry .wp-block-button__link { padding:.9rem 1.2rem; color:#fff; background:var(--color-primary); border:1px solid var(--color-primary); border-radius:999px; font-weight:650; text-decoration:none; transition:transform .18s ease,background-color .18s ease; }
.content-page-entry .is-style-outline>.wp-block-button__link { color:var(--color-primary); background:transparent; }
.content-page-entry .wp-block-button__link:hover { transform:translateY(-2px); }

.content-page-entry .wp-block-columns.is-style-kpi,.content-page-entry .wp-block-group.is-style-kpi { padding:clamp(2rem,4vw,3.5rem); background:rgba(52,42,255,.055); border:1px solid rgba(52,42,255,.12); border-radius:1.5rem; }
.content-page-entry .wp-block-columns.is-style-kpi strong,.content-page-entry .wp-block-group.is-style-kpi strong { color:var(--color-primary); font-family:var(--font-heading); font-size:clamp(2.8rem,5vw,5rem); line-height:1; }
.content-page-entry .wp-block-separator { margin-block:clamp(4rem,8vw,7rem); border-color:rgba(52,42,255,.14); }
.content-page-entry .wp-block-media-text { gap:clamp(2rem,5vw,5rem); }
.content-page-entry .wp-block-media-text__media img { border-radius:1.4rem 3.5rem 1.4rem 3.5rem; }

@media(max-width:782px){
  .content-page-shell{width:calc(100% - 2.5rem)}
  .content-page-hero{padding:8rem 0 4.5rem}
  .content-page-hero h1{font-size:clamp(3.2rem,14vw,4.8rem)}
  .content-page-shape--blue{right:-3rem}
  .content-page-entry>*{width:calc(100% - 2.5rem)}
  .content-page-entry>.alignwide{width:calc(100% - 2.5rem)}
  .content-page-entry .wp-block-columns{gap:2.5rem}
  .content-page-entry .wp-block-media-text{grid-template-columns:1fr!important}
  .content-page-entry .wp-block-media-text__content{grid-column:1!important;grid-row:2!important;padding:1.5rem 0 0}
  .content-page-entry .wp-block-media-text__media{grid-column:1!important;grid-row:1!important}
}
@media(prefers-reduced-motion:reduce){.content-page-entry .wp-block-button__link{transition:none}.content-page-entry .wp-block-button__link:hover{transform:none}}
