/* Character Path brand v1. Existing layout, actions and semantic colours retained. */
@font-face{font-family:Onest;src:url('/brand/v1/04-fuentes/Onest-Variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Bricolage Grotesque';src:url('/brand/v1/04-fuentes/BricolageGrotesque-Variable.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
:root{--cp-font-text:Onest,Arial,sans-serif;--cp-font-display:'Bricolage Grotesque',Arial,sans-serif}
body,#character-path-preview,.cp-legal-page{font-family:var(--cp-font-text)}
button,input,textarea,select{font-family:var(--cp-font-text)}
#character-path-preview :is(h1,h2,h3),.hero-copy h1,.vision :is(h2,h3),.cp-legal-page :is(h1,h2,h3){font-family:var(--cp-font-display);font-weight:600;font-optical-sizing:none;font-variation-settings:'opsz' 48,'wdth' 100;letter-spacing:-.02em}
#character-path-preview h1,.hero-copy h1{font-weight:650;letter-spacing:-.03em}

/* Reading rhythm for the approved Onest / Bricolage identity. */
#character-path-preview{font-size:15px;line-height:1.65}
#character-path-preview :is(.cp-content,.cp-work-dialog,.cp-feedback-dialog) p:not(.cp-estimate-value):not(.cp-eyebrow):not(.cp-footer-note){font-size:14px;line-height:1.7}
#character-path-preview .cp-page-head h1{line-height:1.2}
#character-path-preview .cp-section-title h2{line-height:1.3}
#character-path-preview .cp-field{font-size:14px;line-height:1.5;gap:10px}
#character-path-preview .cp-notice{font-size:14px;line-height:1.65}
#character-path-preview .cp-field small{font-size:13px;line-height:1.65}
#character-path-preview :is(.cp-form-panel,.cp-empty,.cp-feedback-card,.cp-mentoring-card,.cp-mentoring-session)>:is(h2,h3)+p{margin-top:12px}
#character-path-preview :is(.cp-form-panel,.cp-empty,.cp-feedback-card,.cp-mentoring-card,.cp-mentoring-session)>p+p{margin-top:12px}
#character-path-preview :is(.cp-form-panel,.cp-workflow-card)>p+.cp-form-grid{margin-top:22px}
#character-path-preview .cp-form-grid{row-gap:24px;column-gap:24px}
@media(max-width:600px){#character-path-preview .cp-field :is(input,select,textarea){font-size:16px}}


/* Symbol spans the name and descriptor; wordmark paths are preserved. */
#character-path-preview .cp-brand,.site-header .brand{display:flex;flex-direction:row;align-items:center;gap:12px}
#character-path-preview .cp-sidebar>.cp-brand{gap:12px;justify-self:start}
#character-path-preview .cp-brand .cp-brand-symbol,.site-header .brand .cp-brand-symbol{display:block;flex:none;width:40px;height:40px;object-fit:contain}
#character-path-preview .cp-brand-copy,.site-header .cp-brand-copy{display:block;width:max-content;max-width:240px;min-width:0}
#character-path-preview .cp-brand-name,.site-header .brand .cp-brand-name{display:block;width:144px;max-width:100%;height:auto}
#character-path-preview .cp-brand small,.site-header .brand small{display:block;font-family:var(--cp-font-text);font-size:11px;font-weight:450;letter-spacing:1.3px;text-transform:uppercase;margin:5px 0 0;line-height:1.4}
.legal-brand .cp-brand-lockup{display:block;width:240px;height:auto}
.legal-brand .cp-brand-lockup img{display:block;width:100%;height:auto}
@media(max-width:760px){
 #character-path-preview .cp-brand,#character-path-preview .cp-sidebar>.cp-brand,.site-header .brand{gap:10px}
 #character-path-preview .cp-brand .cp-brand-symbol,.site-header .brand .cp-brand-symbol{width:36px;height:36px}
 #character-path-preview .cp-brand-copy,.site-header .cp-brand-copy{width:176px}
 #character-path-preview .cp-brand small,.site-header .brand small{font-size:10px;letter-spacing:.9px;margin-top:5px}
 .legal-brand .cp-brand-lockup{width:200px}
}
@media(max-width:360px){
 #character-path-preview .cp-brand,#character-path-preview .cp-sidebar>.cp-brand,.site-header .brand{gap:8px}
 #character-path-preview .cp-brand .cp-brand-symbol,.site-header .brand .cp-brand-symbol{width:32px;height:32px}
 #character-path-preview .cp-brand-copy,.site-header .cp-brand-copy{width:140px}
 #character-path-preview .cp-brand small,.site-header .brand small{font-size:9px;letter-spacing:.55px;margin-top:4px}
 .legal-brand .cp-brand-lockup{width:180px}
}

#character-path-preview .cp-task-group>h2{margin-bottom:18px}

#character-path-preview p.cp-panel{padding:20px 24px}
