/* /executive only. The shared Onest type, 12-column grid and blue thread remain.
   No absolute positioning for content, no negative margins, no fixed heights. */
.ec-page { --ec-blue:#2347d8; --ec-ink:#101216; --ec-muted:#586277; --ec-paper:#f0f1f3; --ec-line:#d2d6df; --ec-wash:#e9edf8; color:var(--ec-ink); }
.ec-page :is(h1,h2,h3,p,figure,blockquote,dl,dd) { margin:0; }
.ec-page :is(h1,h2,h3) { font-weight:500; }
.ec-page :is(h1,h2) { text-wrap:balance; }
.ec-page h2 { font-size:clamp(36px,3.75vw,54px); line-height:1.12; letter-spacing:-.045em; }
.ec-page h2 em { font-style:normal; color:var(--ec-blue); }
.ec-page :is(a,summary,button,input,select,textarea):focus-visible { outline:3px solid var(--ec-blue); outline-offset:5px; }
.ec-page a { text-underline-offset:4px; }
.ec-page :is(section[id],details) { scroll-margin-top:110px; }
.ec-eyebrow { color:var(--ec-muted); font-size:11px; line-height:1.7; font-weight:500; letter-spacing:.065em; text-transform:uppercase; }
.ec-section { padding-block:96px; }
.ec-page .ec-arrow { flex:0 0 22px; vertical-align:middle; }
.ec-inline-link,.ec-source { display:inline-flex; align-items:center; gap:12px; min-height:44px; max-width:100%; font-size:14px; line-height:1.55; color:var(--ec-blue); }
.ec-inline-link { text-decoration:none; }
.ec-inline-link:hover { text-decoration:underline; }
.ec-source { font-size:13px; }
.ec-split,.ec-heading-row,.ec-hero-grid,.ec-proof-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:32px 24px; }
.ec-split > .ec-section-intro { grid-column:1/6; }
.ec-split > :last-child { grid-column:7/-1; min-width:0; }
.ec-section-intro .ec-eyebrow { margin-bottom:22px; }
.ec-section-intro > p:not(.ec-eyebrow) { max-width:43ch; font-size:16px; line-height:1.7; color:var(--ec-muted); margin-top:26px; }
.ec-section-intro > .ec-inline-link { margin-top:22px; }
.ec-heading-row { align-items:end; margin-bottom:48px; }
.ec-heading-row > div { grid-column:1/8; }
.ec-heading-row .ec-eyebrow { margin-bottom:22px; }
.ec-heading-row > p { grid-column:9/-1; font-size:15px; line-height:1.7; color:var(--ec-muted); }

/* First screen: one direct-entry form with the original executive product id. */
.ec-hero { padding-block:32px 64px; }
.ec-page .ec-breadcrumbs { margin-bottom:32px; }
.ec-hero-grid { gap:32px 48px; align-items:start; }
.ec-hero-copy { grid-column:1/8; grid-row:1; min-width:0; }
.ec-hero-copy .ec-eyebrow { max-width:55ch; margin-bottom:24px; }
.ec-hero h1 { font-size:clamp(48px,5vw,72px); line-height:1.055; letter-spacing:-.055em; }
.ec-hero-promise { font-size:clamp(22px,2.05vw,29px); line-height:1.4; letter-spacing:-.025em; margin-top:24px!important; }
.ec-hero-lead { max-width:53ch; color:var(--ec-muted); font-size:16px; line-height:1.7; margin-top:20px!important; }
.ec-start-note { display:flex; align-items:baseline; gap:12px; font-size:13px; line-height:1.65; margin-top:20px!important; }
.ec-start-note > span:first-child { display:block; width:16px; height:2px; background:var(--ec-blue); flex-shrink:0; transform:translateY(-4px); }
.ec-start-note > span:last-child { min-width:0; }
.ec-hero-terms { max-width:58ch; padding-left:16px; border-left:2px solid var(--ec-blue); color:var(--ec-muted); font-size:13px; line-height:1.65; margin-top:18px!important; }
.ec-hero-copy > .ec-inline-link { margin-top:12px; }
.ec-hero-aside { grid-column:8/-1; grid-row:1/3; min-width:0; }
.ec-hero-media { grid-column:1/8; grid-row:2; min-width:0; }
.ec-hero-media > img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border:1px solid #d7dbe4; border-radius:10px; }
.ec-hero-media figcaption { display:grid; gap:4px; padding-top:16px; font-size:12px; line-height:1.65; color:var(--ec-muted); }
.ec-hero-media figcaption > span > span { color:var(--ec-blue); padding-inline:4px; }
.ec-hero-media figcaption a { display:inline-flex; align-items:center; gap:8px; width:fit-content; min-height:36px; color:var(--ec-blue); text-decoration:none; }
.ec-hero-media figcaption a:hover { text-decoration:underline; }
.ec-hero .las-quiz { padding:0; background:transparent; color:var(--ec-ink); }
.ec-hero .las-quiz__wrap { width:100%; max-width:none; display:block; margin:0; }
.ec-hero .las-quiz__intro { display:none; }
.ec-hero .las-quiz__card { border:1px solid #c9d1e2; border-top:3px solid var(--ec-blue); border-radius:10px; padding:28px; background:#fff; }
.ec-hero .las-quiz__step > legend { font-size:28px; line-height:1.2; letter-spacing:-.035em; font-weight:500; margin-bottom:12px; }
.ec-hero .las-quiz__contact > p { font-size:14px; line-height:1.65; }
.ec-hero .las-quiz__field { margin-top:16px; }
.ec-hero .las-quiz__field label { font-size:13px; line-height:1.5; margin-bottom:6px; }
.ec-hero .p-contact-fields { grid-template-columns:116px minmax(0,1fr); gap:4px 12px; margin-top:20px; }
.ec-hero .las-quiz__consents { margin-top:20px; }
.ec-hero .las-quiz__consent { font-size:12px; line-height:1.65; }
.ec-hero .las-quiz__actions--contact { margin-top:20px; }
.ec-hero .las-quiz__button { min-height:52px; font-size:14px; line-height:1.45; padding:14px 16px; }
.ec-hero .las-quiz__terms { margin-top:12px!important; font-size:12px!important; }
.ec-hero .las-quiz__back { font-size:12px; }
.ec-hero .las-quiz__field textarea { resize:vertical; }

/* Recognition has one shared baseline, rather than three competing cards. */
.ec-recognition { background:linear-gradient(115deg,#e9edf8 0%,#f1f3f8 65%,#f4f5f8 100%); border-block:1px solid #d7ddea; }
.ec-situations article { padding-block:25px; border-top:1px solid #c6cfdf; }
.ec-situations article:first-child { padding-top:0; border-top:0; }
.ec-situations article:last-child { padding-bottom:0; }
.ec-situations h3 { font-size:clamp(21px,1.85vw,26px); line-height:1.35; letter-spacing:-.02em; }
.ec-situations p { margin-top:12px; color:var(--ec-muted); font-size:15px; line-height:1.75; max-width:60ch; }

/* Native disclosure rows: the outcome remains readable without opening one. */
.ec-tasks { background:#fff; }
.ec-task { border-top:1px solid var(--ec-line); }
.ec-task:last-child { border-bottom:1px solid var(--ec-line); }
.ec-task > summary { list-style:none; cursor:pointer; display:grid; grid-template-columns:24px minmax(0,1fr) 32px; gap:24px; align-items:start; padding-block:26px; }
.ec-task > summary::-webkit-details-marker { display:none; }
.ec-task-mark { display:block; width:16px; height:2px; margin-top:16px; background:var(--ec-blue); }
.ec-task-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:baseline; }
.ec-task-heading strong { font-size:clamp(22px,2.05vw,29px); line-height:1.3; letter-spacing:-.03em; font-weight:500; }
.ec-task-heading > span { font-size:16px; line-height:1.6; color:var(--ec-muted); }
.ec-task-toggle { display:block; width:28px; height:28px; margin-top:3px; color:var(--ec-blue); background:linear-gradient(currentColor,currentColor) center/16px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 16px no-repeat; }
.ec-task[open] .ec-task-toggle { background:linear-gradient(currentColor,currentColor) center/16px 1.5px no-repeat; }
.ec-task[open] .ec-task-heading strong { color:var(--ec-blue); }
.ec-task-content { padding:4px 56px 28px 48px; }
.ec-task-content dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.ec-task-content dt { margin-bottom:10px; font-size:11px; font-weight:500; line-height:1.6; letter-spacing:.05em; text-transform:uppercase; color:var(--ec-blue); }
.ec-task-content dd { font-size:15px; line-height:1.75; }
.ec-task-check { display:flex; align-items:baseline; flex-wrap:wrap; gap:12px 32px; margin-top:24px; border-top:1px solid #e3e6ed; padding-top:18px; }
.ec-task-check > p { flex:1 1 320px; color:var(--ec-muted); font-size:13px; line-height:1.7; }
.ec-task-check > a { display:inline-flex; align-items:center; gap:10px; min-height:44px; max-width:100%; color:var(--ec-blue); font-size:13px; }
.ec-task-footer { max-width:78ch; color:var(--ec-muted); font-size:14px; line-height:1.75; margin-top:28px!important; }

/* The blue line lives in its own grid column and can never cross the copy. */
.ec-process { list-style:none; margin:0; padding:0; }
.ec-process li { display:grid; grid-template-columns:40px minmax(0,1fr); column-gap:24px; padding-bottom:32px; }
.ec-process li:last-child { padding-bottom:0; }
.ec-step-number { color:var(--ec-blue); font:400 13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace; display:flex; align-items:center; flex-direction:column; gap:16px; }
.ec-process li:not(:last-child) .ec-step-number::after { content:""; display:block; width:1px; flex:1; min-height:32px; background:#aabce9; }
.ec-step-label { color:var(--ec-muted); font-size:11px; line-height:1.8; letter-spacing:.035em; }
.ec-process h3 { font-size:24px; line-height:1.3; letter-spacing:-.025em; margin-top:8px; }
.ec-process li > div > p:last-child { margin-top:12px; font-size:15px; line-height:1.75; color:var(--ec-muted); }

.ec-tools { background:#151923; color:#fff; }
.ec-tools .ec-eyebrow,.ec-tools .ec-section-intro > p:not(.ec-eyebrow) { color:#bec8df; }
.ec-tools .ec-section-intro h2 { font-size:clamp(34px,3.5vw,48px); }
.ec-tool-list > div { padding-block:22px; border-top:1px solid #3a4358; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:24px; }
.ec-tool-list > div:first-child { padding-top:0; border:0; }
.ec-tool-list > div:last-child { padding-bottom:0; }
.ec-tool-list dt span { display:block; font-size:11px; line-height:1.7; color:#b5c4e9; margin-bottom:8px; }
.ec-tool-list dt strong { display:block; font-size:16px; line-height:1.5; font-weight:500; }
.ec-tool-list dd { color:#d3daea; font-size:14px; line-height:1.75; }

.ec-proof { background:#fff; }
.ec-proof-grid { align-items:start; }
.ec-review { grid-column:1/7; border-top:2px solid var(--ec-blue); padding-top:12px; }
.ec-quote-mark { display:block; font-size:58px; font-weight:400; line-height:1; color:var(--ec-blue); }
.ec-review blockquote p { font-size:clamp(23px,2.15vw,31px); line-height:1.5; letter-spacing:-.025em; }
.ec-review figcaption { margin-top:24px; font-size:12px; line-height:1.7; }
.ec-review figcaption strong { display:block; font-weight:500; }
.ec-review figcaption span { display:block; color:var(--ec-muted); margin-top:4px; }
.ec-mentor { grid-column:8/-1; display:grid; grid-template-columns:136px minmax(0,1fr); gap:24px; padding-top:18px; }
.ec-mentor > img { display:block; width:136px; height:auto; aspect-ratio:2/3; object-fit:cover; object-position:center 18%; border-radius:68px 68px 8px 8px; }
.ec-mentor .ec-eyebrow { margin-bottom:12px; }
.ec-mentor h3 { font-size:24px; line-height:1.25; letter-spacing:-.035em; }
.ec-mentor p:not(.ec-eyebrow) { font-size:14px; line-height:1.75; color:var(--ec-muted); margin-top:14px; }
.ec-mentor .ec-inline-link { font-size:12px; margin-top:12px; }
.ec-author-story { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px; margin-top:56px; padding-top:28px; border-top:1px solid var(--ec-line); }
.ec-author-story > .ec-eyebrow { grid-column:1/4; padding-top:4px; }
.ec-author-story > div { grid-column:4/11; }
.ec-author-story h3 { font-size:25px; line-height:1.35; letter-spacing:-.025em; }
.ec-author-story p:not(.ec-eyebrow) { color:var(--ec-muted); font-size:15px; line-height:1.75; margin-top:14px; }
.ec-author-story .ec-source { margin-top:12px; }
.ec-author-story .ec-proof-source { margin-top:20px; font-size:13px; }
.ec-author-story .ec-proof-source .ec-source { min-height:36px; margin-top:0; }

.ec-price { background:linear-gradient(145deg,#e9edf8,#f1f3f8 75%); border-block:1px solid #d7ddea; }
.ec-price .s-actions { margin-top:30px; }
.ec-price .s-button { text-align:left; line-height:1.5; }
.ec-price .s-button .ec-arrow { color:inherit; }
.ec-prices > div { padding-block:26px; border-top:1px solid #c4cde1; }
.ec-prices > div:first-child { padding-top:0; border:0; }
.ec-prices dt { font-size:18px; line-height:1.45; }
.ec-prices dt span { display:block; font-size:13px; line-height:1.65; margin-top:6px; color:var(--ec-muted); }
.ec-prices dd { font-size:clamp(32px,3.2vw,46px); line-height:1.2; letter-spacing:-.045em; margin-top:16px; color:var(--ec-blue); }
.ec-prices dd span { font-size:.75em; }
.ec-price-note { font-size:13px; line-height:1.8; color:var(--ec-muted); margin-top:16px!important; max-width:65ch; }
.ec-price-details > .ec-source { margin-top:12px; }
.ec-faq-list details { border-top:1px solid var(--ec-line); }
.ec-faq-list details:last-child { border-bottom:1px solid var(--ec-line); }
.ec-faq-list summary { padding-block:22px; min-height:64px; font-size:18px; line-height:1.5; font-weight:500; cursor:pointer; list-style-position:outside; margin-left:18px; padding-left:8px; }
.ec-faq-list summary::marker { color:var(--ec-blue); font-size:13px; }
.ec-faq-list details > p { padding:0 0 24px 26px; color:var(--ec-muted); font-size:15px; line-height:1.75; }
.ec-faq-list a { color:var(--ec-blue); }
.ec-next { display:flex; gap:16px 32px; justify-content:space-between; flex-wrap:wrap; border-top:1px solid var(--ec-line); margin-top:64px; padding-top:24px; }
.ec-next a { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:var(--ec-blue); font-size:14px; }

@media (max-width:1200px) {
  .ec-hero-grid { column-gap:32px; }
  .ec-hero-copy,.ec-hero-media { grid-column:1/8; }
  .ec-hero h1 { font-size:clamp(45px,5vw,64px); }
  .ec-hero .las-quiz__card { padding:24px; }
  .ec-hero .p-contact-fields { grid-template-columns:1fr; }
  .ec-hero .p-contact-fields > .las-quiz__field + .las-quiz__field { margin-top:8px; }
  .ec-mentor { grid-column:8/-1; grid-template-columns:100px minmax(0,1fr); gap:18px; }
  .ec-mentor > img { width:100px; }
  .ec-task-content { padding-right:0; }
}
@media (max-width:980px) {
  .ec-section { padding-block:72px; }
  .ec-hero { padding-top:24px; }
  .ec-hero-copy { grid-column:1/-1; grid-row:1; }
  .ec-hero-aside { grid-column:1/8; grid-row:2; }
  .ec-hero-media { grid-column:8/-1; grid-row:2; }
  .ec-hero h1 { max-width:20ch; font-size:clamp(48px,6vw,64px); }
  .ec-hero-lead { max-width:68ch; }
  .ec-hero-media figcaption > span > span { padding-inline:0; }
  .ec-hero .p-contact-fields { grid-template-columns:110px minmax(0,1fr); }
  .ec-hero .p-contact-fields > .las-quiz__field + .las-quiz__field { margin-top:0; }
  .ec-split > .ec-section-intro { grid-column:1/6; }
  .ec-split > :last-child { grid-column:6/-1; }
  .ec-heading-row > div { grid-column:1/8; }
  .ec-heading-row > p { grid-column:8/-1; }
  .ec-task-heading { grid-template-columns:1fr; gap:10px; }
  .ec-task-content dl { gap:20px; }
  .ec-task-content { padding-left:0; }
  .ec-tool-list > div { grid-template-columns:1fr; gap:12px; }
  .ec-tool-list dt span { margin-bottom:4px; }
  .ec-proof-grid .ec-review { grid-column:1/8; }
  .ec-mentor { grid-column:9/-1; grid-template-columns:1fr; }
  .ec-mentor > img { width:116px; }
  .ec-author-story > div { grid-column:4/-1; }
}
@media (max-width:700px) {
  .ec-section { padding-block:56px; }
  .ec-page h2 { font-size:36px; }
  .ec-hero { padding-bottom:40px; }
  .ec-page .ec-breadcrumbs { margin-bottom:24px; font-size:12px; }
  .ec-hero-grid { grid-template-columns:minmax(0,1fr); column-gap:0; row-gap:28px; }
  .ec-hero-copy .ec-eyebrow { font-size:10px; margin-bottom:20px; }
  .ec-hero h1 { font-size:clamp(39px,8.4vw,55px); letter-spacing:-.05em; }
  .ec-hero-promise { font-size:23px; margin-top:20px!important; }
  .ec-desktop-break { display:none; }
  .ec-hero-lead { font-size:15px; }
  .ec-start-note { font-size:12px; }
  .ec-hero-aside { grid-column:1/-1; grid-row:2; }
  .ec-hero-media { grid-column:1/-1; grid-row:3; }
  .ec-hero-media > img { aspect-ratio:3/2; }
  .ec-hero .las-quiz__card { padding:24px 20px; }
  .ec-hero .las-quiz__step > legend { font-size:27px; }
  .ec-split > .ec-section-intro,.ec-split > :last-child,.ec-heading-row > div,.ec-heading-row > p,.ec-proof-grid .ec-review,.ec-mentor { grid-column:1/-1; }
  .ec-split { row-gap:36px; }
  .ec-heading-row { row-gap:22px; margin-bottom:32px; }
  .ec-heading-row > p { max-width:58ch; }
  .ec-section-intro > p:not(.ec-eyebrow) { max-width:58ch; margin-top:22px; }
  .ec-task > summary { grid-template-columns:28px minmax(0,1fr) 24px; column-gap:12px; padding-block:22px; }
  .ec-task-heading strong { font-size:23px; }
  .ec-task-heading > span { font-size:15px; }
  .ec-task-toggle { width:24px; }
  .ec-task-content dl { grid-template-columns:1fr; gap:20px; }
  .ec-task-content { padding:2px 0 26px 40px; }
  .ec-task-content dt { margin-bottom:6px; }
  .ec-task-check { margin-top:22px; }
  .ec-task-check > p { flex-basis:100%; }
  .ec-process li { grid-template-columns:28px minmax(0,1fr); gap:16px; }
  .ec-process h3 { font-size:23px; }
  .ec-tool-list > div { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:20px; }
  .ec-mentor { grid-template-columns:100px minmax(0,1fr); gap:20px; border-top:1px solid var(--ec-line); padding-top:28px; }
  .ec-mentor > img { width:100px; }
  .ec-author-story { margin-top:36px; row-gap:16px; }
  .ec-author-story > .ec-eyebrow,.ec-author-story > div { grid-column:1/-1; }
  .ec-review blockquote p { font-size:25px; }
  .ec-next { margin-top:40px; justify-content:flex-start; }
  .ec-price .s-button { font-size:14px; }
}
@media (max-width:390px) {
  .ec-hero h1 { font-size:37px; }
  .ec-page h2 { font-size:33px; }
  .ec-hero .p-contact-fields { grid-template-columns:1fr; }
  .ec-hero .p-contact-fields > .las-quiz__field + .las-quiz__field { margin-top:8px; }
  .ec-hero .las-quiz__card { padding:22px 16px; }
  .ec-task-content { padding-left:0; }
  .ec-tool-list > div { grid-template-columns:1fr; gap:12px; }
  .ec-mentor { grid-template-columns:80px minmax(0,1fr); gap:16px; }
  .ec-mentor > img { width:80px; }
  .ec-mentor h3 { font-size:22px; }
  .ec-review blockquote p { font-size:23px; }
}
@media (prefers-reduced-motion:reduce) {
  .ec-page * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
@media (forced-colors:active) {
  .ec-task-toggle { forced-color-adjust:none; color:ButtonText; }
  .ec-review,.ec-recognition,.ec-price,.ec-hero .las-quiz__card { border-color:CanvasText; }
}
