/* Hallmark · campaign poster / editorial chapters · Edumax design.md · designed-as-app */
.em-service-campaign{padding-bottom:0}
.em-service-campaign .em-breadcrumb{margin-bottom:var(--space-lg)}
.edumax-landing .em-service-campaign .em-service-campaign-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0;align-items:stretch;position:relative;isolation:isolate;overflow:clip;border-radius:var(--radius-hero);background:var(--color-dark);color:var(--color-on-dark)}
.em-service-campaign .em-service-hero-copy{position:relative;z-index:2;padding:clamp(var(--space-lg),4vw,var(--space-xl));align-self:center;min-width:0}
.edumax-landing .em-service-campaign .em-page-eyebrow{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-dark-muted);font-size:var(--text-xs);font-weight:650;letter-spacing:.07em;text-transform:uppercase;margin-bottom:var(--space-lg)}
.em-service-campaign .em-page-eyebrow::before{content:"";height:3px;width:1.5rem;background:var(--color-accent);flex:none}
.edumax-landing .em-service-campaign h1{font-size:clamp(2.75rem,4.5vw,4.5rem);font-weight:750;line-height:1.06;letter-spacing:-.06em;max-width:15ch;margin:0 0 var(--space-lg);color:var(--color-on-dark);overflow-wrap:normal;text-wrap:balance}
.em-service-campaign h1>span{display:block;text-decoration:underline;text-decoration-color:var(--color-accent);text-decoration-thickness:4px;text-underline-offset:.13em}
.edumax-landing .em-service-campaign .em-service-lead{color:var(--color-on-dark);font-size:var(--text-xl);font-weight:600;line-height:1.35;max-width:32ch;margin:0 0 var(--space-sm)}
.edumax-landing .em-service-campaign .em-service-intro{color:var(--color-dark-muted);font-size:var(--text-md);line-height:1.6;max-width:44ch}
.em-service-campaign .em-service-actions{gap:var(--space-md);margin-top:var(--space-lg)}
.edumax-landing .em-service-campaign .em-service-actions .em-text-link{color:var(--color-on-dark)}
.em-service-campaign .em-service-hero-visual{position:relative;min-width:0;min-height:39rem;padding:var(--space-lg) var(--space-lg) var(--space-lg) 0;align-self:stretch}
.em-service-campaign .em-service-hero-visual::before{content:"";position:absolute;z-index:-1;inset:12% -12% 14% 8%;background:var(--color-accent);border-radius:var(--radius-hero);transform:rotate(-7deg)}
.em-service-campaign .em-service-hero-visual figure{position:relative;isolation:isolate;margin:0;width:100%;height:100%;min-height:36rem;overflow:clip;border:0;border-radius:var(--radius-media);background:var(--color-ink)}
.em-service-campaign .em-service-hero-visual figure::after{content:"";position:absolute;inset:40% 0 0;z-index:1;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--color-dark) 85%,transparent));pointer-events:none}
.em-service-campaign .em-service-hero-visual figure>img{display:block;width:100%;height:100%;position:absolute;inset:0;aspect-ratio:auto;object-fit:cover;object-position:center;translate:0 var(--service-photo-y,0px);scale:1.06;border-radius:0}
.em-service-campaign .em-service-hero-visual figcaption{position:absolute;z-index:2;inset:auto var(--space-md) var(--space-lg);padding:0;border:0;background:none;color:var(--color-on-dark);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs);text-shadow:0 2px 16px color-mix(in srgb,var(--color-dark) 35%,transparent)}
.em-service-campaign figcaption>span{font-size:var(--text-sm);line-height:1.4;max-width:28ch}
.em-service-campaign figcaption>strong{font-family:var(--font-display);font-size:clamp(2.25rem,4vw,4.25rem);font-weight:800;line-height:1;letter-spacing:-.06em;overflow-wrap:anywhere}
.em-service-campaign-ribbon{padding:var(--space-lg) 0;border-bottom:1px solid var(--color-rule)}
.em-service-campaign-ribbon .em-service-hero-note{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:var(--space-sm);max-width:none;margin:0;padding:0;border:0;border-radius:0;background:none;align-items:center}
.em-service-campaign-ribbon .em-service-hero-note>.em-icon{grid-row:auto;background:var(--color-paper);border:1px solid var(--color-rule)}
.em-service-campaign-ribbon .em-service-hero-note strong{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.025em}
.em-service-campaign-ribbon .em-service-hero-note p{max-width:80ch}
.em-service-campaign-body{counter-reset:campaign-chapter}
.em-service-campaign-body .em-service-section{counter-increment:campaign-chapter;padding-block:var(--space-3xl)}
.em-service-campaign-body .em-service-section-head{position:relative;padding-top:var(--space-lg);border-top:1px solid var(--color-rule);max-width:none;margin-bottom:var(--space-xl)}
.em-service-campaign-body .em-service-section-head::before{content:counter(campaign-chapter,decimal-leading-zero);display:block;margin-bottom:var(--space-md);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--color-accent);white-space:nowrap}
.edumax-landing .em-content .em-service-campaign-body h2{font-size:clamp(2rem,3.7vw,3.5rem);line-height:1.1;letter-spacing:-.05em;max-width:21ch}
.em-service-campaign-body .em-service-section-head>p{max-width:62ch;margin-top:var(--space-md)}
.em-service-campaign-body .em-service-fit-grid{gap:var(--space-md)}
.em-service-campaign-body .em-service-fit{position:relative;min-width:0;padding:var(--space-lg);border:1px solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-paper);transition:border-color var(--dur-short),box-shadow var(--dur-short)}
.em-service-campaign-body .em-service-fit>.em-icon{width:3rem;height:3rem;margin-bottom:var(--space-lg)}
.em-service-campaign-body .em-service-fit h3{font-size:var(--text-xl)}
.em-service-campaign-body .em-service-fit p{font-size:var(--text-md)}
.em-service-campaign-body .em-service-process{max-width:none}
.em-service-campaign-body .em-service-stage{border-bottom:1px solid var(--color-rule);padding-block:var(--space-md) var(--space-xl);margin-bottom:var(--space-lg)}
.em-service-campaign-body .em-service-stage h3{font-size:clamp(1.4rem,2.2vw,2rem);letter-spacing:-.04em}
.em-service-campaign-body .em-service-process::before,.em-service-campaign-body .em-service-process::after{display:none}
.em-service-campaign-body .em-service-stage-icon{background:var(--color-surface)}
.em-service-campaign-body .em-service-prepare{border-top:3px solid var(--color-accent);padding:var(--space-xl)}
.em-service-campaign-body .em-service-consultant{position:relative;isolation:isolate;padding:var(--space-xl);border-radius:var(--radius-hero);background:var(--color-dark);color:var(--color-on-dark);overflow:clip}
.edumax-landing .em-content .em-service-campaign-body .em-service-consultant :is(h2,h3){color:var(--color-on-dark)}
.edumax-landing .em-content .em-service-campaign-body .em-service-consultant p{color:var(--color-dark-muted)}
.edumax-landing .em-service-campaign-body .em-service-consultant .em-text-link{color:var(--color-on-dark)}
.em-service-campaign-body .em-service-overview-card{border-radius:var(--radius-card)}
@media(hover:hover){.em-service-campaign-body .em-service-fit:hover{border-color:var(--color-accent);box-shadow:0 8px 24px color-mix(in srgb,var(--color-dark) 7%,transparent)}}
@media(max-width:1100px){.edumax-landing .em-service-campaign h1{font-size:clamp(2.5rem,5vw,4rem)}.em-service-campaign .em-service-hero-visual{min-height:36rem}.em-service-campaign .em-service-hero-visual figure{min-height:32rem}.em-service-campaign figcaption>strong{font-size:2.5rem}}
@media(max-width:767px){
 .edumax-landing .em-service-campaign .em-service-campaign-stage{grid-template-columns:minmax(0,1fr)}
 .em-service-campaign .em-service-hero-copy{padding:var(--space-lg) var(--space-md)}
 .edumax-landing .em-service-campaign h1{font-size:clamp(2.5rem,10vw,3.75rem);max-width:15ch}
 .edumax-landing .em-service-campaign .em-service-lead{font-size:var(--text-lg)}
 .em-service-campaign .em-service-hero-visual{min-height:22rem;padding:0 var(--space-md) var(--space-md)}
 .em-service-campaign .em-service-hero-visual figure{min-height:23rem}
 .em-service-campaign .em-service-hero-visual figure>img{translate:none;scale:1.02}
 .em-service-campaign .em-service-hero-visual::before{inset:10% -10% 15% 10%}
 .em-service-campaign .em-service-actions{align-items:flex-start;flex-direction:column;gap:var(--space-sm)}
 .em-service-campaign .em-service-actions .em-button{width:100%;justify-content:center;white-space:normal}
 .em-service-campaign .em-service-actions .em-text-link{min-height:44px}
 .em-service-campaign figcaption>strong{font-size:clamp(2rem,10vw,3rem)}
 .em-service-campaign-body .em-service-section{padding-block:var(--space-xl)}
 .em-service-campaign-body .em-service-section-head{margin-bottom:var(--space-lg)}
 .em-service-campaign-body .em-service-fit-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-md)}
 .em-service-campaign-body .em-service-fit{display:block;padding:var(--space-md)}
 .em-service-campaign-body .em-service-fit>.em-icon{margin-bottom:var(--space-md)}
 .em-service-campaign-body .em-service-fit p{grid-column:auto}
 .em-service-campaign-body .em-service-prepare,.em-service-campaign-body .em-service-consultant{padding:var(--space-lg)}
}
@media(prefers-reduced-motion:reduce){.em-service-campaign .em-service-hero-visual figure>img{translate:none;scale:1}.em-service-campaign-body *{transition:none!important}}
/* Override the legacy service lead's forced ink color on the charcoal campaign. */
.edumax-landing .em-service-campaign .em-service-hero-copy>.em-service-lead{color:var(--color-on-dark)!important}
.edumax-landing .em-service-campaign .em-service-hero-copy>.em-service-intro{color:var(--color-dark-muted)}
.em-service-campaign .em-service-actions .em-text-link{max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
.em-service-campaign .em-service-actions .em-text-link>.em-icon{flex:none}
.em-service-campaign-body .em-service-consultant>img{display:none}
.em-service-campaign-body .em-service-consultant{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:767px){.em-service-campaign-body .em-service-consultant{grid-template-columns:minmax(0,1fr)}}
