/* Shared About components and the saved section-header template. */
.eac-consolidated .eab-section>.eab-eyebrow,.eac-consolidated .eac-section-header>.eab-eyebrow,.eac-consolidated .eab-practice>div>.eab-eyebrow,.eac-consolidated .eab-delivery-image .eab-eyebrow{color:#efff00}
.eac-section-header .eab-split{align-items:center}.eac-section-header .eab-split>p:empty{display:none}
.eac-service-list,.eac-type-grid,.eac-deliver .eab-delivery-grid,.eac-phases .er32-phases{margin-top:48px}
.eac-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.eac-type-tile{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #555;padding:32px 24px;min-height:150px;font:300 30px/1.2 'Core Serif N Web',serif;color:white;text-decoration:none}
.eac-type-tile:hover,.eac-type-tile:focus-visible{background:#efff00;color:#000}
.eac-summary{margin-top:36px!important}.eac-summary a,.eac-home-link a,.eac-detail-link a,.eac-consolidated .eab-delivery a{color:#efff00;text-decoration:none}
.eac-home-link{margin:32px 0 0;font:100 18px/1.45 'GT America',sans-serif}
.eac-detail-link{font:100 18px/1.45 'GT America',sans-serif}
.eac-thinking{background:#000;color:#fff;border-top:1px solid #333;border-bottom:1px solid #333}
.eac-thinking .eac-chain-caption{margin-top:36px}.eac-thinking .eab-chain{color:#efff00}
.eac-thought-content{margin-top:72px}.eac-thought-content>h3{margin:40px 0 28px}.eac-pxd{margin-top:48px;align-items:center}
.eac-consolidated .er30-sequence{list-style:none;margin:0;padding:0}
.eac-consolidated .er30-sequence p{margin-top:20px}.eac-consolidated .er30-capabilities{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:24px 40px}
.eac-consolidated .er30-capabilities li{border-top:1px solid #333;padding-top:24px;font:100 18px/1.45 'GT America',sans-serif}
.eac-consolidated .er32-phases{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}
.eac-consolidated .er32-phases li{border-top:1px solid #333;padding-top:24px}.eac-consolidated .er32-phase-heading{display:flex;gap:16px;align-items:center;margin:20px 0}.eac-consolidated .er32-phase-heading svg{width:48px;height:48px;flex-shrink:0}.eac-consolidated .er32-phases h3{font-size:30px}.eac-consolidated .er32-phases p{font-size:18px}
html body.er30-active .er27-overlay-title .elementor-heading-title{font:400 32px/1.3 'Core Serif N Web',serif}
#how-we-think,#how-we-deliver,#how-a-project-runs{scroll-margin-top:90px}
@media(max-width:1100px){.eac-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eac-consolidated .er32-phases{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.eac-type-grid{gap:12px}.eac-type-tile{font-size:21px;line-height:1.2;padding:20px 12px;min-height:130px;gap:8px;overflow-wrap:anywhere}.eac-type-tile>span:last-child{font-size:20px}.eac-consolidated .er32-phases,.eac-consolidated .er30-capabilities{grid-template-columns:1fr}.eac-section-header .eab-split{gap:24px}.eac-service-list,.eac-type-grid,.eac-deliver .eab-delivery-grid,.eac-phases .er32-phases{margin-top:32px}.eac-thought-content{margin-top:48px}.eac-consolidated .er30-sequence{grid-template-columns:1fr!important}.eac-consolidated .eab-delivery-grid{grid-template-columns:1fr}}
/* Keep long taxonomy names intact in the required two-column phone grid. */
@media(max-width:767px){.eac-type-tile{flex-direction:column;align-items:stretch;font-size:18px;overflow-wrap:normal;min-height:154px}.eac-type-tile>span:last-child{align-self:flex-end;margin-top:auto}}
/* Legacy resource-card margins must be deducted from their full-width wrapper. */
@media(min-width:768px){body.page-id-4257 .elementor-top-column>.elementor-widget-wrap,body.page-id-4010 .elementor-top-column>.elementor-widget-wrap{max-width:calc(100% - 16px)}}
.er29-statement-body a{color:#efff00;text-decoration:none}.er29-statement-body a:hover,.er29-statement-body a:focus-visible{text-decoration:underline}
/* Arrows belong in the grid gaps, not on top of the preceding word. */
@media(min-width:768px){.eac-thinking .eab-chain li:not(:last-child):after{right:-30px}}
@media(min-width:768px) and (max-width:1000px){.eac-thinking .eab-chain li{font-size:26px}.eac-thinking .eab-chain li:not(:last-child):after{font-size:24px}}
/* October 14 review: shared type, grid and restored yellow thinking panel. */
html body.er30-active .eab-eyebrow,html body.er30-active .eab-image-caption,html body.er30-active .eab-slide figcaption{font-family:'GT America',sans-serif!important;font-weight:700!important}
.eac-thinking{padding-top:0;border-top:0}
.eac-yellow-panel{background:#efff00;color:#000;margin:0 -40px;padding:64px 40px}
html body.er30-active .eac-yellow-panel :is(h2,p,li),html body.er30-active .eac-yellow-panel .eab-eyebrow{color:#000!important}
.eac-yellow-panel .eab-split{display:block}.eac-yellow-panel .eab-split h2{max-width:950px;margin-bottom:30px}.eac-yellow-panel .eab-split>p{max-width:1050px}
html body.er30-active .er27-hero-support{width:calc(100% - 80px)!important;max-width:none!important}
html body.er30-active .er27-hero-support .elementor-heading-title{max-width:none!important}
html body.er30-active .er27-intro>.elementor-container{column-gap:24px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
html body.er30-active .er27-service h3,html body.er30-active .er27-service h3 a{font:400 32px/1.18 'Core Serif N Web',serif!important;color:#fff}
html body.er30-active .er27-service .er27-number{font:400 32px/1.18 'Core Serif N Web',serif!important;color:#efff00!important;padding-top:0!important}
html body.er30-active .er27-service .er28-service-icon{width:64px;height:64px;color:#fff;margin-top:-10px}
html body.er30-active .er27-service .er28-service-icon svg{width:64px;height:64px}
html body.er30-active .eac-home-link{padding:0 40px 40px;margin:32px 0 0;box-sizing:border-box}
html body.er30-active .er38-rotation-text{clip-path:none!important;white-space:normal!important}
.er38-sweep-line{display:block;width:max-content;max-width:none;white-space:nowrap;clip-path:inset(0 100% 0 0);will-change:clip-path}
@media(max-width:1024px){html body.er30-active .er27-intro>.elementor-container{grid-template-columns:1fr!important}}
@media(max-width:767px){.eac-yellow-panel{margin:0 -24px;padding:48px 24px}html body.er30-active .er27-hero-support{width:calc(100% - 48px)!important}html body.er30-active .eac-home-link{padding-inline:24px}html body.er30-active .er27-service h3,html body.er30-active .er27-service h3 a,html body.er30-active .er27-service .er27-number{font-size:26px!important}html body.er30-active .er27-service .er28-service-icon,html body.er30-active .er27-service .er28-service-icon svg{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.er38-sweep-line{clip-path:none!important;will-change:auto}}
html body.er30-active .er38-rotation-text{flex-direction:column;align-items:flex-start;justify-content:center}
html body.er30-active .er38-rotation-text>.er38-sweep-line{width:max-content!important;max-width:none!important;flex:0 0 auto}
html body.er30-active.er26-active .elementor .eab-eyebrow,html body.er30-active.er26-active .elementor .eab-image-caption,html body.er30-active.er26-active .elementor .eab-slide figcaption{font-family:'GT America',sans-serif!important;font-weight:700!important}
@media(min-width:768px) and (max-width:1100px){.eac-yellow-panel{margin-inline:-24px;padding-inline:24px}}
@media(min-width:768px) and (max-width:1024px){html body.er30-active .er27-intro>.elementor-container{grid-auto-flow:row!important;grid-template-rows:none!important}html body.er30-active .er27-intro>.elementor-container>.elementor-column{grid-row:auto!important;grid-template-rows:auto auto!important}}
/* Numbered process sections share the site's yellow accents. */
html body.er30-active.eac-consolidated .er32-phases>li>span,
html body.er30-active.eac-consolidated .er30-sequence>li>span{color:#efff00!important;font-family:'Core Serif N Web',serif!important;font-size:36px!important;line-height:1.15!important;font-weight:400!important;display:block}
html body.er30-active.eac-consolidated .er32-phase-heading svg{width:48px!important;height:48px!important;flex:0 0 48px!important}
html body.er30-active.eac-consolidated .eac-phases .eac-summary a{color:#efff00!important}
html body.er30-active.eac-consolidated .eac-thought-content .er30-sequence{padding-bottom:88px!important;margin-bottom:72px!important;border-bottom:1px solid rgba(255,255,255,.45)}
@media(max-width:767px){html body.er30-active.eac-consolidated .eac-thought-content .er30-sequence{padding-bottom:56px!important;margin-bottom:48px!important}html body.er30-active.eac-consolidated .er32-phase-heading svg{width:42px!important;height:42px!important;flex-basis:42px!important}}
/* iPhone review: preserve word boundaries, compact hero, full-width service copy. */
@media(max-width:767px){
html body.er30-active.er26-active .er30-hero-title br{display:block!important}
html body.er27-home.er30-active.er26-active .elementor.elementor-3505 .er27-hero-title h1{font-size:clamp(36px,10.7vw,48px)!important;line-height:1.08!important}
html body.er27-home.er30-active.er26-active .er27-hero-title .er38-ghost{display:inline-block!important;vertical-align:top;width:100%;height:2.16em;overflow:hidden}
html body.er27-home.er30-active.er26-active .elementor.elementor-3505 .er27-intro>.elementor-container>.elementor-column{background:#0b0b0b!important}
html body.er27-home.er30-active.er26-active .er27-service{grid-template-columns:28px 28px minmax(0,1fr)!important;gap:20px 12px!important;align-items:start!important}
html body.er27-home.er30-active.er26-active .er27-service .er28-service-copy{display:contents!important}
html body.er27-home.er30-active.er26-active .er27-service .er27-number{grid-column:1;grid-row:1;font-size:26px!important;line-height:28px!important;margin:0!important;padding:0!important}
html body.er27-home.er30-active.er26-active .er27-service .er28-service-icon{grid-column:2;grid-row:1;width:28px!important;height:28px!important;margin:0!important;padding:0!important;align-self:start!important}
html body.er27-home.er30-active.er26-active .er27-service .er28-service-icon svg{display:block;width:28px!important;height:28px!important}
html body.er27-home.er30-active.er26-active .er27-service h3{grid-column:3;grid-row:1;font-size:26px!important;line-height:28px!important;margin:0!important;padding:0!important}
html body.er27-home.er30-active.er26-active .er27-service h3 a{font-size:26px!important;line-height:28px!important}
html body.er27-home.er30-active.er26-active .er27-service .er28-service-copy p{grid-column:1/-1!important;grid-row:2;margin:0!important;padding:0!important;max-width:none!important;width:100%!important}
html body.er27-home.er30-active.er26-active .er27-service .er27-chips{grid-column:1/-1!important;grid-row:3;margin:0!important;padding:0!important;width:100%!important}
}
@media(max-width:767px){html body.er27-home.er30-active.er26-active .elementor.elementor-3505 .er27-section.er27-hero .er27-hero-title h1{font-size:clamp(36px,10.7vw,48px)!important;line-height:1.08!important}}
@media(max-width:767px){
html body.er30-active.er26-active .er30-hero .er30-hero-title br{display:revert!important}
html body.er27-home.er30-active.er26-active .er27-service .er28-service-icon svg{width:36px!important;height:36px!important;transform:translate(-4px,-4px)}
}

/* Mobile typography must share the legacy important cascade layer. */
@layer ether-alignment {
@media(max-width:767px){
html body.er27-home.er30-active.er26-active .elementor.elementor-3505 .er27-section.er27-hero .er27-hero-title h1{font-size:clamp(36px,10.7vw,48px)!important;line-height:1.08!important}
html body.er27-home.er30-active.er26-active .elementor.elementor-3505 .er27-section.er27-hero .er27-hero-title h1>br,
html body.er30-active.er26-active .er30-hero .er30-hero-title br{display:revert!important}
html body.er30-active.er26-active .er30-hero .er30-hero-title{overflow-wrap:normal!important;hyphens:none!important}
}}

@layer ether-alignment {
html body.er27-home.er30-active.er26-active .elementor.elementor-3505 .er27-intro>.elementor-container>.elementor-column{background:#0b0b0b!important}
}
