/* Requested finishing: connected photographs, gold checks and calm blue gradients. */
.brand-ticker{padding-block:18px;background:linear-gradient(105deg,#10588d 0%,#247fb5 42%,#176b9f 76%,#10588d);border:0;isolation:isolate}
.brand-ticker::before{content:none;animation:none}
.brand-ticker .ticker-track{display:flex;align-items:center;width:max-content;gap:0;animation:eb-seamless-strip 62s linear infinite;will-change:transform;backface-visibility:hidden;transform:translate3d(0,0,0)}
.brand-ticker .ticker-copy{display:flex;flex:0 0 auto;align-items:center;justify-content:space-around;min-width:100vw;gap:44px;padding:0 22px;box-sizing:border-box;white-space:nowrap;font-size:.82rem;line-height:1.5;letter-spacing:.08em;color:#f2d79f}
.ticker-item{display:inline-flex;align-items:center;gap:14px;flex:0 0 auto}
.brand-ticker .ticker-copy .ticker-glyph{display:block;width:10px;height:10px;flex:0 0 10px;border:2px solid #d9b872;background:transparent;opacity:1;transform:rotate(45deg);box-sizing:border-box}
@keyframes eb-seamless-strip{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.value-band .hero-proof .value-check{border:2px solid #d9b872;background:linear-gradient(145deg,#267eaf,#135c8b);box-shadow:0 0 0 5px rgba(217,184,114,.11)}
.value-band .value-check img{filter:none;width:28px;height:28px}
.included-checks li{font-size:1rem;line-height:1.75;padding:18px 0;gap:12px;align-items:center}
.included-checks li span{width:26px;height:26px;flex:0 0 26px;font-size:.87rem;margin-top:0}
h2 em{font-style:normal;color:#236f9f}
.brand-system-copy h2 em,.coverage-story-copy h2 em,.services-heading h2 em,.feature-copy h2 em,.results-copy h2 em{background:linear-gradient(110deg,#175c91 5%,#428fbc 48%,#1a679e 92%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:none;text-shadow:none}
.gallery-heading h2 em{background:linear-gradient(110deg,#72bce9,#e2f4ff 52%,#82c7ee);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:none;text-shadow:none}
.dynamic-mosaic{gap:0;padding:0;border-radius:24px;overflow:hidden;isolation:isolate;background:#123a55}
.work-tile{border:0;border-radius:0;animation:none;transform:none;box-shadow:none;outline-offset:-4px!important}
.work-tile::after{display:none}
.work-tile>img{animation:eb-mosaic-breathe 15s ease-in-out infinite alternate;transform-origin:50% 50%;transition:filter .3s ease}
.work-tile-2>img{transform-origin:50% 75%}
.work-tile:hover>img{filter:brightness(1.04);animation-play-state:paused}
.work-gallery.is-paused .work-tile>img{animation-play-state:paused}
@keyframes eb-mosaic-breathe{from{transform:scale(1.015)}to{transform:scale(1.065)}}
.coverage-graphic{padding:0;perspective:none}
.coverage-graphic>img{border-radius:0;transform:none;box-shadow:none;filter:none}
.coverage-map-caption{margin-top:15px}
.logo-filter-definitions{position:absolute;pointer-events:none;overflow:hidden}
.site-header .brand-mark,.site-footer .brand-mark{background:transparent;padding:0;border-radius:0;box-shadow:none;overflow:visible}
@media(max-width:767px){
 .brand-ticker{padding-block:17px}.brand-ticker .ticker-copy{font-size:.78rem;gap:32px;padding-inline:16px;letter-spacing:.06em}.ticker-item{gap:12px}
 .included-checks li{font-size:1rem;line-height:1.75;padding-block:17px}.included-checks li span{width:26px;height:26px;flex-basis:26px}
 .dynamic-mosaic{gap:0;border-radius:18px}.work-tile{border-radius:0}
 .coverage-graphic{padding:0}.coverage-graphic>img{border-radius:0}
}
@media(prefers-reduced-motion:reduce){.brand-ticker .ticker-track,.work-tile>img{animation:none!important;transform:none!important}}

/* Latest requested direction: gold marquee, circular mobile diagram, clearer portrait. */
.brand-ticker{background:linear-gradient(105deg,#dfae3d 0%,#f5d475 44%,#e5b748 76%,#eac45b)}
.brand-ticker .ticker-copy{color:#0b3554}
.brand-ticker .ticker-copy .ticker-glyph{border-color:#0b3554}
.service-hero-post .hero-content{max-width:660px}
.service-hero-post h1{max-width:660px;font-size:clamp(2.8rem,4.5vw,4.15rem)}
.service-hero-post .hero-title-main{font-size:clamp(1.7rem,2.6vw,2.25rem);line-height:1.22;margin-bottom:23px}
.service-hero-post .hero-title-main>span,.service-hero-post .hero-title-emphasis>span{display:block;white-space:nowrap}
.service-hero-post .hero-title-emphasis{font-size:1em;line-height:1.08}
@media(max-width:767px){
 .service-hero-post{align-items:flex-start;background:#041827}
 .service-hero-post>picture{inset:0 0 auto;margin-top:var(--header-h);height:720px;border-radius:0}
 .service-hero-post .hero-image{object-position:76% top;opacity:1}
 .service-hero-post .hero-overlay{background:linear-gradient(to bottom,rgba(4,24,39,0) 0,rgba(4,24,39,.02) 140px,rgba(4,24,39,.08) 260px,rgba(4,24,39,.78) 400px,#041827 590px,#041827 100%)}
 .service-hero-post .hero-inner{padding-top:320px;padding-bottom:52px}
 .service-hero-post .breadcrumbs{margin-bottom:22px}
 .service-hero-post .eyebrow{font-size:.65rem;letter-spacing:.09em;margin-bottom:20px}
 .service-hero-post h1{font-size:clamp(1.8rem,8.7vw,2.6rem);max-width:none;margin-bottom:26px;letter-spacing:-.045em}
 .service-hero-post .hero-title-main{font-size:clamp(1.45rem,6.1vw,1.85rem);margin-bottom:21px;line-height:1.3}
 .service-hero-post .hero-title-emphasis{line-height:1.13}
}
@media(max-width:599px){
 .brand-orbit{display:block;position:relative;width:calc(100% - 18px);max-width:430px;aspect-ratio:1;margin:20px auto 12px}
 .orbit-ring{display:block}
 .orbit-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:32%;margin:0;grid-column:auto}
 .orbit-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:84px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:0;border:0}
 .orbit-node-figure{width:50px;height:50px;flex:0 0 50px;background:#fff;border:1px solid #dfeaf2}
 .orbit-node-figure img{width:40px;height:40px}
 .orbit-node>span:last-child{font-size:.72rem;line-height:1.4}
}
@media(max-width:340px){.service-hero-post h1{font-size:1.68rem}}

/* Final visual pass. */
.section,.brand-system{padding-block:64px}
.brand-system-layout{gap:28px}
.section-heading,.services-heading,.reviews-heading,.gallery-heading{margin-bottom:32px}
.final-cta{padding-block:64px}
.subpage-cta{padding:24px 0 64px}
.value-band .hero-proof{padding-block:28px}
.brand-ticker{background:linear-gradient(110deg,#2a82bc 0%,#2e8fce 28%,#4798c7 56%,#3b92c6 78%,#2a82bc 100%);background-size:240% 100%;border-block:1px solid #78bae2;animation:eb-blue-strip 9s ease-in-out infinite alternate}
.brand-ticker .ticker-copy{color:#fff;font-weight:700;font-size:1.2rem;letter-spacing:.035em}
.brand-ticker .ticker-copy .ticker-glyph{border-color:#fff}
@keyframes eb-blue-strip{from{background-position:0% 50%}to{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.brand-ticker{animation:none}}
.work-tile>img{animation:none;transform:none;filter:sepia(.07) saturate(1.035) contrast(1.02);transition:transform .55s ease,filter .4s ease}
.work-tile:hover>img{animation:none;transform:scale(1.035);filter:sepia(.07) saturate(1.035) contrast(1.02) brightness(1.035)}
.gallery-full-image{filter:sepia(.07) saturate(1.035) contrast(1.02)}
.work-tile-2>img{width:100%;height:100%;left:0;bottom:0;object-position:center 75%}
.service-case,.review-card,.audience-grid article,.orbit-node-figure{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.service-case:hover{border-color:#d9b872;box-shadow:0 14px 32px rgba(4,24,39,.13)}
.review-card:hover,.audience-grid article:hover{border-color:#8bbfe0;transform:translateY(-3px)}
.text-link:hover{color:#0b3554;text-decoration-thickness:2px}
.hero:not(.service-hero) .hero-content,.hero:not(.service-hero) h1{max-width:650px}
.hero:not(.service-hero) h1{font-size:clamp(2.6rem,4.3vw,4rem);letter-spacing:-.04em;line-height:1.15}
.home-title>span{display:block;white-space:nowrap}
.home-title em{display:inline-block;padding:0 .035em;margin-inline:-.035em;line-height:1.2}
@media(min-width:900px) and (prefers-reduced-motion:no-preference) and (pointer:fine){
 .hero-image,.photo-process>.section-photo,.photo-audiences>.section-photo{height:calc(100% + 48px);top:-24px;transform:translate3d(0,var(--parallax-y,0px),0);will-change:transform}
}
@media(max-width:767px){
 .section,.brand-system{padding-block:40px}.section-heading,.services-heading,.reviews-heading,.gallery-heading{margin-bottom:24px}.brand-system-layout{gap:22px}.final-cta{padding-block:40px}.subpage-cta{padding:20px 0 40px}.value-band .hero-proof{padding-block:24px}
 .brand-ticker .ticker-copy{font-size:1.18rem}
 .hero:not(.service-hero){align-items:flex-start;background:#041827}
 .hero:not(.service-hero)>picture{inset:0 0 auto;margin-top:var(--header-h);height:720px;border-radius:0}
 .hero:not(.service-hero) .hero-image{object-position:78% top;opacity:1}
 .hero:not(.service-hero) .hero-overlay{background:linear-gradient(to bottom,rgba(4,24,39,0),rgba(4,24,39,.02) 140px,rgba(4,24,39,.1) 260px,rgba(4,24,39,.82) 390px,#041827 590px,#041827)}
 .hero:not(.service-hero) .hero-inner{padding-top:300px;padding-bottom:44px}
 .hero:not(.service-hero) h1{font-size:clamp(1.55rem,7.4vw,2.25rem);letter-spacing:-.035em;line-height:1.2}
 .hero:not(.service-hero) .eyebrow{font-size:.64rem;letter-spacing:.08em}
}
@media(prefers-reduced-motion:reduce){.hero-image,.section-photo{transform:none!important}.work-tile:hover>img,.review-card:hover,.audience-grid article:hover{transform:none}}

/* Small supporting notes frame the circular composition on wide screens. */
.brand-orbit-stage{position:relative;width:100%;max-width:1120px;margin-inline:auto}
.orbit-note{display:none}
.brand-system .text-link{display:inline-block;text-decoration:none;border-bottom:1px solid #d9b872;padding-bottom:5px;line-height:1.65}
.brand-system .text-link:hover{border-bottom-width:2px;padding-bottom:4px}
.brand-system .text-link>span{display:inline-block;margin-left:11px;text-decoration:none}
@media(min-width:1100px){
 .brand-orbit-stage{min-height:580px}
 .orbit-note{display:grid;grid-template-columns:7px 1fr;column-gap:10px;position:absolute;width:190px;padding:18px 16px;border:1px solid #d9e8f2;border-radius:16px;background:linear-gradient(135deg,#fff,#f2f9fd);box-shadow:0 10px 25px rgba(16,63,103,.055);text-align:left;animation:eb-orbit-note 7s ease-in-out infinite}
 .orbit-note strong{font-size:.85rem;line-height:1.5;color:#164a6b;font-weight:650}
 .orbit-note>span:last-child{grid-column:2;font-size:.76rem;line-height:1.65;color:#526b7d;margin-top:5px}
 .orbit-note-dot{width:7px;height:7px;margin-top:6px;border-radius:50%;background:#d9b872}
 .orbit-note-1{left:0;top:17%;animation-delay:-1s}.orbit-note-2{right:0;top:24%;animation-delay:-3s}.orbit-note-3{left:20px;bottom:17%;animation-delay:-5s}.orbit-note-4{right:20px;bottom:10%;animation-delay:-2s}
 .hero>picture{left:auto;right:0;width:min(100%,1376px)}
}
@keyframes eb-orbit-note{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(prefers-reduced-motion:reduce){.orbit-note{animation:none}}

/* Compact mobile header: brand and hamburger navigation. */
@media(max-width:899px){
 :root{--header-h:72px}
 .header-shell{min-height:72px;justify-content:space-between}
 .site-header .button-header{display:none}
 .site-header .menu-toggle{display:grid;width:44px;height:44px;flex:0 0 44px;margin-left:auto}
}
