/* Shared reading rhythm. Component layouts still own their columns and artwork. */
:root {
  --text-body:1.0625rem;
  --text-label:.9375rem;
  --text-meta:.8125rem;
  --space-section:clamp(3.5rem,6vw,5.5rem);
  --space-heading:1.5rem;
  --space-group:2rem;
  --space-column:clamp(2rem,5vw,4.5rem);
  --gutter:clamp(1.25rem,3.35vw,3rem);
  --card-inset:2rem;
  --control-line:#72897c;
}
body { font-kerning:normal; text-rendering:optimizeLegibility; font-size:var(--text-body); }
.shell { width:min(1240px,calc(100% - var(--gutter)*2)); }
p,li,label,input,textarea,select,summary { letter-spacing:normal; }
h1,h2,h3,h4 { text-wrap:balance; }
.hero-message h1 { letter-spacing:-.045em; line-height:1.1; }
.section-heading h2,.plan-heading h2,.proof-heading h2,.path-heading h2,.faq h2,.session h2 {
  font-size:clamp(2.25rem,4.2vw,3.5rem); letter-spacing:-.035em; line-height:1.13; font-weight:750;
  margin-top:1rem;
}
.section,.roadmap-plan { padding-block:var(--space-section); }
.proof-section,.engagement-path,.session { padding-top:var(--space-section); }
.section-heading { margin-bottom:var(--space-group); }
.section-heading>p:last-child:not(.eyebrow),.hero-summary,.plan-heading>p:last-child,.path-heading>p:last-child {
  font-size:clamp(1rem,1.5vw,1.125rem); line-height:1.65; max-width:65ch;
}
.hero-summary,.section-heading>p:last-child:not(.eyebrow) { margin-top:var(--space-heading); }
.path-heading>p:last-child { margin-inline:auto; }
.eyebrow,.hero-message>.eyebrow,.proof-heading>.eyebrow,.form-heading .eyebrow,
.proof-category,.proof-contribution h4,.path-kicker,.path-output-label { font-size:var(--text-meta); line-height:1.5; letter-spacing:.1em; }
.team-grid,.session-grid,.faq { gap:var(--space-column); }
.founder-bio { padding:var(--card-inset); }
.founder-bio h3 { font-size:clamp(1.5rem,2.3vw,1.875rem); line-height:1.2; letter-spacing:-.03em; margin-top:0; }
.founder-bio>p:not(.eyebrow),.fit-list div>span,.faq>div>p:not(.eyebrow),.faq-list details>p,
.session-copy>p:not(.eyebrow),.session-agenda li { font-size:var(--text-body); line-height:1.65; }
.founder-bio>p:not(.eyebrow) { margin-top:1rem; max-width:46ch; }
.founder-contact { margin-top:1.5rem; padding-top:1.25rem; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; }
.founder-contact p { display:grid; gap:.25rem; font-size:var(--text-label); line-height:1.5; }
.founder-contact strong { color:var(--ink); }
.founder-contact .text-link { margin:0; }
.founder-bio .text-link,.fit>.text-link,.initiative-panel .text-link,.session-booking,
.faq-list summary,.form-button { font-size:var(--text-body); line-height:1.5; }
.fit-list { margin-top:1.5rem; }
.fit-list li { gap:1rem; padding-block:1.5rem; }
.fit-list strong { font-size:1.0625rem; line-height:1.5; letter-spacing:-.01em; }
.fit-note { max-width:min(100%,441px); font-size:var(--text-label); line-height:1.65; padding-top:1.25rem; }
.fit>.text-link { margin-top:1.5rem; }
.faq-list summary { padding-block:1.25rem; }
.faq-list details>p { padding:0 2rem 1.5rem 0; }
.session-copy { padding-top:0; }
.session-copy>p:not(.eyebrow) { max-width:43ch; margin-top:1.5rem; }
.session-agenda { margin-top:2rem; }
.session-agenda li { gap:1rem; padding-block:1rem; }
.session-agenda li span { font-size:var(--text-meta); line-height:1.7; }
.request-card { padding:var(--card-inset); }
.request-card>h3 { font-size:clamp(1.5rem,2.2vw,1.875rem); line-height:1.25; letter-spacing:-.025em; margin-top:1rem; }
.connection-note { font-size:var(--text-body); line-height:1.65; max-width:48ch; margin-top:1rem; }
.form-heading>span,.required-label,.field-note,.required-note,.form-privacy,
.optional-fields summary>span:not(.expand-icon),.footer-inner>p { font-size:var(--text-meta); line-height:1.6; }
.form-heading { align-items:baseline; flex-wrap:wrap; gap:.5rem 1rem; }
#lead-form,#request-draft { margin-top:1.5rem; }
.form-step>label,.field-pair label,.optional-content>label,.focus-areas legend,.focus-areas label,
.form-step>.consent,.optional-fields summary,.review-label { font-size:var(--text-label); line-height:1.5; }
.form-step input:not([type=checkbox]),.form-step textarea,.form-step select,
.form-step input::placeholder,.form-step textarea::placeholder { font-size:var(--text-body); line-height:1.5; }
.form-step input:not([type=checkbox]),.form-step select { min-height:3rem; }
.form-step textarea { min-height:9rem; }
.form-step>input,.field-pair { margin-bottom:1.25rem; }
.field-pair { gap:1rem; }
.field-note { margin-top:.5rem; margin-bottom:1.25rem; }
.optional-fields summary { min-height:3rem; flex-wrap:wrap; gap:.5rem; }
.focus-areas label { min-height:2rem; }
.form-privacy { margin-top:1.25rem; }
.form-privacy button { font-size:.875rem; }
.review-label { display:block; font-weight:800; margin-bottom:.5rem; }
#request-draft>p.review-note { font-size:var(--text-label); line-height:1.6; margin:0 0 1rem; }
.review-note strong,#sent-reply-email { overflow-wrap:anywhere; }
#draft-preview { display:block; width:100%; min-height:18rem; padding:1rem; resize:vertical; border:1px solid #a9bdb0; border-radius:6px; background:white; color:var(--ink); font:400 1rem/1.65 Manrope,sans-serif; }
.draft-actions { display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; margin-top:.5rem; }
.draft-actions button,.back-button { font-size:var(--text-label); line-height:1.5; min-height:2.75rem; }
.form-status,.session-context { font-size:var(--text-label); line-height:1.6; overflow-wrap:anywhere; }
.form-status:empty { margin:0; }
#email-fallback { margin-top:1.5rem; border-top:1px solid var(--line); padding-top:1rem; font-size:var(--text-label); line-height:1.6; }
#email-fallback a { display:inline-block; color:var(--green); text-decoration:underline; text-underline-offset:4px; padding-block:.5rem; }
#request-success { margin-top:2rem; padding-block:1rem; }
#request-success .check-circle { width:2.5rem; height:2.5rem; margin-bottom:1rem; }
#request-success h4 { font-size:1.5rem; line-height:1.3; letter-spacing:-.02em; }
#request-success p { margin-top:.75rem; font-size:1rem; line-height:1.65; }
button:disabled { cursor:wait; opacity:.65; }
.hero-note,.hero-experience+.shell>.offer-facts dd,.initiative-chooser-heading p,
.initiative-choice-copy>span,.workflow-inputs>span,.workflow-output>div>span,
.plan-term-label,.plan-unsure,.plan-fee-levels>summary,.path-step-copy>span { font-size:var(--text-label); line-height:1.5; }
.workflow .workflow-label { font-size:var(--text-label)!important; }
.demo-caption,.demo-page-number,.proof-notes>p,.proof-notes>small,.path-fees>div>p,
.plan-scope-note,.plan-fee-hint,.footer-inner>div { font-size:var(--text-meta); line-height:1.6; }
.path-title,.path-heading h2,.path-step-copy strong { font-family:var(--font); font-weight:750; letter-spacing:-.025em; }
.path-step-number { font-family:var(--font); font-size:.875rem; font-weight:600; font-variant-numeric:tabular-nums; }
.demo-heading h2 { letter-spacing:-.035em; }
.plan-outputs h3,.path-outputs h4,.proof-summary h3,.initiative-panel h3 { letter-spacing:-.025em; }
.path-duration,.plan-term-value,.proof-metric { font-variant-numeric:lining-nums tabular-nums; }
@media(max-width:760px) {
  .team-grid,.session-grid,.faq { gap:2rem; }
  .founder-bio,.request-card { padding:1.5rem; }
  .session { padding-bottom:3rem; }
.path-step-copy>span { font-size:.875rem; }
  .hero-message h1 { letter-spacing:-.04em; }
  .session-booking { max-width:none; }
  .faq-list details>p { padding-right:0; }
}
@media(max-width:400px) {
  .founder-bio,.request-card { padding:1.25rem; }
  .field-pair { grid-template-columns:1fr; gap:1.25rem; }
  .form-heading { align-items:flex-start; }
  .form-heading>span { margin-left:auto; }
  .founder-contact { align-items:flex-start; }
}

/* Optional video guidance: one overview, then only verified answer chapters. */
.faq-video-overview { display:inline-flex; align-items:center; gap:.75rem; width:fit-content; max-width:100%; min-height:2.75rem; margin-top:1.5rem; padding-block:.25rem; color:var(--green); font-size:.9375rem; line-height:1.5; font-weight:700; }
.faq-video-play { display:grid; place-items:center; flex:none; width:2.25rem; height:2.25rem; border:1px solid #c7ae74; border-radius:50%; background:#efe5ce; transition:background .2s; }
.faq-video-play svg { width:1rem; height:1rem; fill:currentColor; }
.faq-video-external { color:var(--mid); font-size:1.125rem; }
.faq-video-overview:hover .faq-video-play { background:var(--gold); }
.faq-video-overview>span:nth-child(2) { text-decoration:underline; text-decoration-color:#aebfb5; text-underline-offset:.3em; text-decoration-thickness:1px; }
.faq-video-chapter { display:flex; align-items:center; gap:.5rem; width:fit-content; max-width:100%; min-height:2.75rem; margin-top:-1rem; margin-bottom:1rem; padding-block:.5rem; color:var(--green); font-size:.875rem; line-height:1.5; font-weight:700; }
.faq-video-chapter svg { width:.875rem; height:.875rem; fill:currentColor; flex:none; }
.faq-video-chapter>span:first-of-type { text-decoration:underline; text-decoration-color:#aebfb5; text-underline-offset:.25em; }
.faq-video-chapter:hover,.faq-video-overview:hover { color:#276552; }

/* Explicit component rules prevent older, more specific microtype from winning. */
.trust-strip>.eyebrow,.initiative-panel .eyebrow,.scheduler-header .eyebrow {
  font-size:var(--text-meta); line-height:1.5; letter-spacing:.1em;
}
.trust-strip>.eyebrow { color:var(--muted); max-width:46rem; margin-inline:auto; }
.plan-output-number { color:var(--muted); }
.form-step input::placeholder,.form-step textarea::placeholder { color:var(--muted); opacity:1; }
.form-step input:not([type=checkbox]),.form-step textarea,.form-step select,#draft-preview {
  border-color:var(--control-line);
}
.form-step input:not([type=checkbox]):focus-visible,.form-step textarea:focus-visible,
.form-step select:focus-visible,#draft-preview:focus-visible { outline-color:var(--green); outline-offset:3px; }
.hero-action,.plan-action .button,.path-next,.demo-next { font-weight:700; }
.hero-action { font-size:1rem; }
.plan-action .button { font-size:var(--text-label); }
.demo-invitation,.demo-heading>div>p,.demo-caption a,.path-fees>div>p,
.proof-quote footer,.footer-inner>div,.scheduler-footer a { font-size:.875rem; line-height:1.5; }
.footer-inner button { font-size:inherit; }
.demo-caption { flex-wrap:wrap; gap:.5rem 1rem; }
.demo-caption a { min-height:2.75rem; }
.demo-invitation { max-width:9rem; }
.initiative-choice-copy strong { font-size:var(--text-label); line-height:1.4; }
.initiative-choice-copy>span { font-size:.875rem; line-height:1.5; margin-top:.375rem; }
.initiative-tabs button { min-height:6rem; padding:1.25rem; }
.initiative-panel p:not(.eyebrow),.plan-outputs p,.path-outputs p,.path-phase-summary>p:last-child {
  font-size:var(--text-body); line-height:1.6;
}
.workflow-output strong { font-size:1.125rem; line-height:1.4; }
.path-fees dl>div { font-size:var(--text-label); }
.path-next { font-size:var(--text-label); }
.plan-level-grid label { border-color:var(--control-line); }
.proof-case { padding:var(--card-inset); border-color:#c3cec5; }
.proof-summary { min-height:0; }
.proof-summary h3,.plan-outputs h3,.path-outputs h4 { font-weight:750; line-height:1.3; }
.proof-notes>p { font-size:.625rem; line-height:1.65; }
.path-panel { padding:var(--card-inset) var(--card-inset) 0; }
.initiative-panel { padding:var(--card-inset); gap:var(--space-group); }
.faq-list summary { font-size:1.125rem; font-weight:700; min-height:4.5rem; }
.faq-list details>p { max-width:62ch; line-height:1.65; }
.faq>div>p:not(.eyebrow) { max-width:28ch; }
.team,.initiatives { padding-bottom:clamp(2rem,4vw,3rem); }
.roadmap-plan,.faq { padding-top:clamp(3rem,5.3vw,4rem); }
#privacy-dialog p:not(.eyebrow) { font-size:var(--text-body); line-height:1.65; }
#scheduler-dialog .scheduler-loading { font-size:var(--text-label); line-height:1.5; }
#scheduler-dialog .scheduler-footer p { font-size:.875rem; line-height:1.5; }
.scheduler-footer { gap:.5rem 1rem; }

/* Keep navigation readable instead of shrinking it to fit intermediate widths. */
.site-header .brand { width:clamp(11.25rem,16.5vw,12.5625rem); }
.header-inner { gap:2rem; }
#main-nav { gap:1.5rem; }
#main-nav>a:not(.button) { font-size:var(--text-label); font-weight:600; }
#main-nav>.button { font-size:var(--text-label); line-height:1.5; }
.site-header .button-small { font-size:var(--text-label); min-height:3rem; padding:.75rem 1.25rem; gap:1.25rem; font-weight:700; }
@media(max-width:950px) {
  .header-inner { height:4.5rem; }
  .menu-toggle { display:flex; align-items:center; gap:.75rem; min-height:2.75rem; padding:.5rem 0 .5rem 1rem; border:0; background:transparent; font-size:var(--text-label); font-weight:700; }
  .menu-toggle span { font-size:1.5rem; font-weight:400; line-height:1; }
  #main-nav { display:none; position:absolute; top:100%; left:0; right:0; padding:1.5rem var(--gutter); background:var(--paper); border-bottom:1px solid var(--line); box-shadow:0 10px 18px #0a3b3210; }
  #main-nav.is-open { display:flex; flex-direction:column; align-items:stretch; gap:0; }
  #main-nav>a:not(.button) { padding:.875rem 0; font-size:1rem; }
  #main-nav>.button { margin-top:.75rem; }
}
@media(max-width:760px) {
  :root { --card-inset:1.5rem; }
  .founder-bio,.request-card { padding:var(--card-inset); }
  .team,.initiatives { padding-bottom:2rem; }
  .roadmap-plan,.faq { padding-top:3rem; }
  .initiative-tabs button { padding:1rem; }
  .plan-termbar { padding:var(--card-inset); }
  .path-step-copy>span { font-size:.875rem; }
  .path-panel-head { gap:1.5rem; }
  .path-heading h2 { max-width:20ch; margin-inline:auto; }
}
@media(max-width:450px) {
  .demo-heading { flex-wrap:wrap; align-items:flex-start; gap:.5rem 1rem; }
  .demo-invitation { max-width:none; padding-bottom:0; }
  .plan-termbar>div { min-width:0; }
  .plan-termbar>div+div { padding-left:1rem; }
  .plan-termbar>.plan-action { padding-left:0; }
  .plan-term-label { font-size:.875rem; }
  .plan-level-grid label { min-height:3.5rem; }
  .faq-list summary { font-size:1.0625rem; }
  .initiative-tabs button { padding:.875rem .75rem; gap:.5rem; }
}
@media(max-width:370px) {
  :root { --gutter:1rem; --card-inset:1.25rem; }
  .founder-bio,.request-card { padding:var(--card-inset); }
}

/* Larger key headings retain their desktop scale and ease down on narrow phones. */
#results-heading,#initiatives-heading { font-size:clamp(2.625rem,4.2vw,3.5rem); }
.hero-message>.eyebrow,.trust-strip>.eyebrow,.proof-heading>.eyebrow { font-size:.75rem; }
@media(max-width:600px) {
  #results-heading,#initiatives-heading { font-size:clamp(2.25rem,7vw,2.625rem); }
}

/* Let the longer demo title and its caption each use the header width. */
.demo-heading { display:block; }
.demo-invitation { max-width:none; margin-top:.5rem; padding-bottom:0; }
.demo-invitation svg { display:none; }

@media(max-width:370px) {
  .hero-experience+.shell>.offer-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero-experience+.shell>.offer-facts>div:last-child { grid-column:1/-1; border-left:0; border-top:1px solid var(--line); padding:12px 0 0; }
}

/* Keep the FAQ invitation secondary and let the longer fee note wrap naturally. */
.faq>div>p:not(.eyebrow) { font-size:15px; }
.plan-fee-levels summary { align-items:flex-start; gap:16px 24px; }
.plan-fee-levels summary>span:first-child { flex-shrink:0; }
.plan-fee-hint { max-width:65ch; }

/* A compact, swipeable team row follows the session CTA. */
.session-copy,.request-card { min-width:0; }
.principals { margin-top:32px; }
.principals-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:14px; }
.principals-heading h3 { color:var(--paper); font-size:17px; line-height:1.5; letter-spacing:0; }
.principals-controls { display:flex; gap:8px; }
.principals-controls[hidden] { display:none; }
.principals-controls button { width:44px; height:44px; padding:0; display:grid; place-items:center; background:transparent; border:1px solid #7d9f92; border-radius:50%; color:var(--paper); font-size:23px; line-height:1; }
.principals-controls button:hover:not(:disabled) { background:#245d50; }
.principals-controls button:disabled { opacity:.4; cursor:default; }
.principal-track { position:relative; display:grid; grid-auto-flow:column; grid-auto-columns:calc(100% - 32px); gap:12px; list-style:none; margin:0; padding:2px 2px 12px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#7d9f92 transparent; }
.principal-card { display:flex; align-items:center; gap:16px; padding:20px; min-height:140px; min-width:0; background:#164d41; border:1px solid #507d6f; border-radius:10px; scroll-snap-align:start; scroll-snap-stop:always; }
.principal-card>img { width:76px; height:76px; flex-shrink:0; border-radius:50%; object-fit:cover; object-position:center 25%; background:var(--sage); }
.principal-card h4 { font-size:18px; line-height:1.35; font-weight:750; color:var(--paper); margin:0 0 6px; letter-spacing:0; }
.principal-card p { font-size:14px; line-height:1.5; color:#d1e2d9; }
.principal-track:focus-visible,.principals-controls button:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
@media(min-width:1101px) {
  .principal-track { grid-auto-columns:calc((100% - 12px)/2); }
  .principal-card { flex-direction:column; align-items:flex-start; gap:12px; }
}
@media(max-width:370px) {
  .principal-card { padding:16px; gap:12px; }
  .principal-card>img { width:60px; height:60px; }
}

/* Credential marks stay small and keep their own proportions beside readable text. */
.principal-card>div { min-width:0; }
.principal-card h4 { text-wrap:pretty; }
.principal-credentials { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:12px; color:#d1e2d9; font-size:12px; line-height:1.5; }
.principal-logo { display:inline-flex; align-items:center; justify-content:center; min-height:30px; padding:5px 7px; border-radius:3px; background:#fff; }
.principal-logo img { display:block; width:auto; max-width:90px; height:20px; object-fit:contain; }
.principal-logo-mit img { width:38px; }
.principal-logo-google img { width:48px; }
.principal-logo-meta img { width:52px; }
.principal-experience { gap:6px; }
/* A real, anonymized document excerpt takes the place of the hero demo. */
.work-sample { margin:0; min-width:0; background:var(--green); color:var(--white); border:1px solid #376155; border-radius:12px; padding:24px 12px 0; box-shadow:0 18px 40px #123e3217; }
.work-sample-header { padding:0 16px 20px; }
.work-sample-header .eyebrow { color:var(--gold); font-size:11px; }
.work-sample-header h2 { font-size:clamp(26px,2.5vw,34px); line-height:1.2; margin-top:12px; letter-spacing:-.035em; }
.work-sample-header>p:last-child { font-size:14px; line-height:1.55; margin-top:12px; color:#d1e2d9; }
.work-sample-paper { background:var(--paper); color:var(--ink); border-radius:6px; padding:20px 22px; }
.work-sample-label { color:var(--mid); font-size:11px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; padding-bottom:12px; }
.work-sample-rows { margin:0; padding:0; list-style:none; }
.work-sample-rows li { padding:12px 0; border-top:1px solid var(--line); display:grid; grid-template-columns:104px minmax(0,1fr); gap:16px; }
.work-sample-rows li>span { color:var(--mid); font-size:11px; line-height:1.5; font-weight:750; }
.work-sample-rows li>p { font-size:14px; line-height:1.5; color:var(--ink); }
.work-sample-caption { border-top:1px solid var(--line); padding-top:14px; margin-top:2px; color:var(--muted); font-size:11px; line-height:1.5; }
.work-sample-link { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:54px; padding:12px 16px; color:var(--white); font-size:13px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.work-sample-link span { font-size:22px; }
.work-sample-link:focus-visible { outline-color:var(--gold); outline-offset:2px; }
.proof-cases { grid-auto-rows:auto; }
.proof-case-care { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); column-gap:48px; }
.proof-case-care .proof-category,.proof-case-care .proof-care-name,.proof-case-care .proof-summary { grid-column:1; }
.proof-care-name { font-size:clamp(30px,3.6vw,46px); font-weight:800; letter-spacing:-.04em; line-height:1.15; margin-block:20px 14px; }
.proof-case-care .proof-summary { min-height:0; }
.proof-case-care .proof-contribution { grid-column:2; grid-row:1/4; align-self:center; margin-top:0; }
.proof-case-care .case-study-link { grid-column:1/-1; }
.investment-standard { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:20px 48px; padding:32px 0; margin-top:16px; }
.investment-standard h3 { font-size:22px; line-height:1.35; letter-spacing:-.02em; color:var(--white); }
.investment-standard p { color:var(--white); font-size:18px; line-height:1.6; }
.investment-standard p+p { font-size:14px; line-height:1.6; color:#c1d5c9; margin-top:12px; }
#privacy-dialog.privacy-notice { padding:0; }
#privacy-dialog .case-study-toolbar h2 { margin:0; font-size:20px; line-height:1.3; }
#privacy-dialog .close-dialog { position:static; }
#privacy-dialog .privacy-updated { margin-top:0; color:var(--muted); font-size:13px; }
#privacy-dialog .case-study-body>section { margin-top:24px; }
#privacy-dialog a { overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:3px; }
@media(max-width:950px) {
  .work-sample-rows li { grid-template-columns:1fr; gap:4px; }
}
@media(max-width:780px) {
  .proof-case-care { display:flex; }
  .proof-case-care .proof-contribution { margin-top:24px; }
  .investment-standard { grid-template-columns:1fr; gap:16px; }
}
@media(max-width:650px) {
  .work-sample { padding:20px 10px 0; }
  .work-sample-header { padding-inline:12px; }
  .work-sample-paper { padding:18px; }
  .work-sample-header h2 { font-size:28px; }
}


/* Service-specific working formats; these are structures, not client results. */
.initiative-panel { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:start; }
.initiative-explanation,.service-samples { min-width:0; }
.initiative-panel .initiative-deliverable { margin-top:1.5rem; padding-top:1rem; border-top:1px solid #b4cbbd; }
.initiative-panel .initiative-deliverable h4 { font-size:.875rem; line-height:1.5; letter-spacing:0; font-weight:750; }
.initiative-panel .initiative-deliverable p { margin-top:.375rem; }
.initiative-panel p.service-example-label { margin:0 0 .75rem; max-width:none; font-size:.75rem; line-height:1.5; color:var(--muted); }
.service-sample { margin:0; padding:1.25rem; background:var(--paper); border:1px solid #b4c5bb; border-radius:.5rem; min-width:0; }
.service-sample[hidden] { display:none!important; }
.service-sample figcaption { padding-bottom:1rem; border-bottom:1px solid var(--line); }
.service-sample figcaption>span { display:block; font-size:.75rem; line-height:1.5; color:var(--mid); }
.service-sample figcaption>strong { display:block; margin-top:.375rem; font-size:1.125rem; font-weight:750; line-height:1.4; letter-spacing:-.02em; }
.initiative-panel .service-sample p.service-sample-note { margin:1rem 0 0; max-width:none; font-size:.8125rem; line-height:1.55; color:var(--muted); }
.service-funnel { padding:0; margin:1rem 0 0; list-style:none; }
.service-funnel li { display:flex; gap:.75rem; align-items:flex-start; position:relative; padding:0 0 1rem; }
.service-funnel li:last-child { padding-bottom:0; }
.service-funnel li:not(:last-child)::after { content:""; position:absolute; left:.75rem; top:1.75rem; bottom:.125rem; width:1px; background:#abc4b5; }
.service-funnel li>span { flex:none; width:1.5rem; height:1.5rem; display:grid; place-items:center; border-radius:50%; background:var(--green); color:var(--paper); font-size:.625rem; font-variant-numeric:tabular-nums; }
.service-funnel strong,.service-submission-list strong { display:block; font-size:.9375rem; line-height:1.5; font-weight:750; }
.service-funnel small,.service-submission-list small { display:block; font-size:.8125rem; line-height:1.5; color:var(--muted); margin-top:.125rem; }
.service-handoff-table { width:100%; border-collapse:collapse; table-layout:fixed; margin-top:.25rem; font-size:.875rem; line-height:1.5; }
.service-handoff-table th,.service-handoff-table td { text-align:left; vertical-align:top; padding:.875rem 0; border-bottom:1px solid var(--line); overflow-wrap:break-word; }
.service-handoff-table th:first-child { width:42%; padding-right:.875rem; }
.service-handoff-table thead th { color:var(--muted); font-weight:500; font-size:.75rem; }
.service-handoff-table tbody th { font-weight:700; }
.service-handoff-table td { color:var(--muted); }
.service-workflow-steps { padding-top:.25rem; }
.service-workflow-steps>div { padding:.875rem 0; border-bottom:1px solid var(--line); }
.service-workflow-steps>div:last-child { padding-bottom:0; border-bottom:0; }
.service-workflow-steps>div>strong { display:block; font-size:.9375rem; line-height:1.5; font-weight:750; margin-bottom:.375rem; }
.initiative-panel .service-workflow-steps p { margin:.25rem 0 0; max-width:none; font-size:.8125rem; line-height:1.5; }
.service-workflow-steps p>span { display:block; font-size:.6875rem; font-weight:750; color:var(--mid); }
.service-model-inputs { font-size:.875rem; line-height:1.5; }
.service-model-inputs>div { display:grid; grid-template-columns:4.5rem minmax(0,1fr); gap:.75rem; padding:.875rem 0; border-bottom:1px solid var(--line); }
.service-model-inputs dt { font-weight:750; }
.service-model-inputs dd { color:var(--muted); }
.service-model-result { margin-top:1rem; padding:1rem; background:var(--green); color:var(--paper); border-radius:.25rem; }
.service-model-result>span { display:block; font-size:.8125rem; line-height:1.5; color:#c6dacf; }
.service-model-result>strong { display:block; margin:.5rem 0; font-size:.9375rem; line-height:1.55; font-weight:700; }
.service-submission-list { margin:0; padding:0; list-style:none; }
.service-submission-list li { display:flex; align-items:flex-start; gap:.75rem; padding:.875rem 0; border-bottom:1px solid var(--line); }
.service-submission-list li:last-child { padding-bottom:0; border-bottom:0; }
.service-submission-list li>span { flex:none; width:.875rem; height:.875rem; border:1px solid var(--control-line); margin-top:.25rem; }
.service-campaign-brief>section { padding:1rem 0; border-bottom:1px solid var(--line); }
.service-campaign-brief>section:last-child { border-bottom:0; padding-bottom:0; }
.initiative-panel .service-campaign-brief h4 { margin:0; font-size:1rem; line-height:1.5; letter-spacing:-.015em; font-weight:750; }
.initiative-panel .service-campaign-brief p { max-width:none; margin:.375rem 0 0; font-size:.875rem; line-height:1.55; }
@media(max-width:850px) {
  .initiative-panel { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:1.5rem; }
  .service-sample { padding:1rem; }
}
@media(max-width:650px) {
  .initiative-panel { grid-template-columns:minmax(0,1fr); }
  .service-samples { border-top:1px solid #b4cbbd; padding-top:1.25rem; }
  .service-sample { padding:1.125rem; }
  .initiative-panel .text-link { width:100%; align-items:flex-start; text-align:left; }
}
