/* Original prototype typography, scoped to imported pages and protected from Divi overrides. */
body.cn-site .cn-import-code :is(h1,h2,h3,h4,h5,h6){font-family:Inter,sans-serif!important}

body.cn-site{--body-copy-size:22px;--body-copy-leading:31px;--body-copy-colour:#1d1d1f}
body.cn-site main p:not(.eyebrow,.section-label,.assessment-row-label,.contact-small,.hero-reassurance,.call-form-status,.call-form-privacy,.call-form-confirmation,.video-preview-note),
body.cn-site main li{font-family:Inter,sans-serif!important;font-size:var(--body-copy-size)!important;line-height:var(--body-copy-leading)!important;font-weight:400!important;letter-spacing:normal!important}
body.cn-site main p,
body.cn-site main li{color:var(--body-copy-colour)!important}
body.cn-site main :is(.dark,.contact,.hero,.cinema-hero) :is(p,li){color:#f5f5f5!important}
body.cn-site main .call-form-card :is(p,li){color:var(--body-copy-colour)!important}
body.cn-site main .leadership-rotator .leadership-copy .lead{font-weight:600!important}
body.cn-site main .assessment-benefits strong{font-size:22px!important;line-height:31px!important}
body.cn-site main .assessment-benefits li{margin-bottom:28px}
body.cn-site main .assessment-detail-copy>p{margin-bottom:22px}
body.cn-site main .section h2,
body.cn-site main .contact #contact-title{font-size:clamp(40px,4.4vw,64px)!important;line-height:1.1!important;letter-spacing:-1.8px!important;font-weight:600!important}
body.cn-site main .leadership-rotator h2{font-weight:700!important}
body.cn-site main .principles h3,
body.cn-site main .steps .step h3,
body.cn-site main .assessment-row h3{font-size:28px!important;line-height:1.2!important;letter-spacing:-.5px!important;font-weight:600!important}
body.cn-site main .principles h3{margin-bottom:18px}
body.cn-site main .steps .step h3{margin-bottom:18px}
body.cn-site main .sector h3{font-size:clamp(30px,3vw,42px)!important;line-height:1.2!important;font-weight:500!important;letter-spacing:-.7px!important}
body.cn-site main .call-form-card h2{font-size:38px!important;line-height:1.12!important;font-weight:600!important;letter-spacing:-1px!important}
body.cn-site main .call-faq summary{font-size:24px!important;line-height:1.35!important;font-weight:600!important}
body.cn-site main .assessment-detail summary{font-size:20px!important;line-height:1.4!important;font-weight:600!important}
body.cn-site main .assessment-benefits strong{font-size:24px!important;line-height:32px!important;font-weight:600!important}
@media(max-width:700px){
body.cn-site main .section h2,
body.cn-site main .contact #contact-title{font-size:clamp(36px,8.5vw,48px)!important;letter-spacing:-1.2px!important}
body.cn-site main .principles h3,
body.cn-site main .steps .step h3,
body.cn-site main .assessment-row h3{font-size:26px!important}
body.cn-site main .sector h3{font-size:28px!important}
body.cn-site main .call-form-card h2{font-size:34px!important}
body.cn-site main .call-faq summary{font-size:23px!important}
}
body.cn-site .text-link{font-size:18px!important;line-height:26px!important;font-weight:600!important}
body.cn-site .button{font-size:18px!important;line-height:26px!important;font-weight:600!important}
body.cn-site .masthead .button{font-size:14px!important;line-height:20px!important}
body.cn-site .section-nav .button-jobs{font-size:14px!important;line-height:22px!important;font-weight:600!important}
@media(max-width:760px){body.cn-site .section-nav .button-jobs{font-size:13px!important;line-height:20px!important}}
body.cn-site .anchor-links a,
body.cn-site .mast-note{font-size:14px!important;line-height:22px!important}
body.cn-site .section-label,
body.cn-site .section-label span,
body.cn-site .eyebrow,
body.cn-site .call-form-card .eyebrow,
body.cn-site .step-number,
body.cn-site .sector-number{font-size:14px!important;line-height:22px!important}
body.cn-site main p.assessment-row-label{font-size:14px!important;line-height:22px!important;font-weight:500!important}
body.cn-site main p.contact-small,
body.cn-site main .contact-priority .contact-direct p.contact-small,
body.cn-site main .contact-priority p.contact-reassurance,
body.cn-site main p.hero-reassurance,
body.cn-site main p.call-form-status,
body.cn-site main p.call-form-privacy,
body.cn-site main p.call-form-confirmation,
body.cn-site main p.sector-foot{font-size:16px!important;line-height:24px!important;font-weight:400!important;letter-spacing:normal!important}
body.cn-site main .contact-priority .contact-direct>p:first-child{font-size:18px!important;line-height:26px!important}
body.cn-site .leadership-image figcaption,
body.cn-site .profile-portrait figcaption,
body.cn-site .image-caption{font-size:16px!important;line-height:24px!important;letter-spacing:normal!important}
body.cn-site .profile-portrait figcaption strong{font-size:22px!important;line-height:31px!important;font-weight:600!important}
body.cn-site .profile-portrait .portrait-note{font-size:14px!important;line-height:22px!important}
body.cn-site .sector-short{font-size:18px!important;line-height:26px!important}
body.cn-site .call-form-card label{font-size:16px!important;line-height:24px!important}
body.cn-site .call-back,
body.cn-site .footer-note,
body.cn-site .footer-links,
body.cn-site .footer-legal{font-size:16px!important;line-height:24px!important}
body.cn-site .leadership-rotator .role-pause{font-size:14px!important;line-height:22px!important}
body.cn-site .footer-note,
body.cn-site .footer-links,
body.cn-site .footer-legal,
body.cn-site .profile-portrait figcaption,
body.cn-site .leadership-image figcaption{color:#1d1d1f}
@media(max-width:600px){
body.cn-site .masthead .button{padding-inline:12px;gap:8px}}
body.cn-site main .sector-content p{font-size:18px!important;line-height:28px!important}
body.cn-site main :is(.principles,.steps,.assessment-detail-copy,.call-faq) p,
body.cn-site main .assessment-detail-copy li,
body.cn-site main p.call-form-intro,
body.cn-site main p.call-intro-detail{font-size:18px!important;line-height:28px!important}
body.cn-site main .assessment-benefits strong{font-size:20px!important;line-height:28px!important}
body.cn-site main .assessment-benefits li{margin-bottom:24px}
body.cn-site main .call-faq summary{font-size:22px!important;line-height:30px!important}
body.cn-site main .assessment-detail summary{font-size:18px!important;line-height:26px!important}
body.cn-site main .assessment-detail-copy>p{margin-bottom:20px}
body.cn-site main .phone,
body.cn-site main .contact-priority .contact-direct .phone{font-size:26px!important;line-height:34px!important;letter-spacing:-.4px!important}
body.cn-site main .sector-content p{margin-top:8px}
body.cn-site main :is(.principles,.steps,.leadership-grid,.company-profile-grid)>*{min-width:0}
@media(min-width:701px) and (max-width:1100px){
body.cn-site main .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}}
@media(max-width:700px){
body.cn-site{--body-copy-size:20px;--body-copy-leading:30px}
body.cn-site main .call-faq summary{font-size:21px!important;line-height:29px!important}
body.cn-site main .phone,
body.cn-site main .contact-priority .contact-direct .phone{font-size:23px!important;line-height:32px!important}
}
@media(max-width:560px){
body.cn-site main .steps{grid-template-columns:minmax(0,1fr);gap:32px}
body.cn-site main .button{max-width:100%;gap:14px;padding-inline:22px;font-size:16px!important;line-height:24px!important}
body.cn-site main .button-arrow{flex-shrink:0}
}
body.cn-site main .call-phone-strip{padding-block:54px;text-align:center}
body.cn-site main .call-phone-strip #call-phone-title{font-size:24px!important;line-height:32px!important;font-weight:500!important;letter-spacing:-.3px!important;max-width:none;margin:0 0 14px}
body.cn-site main .call-phone-strip .phone{font-size:30px!important;line-height:38px!important;margin:0 0 16px}
body.cn-site main .call-phone-strip .contact-small{max-width:none;margin:0}
@media(max-width:600px){
body.cn-site main .call-phone-strip{padding-block:40px}
body.cn-site main .call-phone-strip .phone{font-size:24px!important;line-height:32px!important}}
body.cn-site .legal-main{min-height:65vh;padding-top:36px;padding-bottom:96px}
body.cn-site .legal-content{max-width:900px;margin-inline:auto;padding-top:70px;text-align:left}
body.cn-site .legal-prose{overflow-wrap:anywhere;word-break:normal;text-align:left}
body.cn-site .legal-prose :is(p,li,h2,h3){text-align:left}
body.cn-site .legal-content h1{font-size:clamp(40px,4.5vw,56px)!important;line-height:1.12!important;letter-spacing:-1.5px!important;font-weight:600!important;margin:0 0 32px}
@media(max-width:600px){
body.cn-site .legal-main{padding-bottom:64px}
body.cn-site .legal-content{padding-top:48px}}
body.cn-site main .legal-prose p,
body.cn-site main .legal-prose li{font-size:18px!important;line-height:28px!important}
body.cn-site main .legal-prose h2{font-size:28px!important;line-height:36px!important;font-weight:600!important;letter-spacing:-.4px!important;margin:40px 0 16px}
body.cn-site .legal-prose p{margin:0 0 20px}
body.cn-site .legal-prose ul{list-style:disc outside;padding-left:24px;margin:0 0 24px}
body.cn-site .legal-prose li{margin-bottom:10px}
body.cn-site main .legal-prose{font-family:Inter,sans-serif!important;font-size:18px!important;line-height:28px!important;font-weight:400!important}
body.cn-site main .legal-prose p{display:block!important;margin:0 0 20px!important;padding:0!important}
body.cn-site main .legal-prose li{font-size:18px!important;line-height:28px!important}
body.cn-site main .legal-prose a{font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;font-weight:inherit!important;text-decoration:underline;text-underline-offset:4px}
body.cn-site .legal-prose .legal-company{list-style:none;padding-left:0}
@media(max-width:600px){
body.cn-site main .legal-prose h2{font-size:25px!important;line-height:32px!important}}
body.cn-site main .legal-prose h3{font-size:22px!important;line-height:30px!important;font-weight:600!important;letter-spacing:-.2px!important;margin:28px 0 12px}
body.cn-site .legal-content :is(h1,h2,h3) :is(strong,b){font-weight:inherit!important}
body.cn-site .legal-prose :is(strong,b){font-weight:600!important}
body.cn-site .legal-content > .eyebrow{font-size:14px!important;line-height:22px!important;font-weight:600!important;margin-bottom:24px}
@media(max-width:600px){
body.cn-site .legal-content h1{font-size:40px!important;letter-spacing:-1px!important}
body.cn-site main .legal-prose h3{font-size:21px!important;line-height:29px!important}
}
body.cn-site main #sectors-title em{font-family:Inter,sans-serif!important;font-style:italic!important;font-weight:400!important}
body.cn-site .footer .button-jobs{font-size:14px!important;line-height:20px!important;min-height:40px;padding:9px 16px;gap:9px}
body.cn-site .footer .button-jobs .button-arrow{width:18px;height:18px}
body.cn-site .footer-bottom{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:25px;border-top:1px solid var(--line)}
body.cn-site .footer-bottom .footer-note{width:auto;order:initial;flex-shrink:0}
body.cn-site .footer-bottom .footer-legal{flex-basis:auto;padding-top:0;border-top:0}
@media(max-width:760px){
body.cn-site .footer-bottom{flex-wrap:wrap;gap:16px}
body.cn-site .footer-bottom .footer-legal{order:initial;justify-content:flex-start}}
body.cn-site .footer-brand{max-width:420px}
body.cn-site .footer-description{margin:16px 0 0;font-family:Inter,sans-serif!important;font-size:14px!important;line-height:22px!important;font-weight:400!important;color:#1d1d1f}
body.cn-site .call-founder{display:flex;align-items:center;gap:16px;margin:30px 0 24px;color:#fff}
body.cn-site .call-founder img{display:block;width:72px;height:72px;flex-shrink:0;border-radius:50%;object-fit:cover;object-position:50% 30%}
body.cn-site .call-founder strong{display:block;font-size:18px!important;line-height:26px!important;font-weight:600!important}
body.cn-site .call-founder span{display:block;margin-top:2px;font-size:14px!important;line-height:22px!important;color:rgba(255,255,255,.75)}
@media(max-width:600px){
body.cn-site .call-founder img{width:64px;height:64px}
body.cn-site .call-founder{gap:14px}}
body.cn-site main .leadership-image img,
body.cn-site main .profile-portrait img,
body.cn-site main .contact-image img{box-shadow:0 22px 46px -10px rgba(15,23,31,.24),0 8px 20px -8px rgba(15,23,31,.12)}
@media(max-width:600px){
body.cn-site main .leadership-image img,
body.cn-site main .profile-portrait img,
body.cn-site main .contact-image img{box-shadow:0 16px 32px -8px rgba(15,23,31,.22),0 6px 14px -6px rgba(15,23,31,.1)}}
body.cn-site a.back-home{display:inline-block;font-family:Inter,sans-serif!important;font-size:16px!important;line-height:24px!important;font-weight:400!important;letter-spacing:normal!important;border:0;padding:0;color:#1d1d1f;text-decoration:none}
body.cn-site .dark a.back-home{color:#d3dbe0}
body.cn-site a.back-home:hover{text-decoration:underline;text-underline-offset:4px}

body.cn-site .assessment-row-content>p{font-family:Inter,sans-serif!important;font-size:var(--body-copy-size)!important;line-height:var(--body-copy-leading)!important;font-weight:400!important}
body.cn-site .assessment-detail-copy>p{font-family:Inter,sans-serif!important;font-size:18px!important;line-height:28px!important;font-weight:400!important;margin-bottom:20px!important}

/* Keep the leadership CTA separate from the copy, matching the original layout. */
body.cn-site .leadership-copy>p{display:block!important;padding-bottom:0!important}
body.cn-site .leadership-copy>p.lead{margin:0 0 24px!important}
body.cn-site .leadership-copy>p.body-copy{margin:0 0 22px!important}
body.cn-site .leadership-copy>p.body-copy:last-of-type{margin-bottom:0!important}
body.cn-site .leadership-copy>.text-link{display:table!important;width:fit-content;max-width:100%;margin:40px 0 0!important;clear:both}
/* Give the hero CTA its own row and spacing, independent of Divi paragraph styles. */
body.cn-site .cinema-copy>p.cinema-description{display:block!important;margin:0!important;padding:0!important}
body.cn-site .cinema-copy>p.cinema-description+.button{display:flex!important;width:fit-content;max-width:100%;margin:38px 0 0!important;clear:both}


