@charset "UTF-8";:root{--navy:#0A1A73;--navy-2:#17339b;--navy-3:#07113f;--coral:#E8425D;--orange:#F4A13E;--ink:#111936;--muted:#69728D;--soft:#F5F7FB;--soft-blue:#EEF2FF;--line:#E1E6EF;--white:#fff;--shadow-sm:0 12px 32px rgba(12,28,76,.08);--shadow:0 24px 70px rgba(12,28,76,.14) }*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}main{min-height:64vh}a{color:var(--navy)}img{max-width:100%}.container{width:min(1180px,90%);margin:0 auto}.narrow{width:min(930px,90%)}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.72rem;font-weight:850;letter-spacing:.15em;color:var(--coral);text-transform:uppercase;margin-bottom:16px}.eyebrow:before{content:"";width:26px;height:2px;background:var(--orange)}.eyebrow.light{color:#f5dce3}.eyebrow.light:before{background:var(--orange)}h1,h2,h3,h4{font-family:Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.035em;color:#0d173b}h1{font-size:clamp(3rem,5.8vw,5.25rem);line-height:1.01;margin:0 0 24px}h2{font-size:clamp(2.1rem,3.8vw,3.35rem);line-height:1.08;margin:0 0 18px}h3{font-size:1.3rem;line-height:1.25;margin:10px 0 12px}h4{font-size:1rem}.lead{font-size:1.12rem;line-height:1.78;color:var(--muted);max-width:780px}.lead-sm{font-size:1.04rem;line-height:1.78;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 21px;border-radius:3px;text-decoration:none;font-weight:800;border:1px solid transparent;cursor:pointer;font:inherit;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--navy);color:#fff;box-shadow:0 10px 24px #0a1a7333}.btn.primary:hover{background:var(--navy-2)}.btn.secondary{border-color:var(--line);background:#fff;color:var(--navy)}.btn.ghost{border-color:#ffffff61;background:transparent;color:#fff}.btn.ghost:hover{background:#ffffff14}.btn.light-btn{background:#fff;color:var(--navy)}.text-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;text-decoration:none;font-weight:850;text-transform:uppercase;font-size:.8rem;letter-spacing:.06em}.text-link span{color:var(--coral)}.hero.corporate-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#07113f,#0a1a73 58%,#17339b);padding:100px 0 130px;color:#fff}.corporate-hero:after{content:"";position:absolute;right:-12%;top:-42%;width:680px;height:680px;border:110px solid rgba(255,255,255,.045);border-radius:50%}.hero-lines{position:absolute;inset:0;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 45%,#000 100%);mask-image:linear-gradient(90deg,transparent 0,#000 45%,#000 100%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:center}.corporate-hero h1{color:#fff;max-width:810px}.corporate-hero h1 span{color:#fff;position:relative}.corporate-hero h1 span:after{content:"";position:absolute;left:2px;right:0;bottom:-7px;height:5px;background:linear-gradient(90deg,var(--orange),var(--coral));transform:skew(-20deg)}.corporate-hero .lead{color:#d6def7;max-width:720px}.hero-btn{background:linear-gradient(90deg,var(--coral),#ee654d)!important;box-shadow:0 12px 30px #e8425d40!important}.hero-side{border-left:1px solid rgba(255,255,255,.2);padding-left:34px;display:grid;gap:0}.hero-capability{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.15)}.hero-capability:first-child{padding-top:0}.hero-capability:last-child{border-bottom:0}.hero-capability>span{color:var(--orange);font-weight:900;font-size:.78rem;letter-spacing:.08em}.hero-capability strong{display:block;color:#fff;font-size:1.12rem;margin-bottom:6px}.hero-capability small{display:block;color:#b9c4e7;line-height:1.55;font-size:.9rem}.service-overlap{position:relative;z-index:5;margin-top:-58px}.feature-cards{gap:0;box-shadow:var(--shadow)}.feature-card{position:relative;background:#fff;padding:32px 32px 30px;border-right:1px solid var(--line);min-height:245px}.feature-card:first-child{border-radius:4px 0 0 4px}.feature-card:last-child{border-right:0;border-radius:0 4px 4px 0}.feature-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--orange),var(--coral));transform:scaleX(0);transform-origin:left;transition:.2s}.feature-card:hover:before{transform:scaleX(1)}.feature-index{font-size:.74rem;font-weight:900;letter-spacing:.1em;color:var(--coral)}.feature-card h3{margin-top:16px;font-size:1.45rem}.feature-card p{color:var(--muted);line-height:1.72}.feature-card a{display:inline-flex;gap:7px;margin-top:4px;text-decoration:none;font-weight:850;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.feature-card a span{color:var(--coral)}.section{padding:92px 0}.soft-section,.specialisation-section{background:var(--soft)}.section-heading{max-width:790px;margin-bottom:44px}.section-heading.centred{text-align:center;margin-left:auto;margin-right:auto}.section-heading.centred .eyebrow{justify-content:center}.section-heading>p{color:var(--muted);font-size:1.07rem;line-height:1.75}.cards{display:grid;gap:22px}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.four{grid-template-columns:repeat(4,1fr)}.reasons-section{padding-top:80px;padding-bottom:72px}.reasons-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px}.reason{position:relative;padding-left:18px;border-left:2px solid #e7eaf1}.reason:before{content:"";position:absolute;left:-2px;top:0;width:2px;height:34px;background:linear-gradient(var(--orange),var(--coral))}.reason strong{display:block;color:#111b42;font-size:1rem;margin-bottom:9px}.reason p{margin:0;color:var(--muted);font-size:.93rem;line-height:1.66}.welcome-section{border-top:1px solid #eef0f4}.welcome-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:80px;align-items:start}.welcome-intro{position:sticky;top:150px}.welcome-points{display:grid}.welcome-points>div{padding:26px 0;border-top:1px solid var(--line)}.welcome-points>div:last-child{border-bottom:1px solid var(--line)}.welcome-points span{font-size:.71rem;font-weight:900;letter-spacing:.13em;color:var(--coral)}.welcome-points h3{font-size:1.35rem;margin:8px 0}.welcome-points p{color:var(--muted);line-height:1.72;margin-bottom:0}.card{position:relative;padding:28px;border:1px solid var(--line);border-radius:4px;background:#fff;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;overflow:hidden}.card:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:linear-gradient(90deg,var(--navy),var(--coral),var(--orange));opacity:0;transition:.2s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-sm);border-color:#d7deea}.card:hover:after{opacity:1}.card p{color:var(--muted);line-height:1.72}.card a{text-decoration:none;font-weight:800}.card-no{display:inline-block;color:var(--coral);font-weight:900;font-size:.75rem;letter-spacing:.08em;border-bottom:2px solid var(--orange);padding-bottom:5px}.card ul{padding-left:18px;color:var(--muted);line-height:1.85}.specialisation-grid .card{min-height:255px}.why-section{background:linear-gradient(120deg,#07113f,#0a1a73);color:#fff}.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}.why-section h2{color:#fff}.why-section p{color:#c7d0ed;line-height:1.75;max-width:570px}.why-list{display:grid}.why-list>div{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.15)}.why-list>div:first-child{padding-top:0}.why-list b{color:var(--orange);font-size:.76rem;letter-spacing:.08em}.why-list strong{display:block;color:#fff;font-size:1.03rem;margin-bottom:5px}.why-list small{display:block;color:#b8c3e5;line-height:1.55;font-size:.9rem}.cta-panel{position:relative;overflow:hidden;background:#f6f7fb;border:1px solid var(--line);padding:46px 48px;display:flex;align-items:center;justify-content:space-between;gap:34px}.cta-panel:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(var(--orange),var(--coral))}.cta-panel h2{max-width:760px;margin-bottom:10px}.cta-panel p{margin:0;color:var(--muted);line-height:1.6}.cta-panel .eyebrow.light{color:var(--coral)}.cta-panel .eyebrow.light:before{background:var(--orange)}.cta-panel .light-btn{background:var(--navy);color:#fff}.page-hero{position:relative;overflow:hidden;padding:86px 0 74px;background:linear-gradient(115deg,#f7f9ff,#f3f5fb 70%,#fff7f0);border-bottom:1px solid #e9edf5}.page-hero:before{content:"";position:absolute;right:-130px;top:-190px;width:430px;height:430px;border:75px solid rgba(10,26,115,.035);border-radius:50%}.page-hero>.container{position:relative;z-index:1}.page-hero h1{font-size:clamp(2.8rem,5vw,4.65rem);max-width:930px}.prose p{font-size:1.06rem;line-height:1.85;color:var(--muted);margin-top:0}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:74px;align-items:start}.services-grid .card{min-height:330px}.center-action{text-align:center;margin-top:38px}.project-list{display:grid;border-top:1px solid var(--line)}.project-list article{display:grid;grid-template-columns:90px 1fr;gap:28px;border-bottom:1px solid var(--line);padding:34px 4px;background:#fff;transition:.2s}.project-list article:hover{padding-left:16px;background:#fafbfe}.project-index{font-size:1.55rem;font-weight:900;color:#b6c0d6}.project-list p{color:var(--muted);line-height:1.72;max-width:800px}.tag{font-size:.72rem;font-weight:900;letter-spacing:.1em;color:var(--coral)}.note-panel{margin-top:38px;background:var(--soft);border-left:4px solid var(--orange);padding:24px 26px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.note-panel span{color:var(--muted);flex:1;min-width:260px}.note-panel a{text-decoration:none;font-weight:850}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.person-card{border:1px solid var(--line);border-radius:4px;padding:30px;background:#fff;box-shadow:0 12px 32px #121f520b;transition:.2s}.person-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}.person-top{display:flex;align-items:center;gap:18px;margin-bottom:22px}.profile-photo{position:relative;width:96px;height:96px;flex:0 0 96px;border-radius:3px;overflow:hidden;background:linear-gradient(135deg,var(--navy),var(--navy-2));box-shadow:0 12px 24px #0a1a7326;display:grid;place-items:center}.profile-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.photo-fallback{font-weight:900;font-size:1.35rem;color:#fff}.person-heading{min-width:0}.person-card h3{font-size:1.55rem;margin:0 0 7px}.person-card p{color:var(--muted);line-height:1.75}.role-line{font-weight:800;color:var(--coral);margin:0;font-size:.9rem;letter-spacing:.025em}.person-contact{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:center;align-items:center}.contact-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #dbe5f1;border-radius:3px;background:#fff;color:var(--navy);text-decoration:none;font-weight:800;font-size:.88rem}.linkedin-wordmark{display:inline-flex;align-items:center;gap:3px;color:#1f2937;font-weight:760}.linkedin-in{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 3px;border-radius:3px;background:#0a66c2;color:#fff;font-weight:850;font-size:.78rem}.linkedin-chip:hover{background:#f5f9ff}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:68px}.contact-details h2{margin-bottom:34px}.contact-item{border-top:1px solid var(--line);padding:20px 0}.contact-item small{font-weight:850;letter-spacing:.1em;color:var(--muted)}.contact-item a{display:block;margin-top:8px;font-weight:800;text-decoration:none}.contact-item p{color:var(--muted);line-height:1.7}.contact-form{display:grid;gap:16px;border:1px solid var(--line);border-radius:4px;padding:30px;background:#fff;box-shadow:var(--shadow-sm)}.contact-form label{display:grid;gap:7px;font-weight:750;font-size:.9rem}.contact-form input,.contact-form textarea{width:100%;border:1px solid #d8deeb;border-radius:3px;padding:14px 15px;font:inherit;outline:none;background:#fbfcff}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px #0a1a7312;background:#fff}.contact-form small{color:var(--muted)}@media(max-width:960px){.hero-grid,.welcome-grid,.why-grid,.split,.contact-grid{grid-template-columns:1fr;gap:44px}.hero-side{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:28px 0 0}.cards.three,.cards.four{grid-template-columns:1fr 1fr}.feature-cards{grid-template-columns:1fr}.feature-card{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.feature-card:first-child,.feature-card:last-child{border-radius:0}.reasons-grid{grid-template-columns:1fr 1fr}.team-grid{grid-template-columns:1fr}.welcome-intro{position:static}.cta-panel{align-items:flex-start;flex-direction:column}}@media(max-width:640px){.hero.corporate-hero{padding:72px 0 105px}.section{padding:68px 0}.cards.three,.cards.four,.reasons-grid{grid-template-columns:1fr}.service-overlap{margin-top:-42px}.feature-card{padding:26px}.project-list article{grid-template-columns:1fr;gap:10px}.project-index{font-size:.95rem}.cta-panel{padding:32px 28px}.page-hero{padding:62px 0 52px}.person-card{padding:24px}.person-top{align-items:flex-start}.profile-photo{width:78px;height:78px;flex-basis:78px}.corporate-hero h1 span:after{height:3px}}

/* Signal Labs live-site revisions: About is the homepage */
app-header nav[aria-label="Main navigation"] > a:nth-child(2){display:none!important}

/* Carry the original Home colour language into the About homepage hero. */
.page-hero.about-home-hero{position:relative;overflow:hidden;padding:100px 0 92px;background:linear-gradient(115deg,#07113f,#0a1a73 58%,#17339b);border-bottom:0;color:#fff}
.page-hero.about-home-hero:before{content:"";position:absolute;inset:0;width:auto;height:auto;border:0;border-radius:0;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 42%,#000 100%);mask-image:linear-gradient(90deg,transparent 0,#000 42%,#000 100%)}
.page-hero.about-home-hero:after{content:"";position:absolute;right:0;top:0;bottom:0;width:min(31vw,430px);z-index:1;border-left:1px solid rgba(255,255,255,.16);background:url('/assets/images/signal-labs-icon.png') center/70px 70px no-repeat,linear-gradient(180deg,rgba(244,161,62,.13),rgba(232,66,93,.10))}
.page-hero.about-home-hero>.container{position:relative;z-index:2;width:min(1180px,90%);padding-right:min(34vw,460px)}
.page-hero.about-home-hero .eyebrow{color:#f5dce3}
.page-hero.about-home-hero .eyebrow:before{background:var(--orange)}
.page-hero.about-home-hero h1{color:#fff;max-width:800px}
.page-hero.about-home-hero .lead{color:#d6def7;max-width:760px}
.page-hero.about-home-hero + .section .split>div:first-child{border-left:4px solid var(--orange);padding-left:24px}

/* Team page: remove profile pictures while keeping names, roles and contact links. */
.team-grid .profile-photo{display:none!important}
.team-grid .person-top{gap:0}

@media(max-width:960px){
  .page-hero.about-home-hero>.container{padding-right:210px}
  .page-hero.about-home-hero:after{width:180px}
}
@media(max-width:700px){
  .page-hero.about-home-hero{padding:72px 0 150px}
  .page-hero.about-home-hero>.container{padding-right:0}
  .page-hero.about-home-hero:after{left:0;right:0;top:auto;bottom:0;width:100%;height:104px;border-left:0;border-top:1px solid rgba(255,255,255,.16);background:url('/assets/images/signal-labs-icon.png') center/70px 70px no-repeat,linear-gradient(90deg,rgba(244,161,62,.13),rgba(232,66,93,.10))}
}


/* Signal Labs live-site revisions v2: compact pages + concentric-ring icon treatment */
.section{padding:58px 0}
.page-hero{padding:62px 0 50px}
.page-hero h1{font-size:clamp(2.35rem,4.2vw,3.85rem)}
.lead,.lead-sm,.prose p,.section-heading>p,.card p,.project-list p,.person-card p,.contact-item p{font-size:.98rem;line-height:1.62}
.project-list article{padding:22px 4px}
.note-panel,.cta-panel,.contact-form{padding:22px 24px}
.services-grid .card,.team-grid .person-card{padding:22px}
.services-grid .card,.specialisation-grid .card,.services-grid .card h3{min-height:auto}
.services-grid .card h3{font-size:1.08rem}
.services-grid .card ul{margin:10px 0 0;padding-left:18px;line-height:1.55}
.services-grid .card ul li:nth-child(n+3){display:none}
.project-list h3{font-size:1.15rem;margin:4px 0 8px}
.team-grid .person-card h3{font-size:1.28rem}
.team-grid .person-card p{margin:0}
.contact-form textarea{min-height:120px}

/* Decorative concentric circles with Signal Labs icon inside on every page hero */
.page-hero{position:relative;overflow:hidden}
.page-hero:not(.about-home-hero):before{right:-130px;top:-190px;width:430px;height:430px;border:75px solid rgba(10,26,115,.045);border-radius:50%}
.page-hero:not(.about-home-hero):after{content:"";position:absolute;right:-40px;top:-105px;width:250px;height:250px;border-radius:50%;background:url('/assets/images/signal-labs-icon.png') center/66% no-repeat;opacity:.12;filter:blur(4px);pointer-events:none}

/* About homepage hero keeps home colours but now uses the same ring treatment instead of the right strip. */
.page-hero.about-home-hero{padding:90px 0 82px;background:linear-gradient(115deg,#07113f,#0a1a73 58%,#17339b);border-bottom:0;color:#fff}
.page-hero.about-home-hero:before{content:"";position:absolute;right:-150px;top:-200px;width:470px;height:470px;border:82px solid rgba(255,255,255,.055);border-radius:50%;background:none;opacity:1;-webkit-mask:none;mask:none;inset:auto}
.page-hero.about-home-hero:after{content:"";position:absolute;right:-48px;top:-98px;width:270px;height:270px;border-radius:50%;border:0;left:auto;bottom:auto;background:url('/assets/images/signal-labs-icon.png') center/67% no-repeat;opacity:.14;filter:blur(4px);pointer-events:none}
.page-hero.about-home-hero>.container{position:relative;z-index:2;width:min(1180px,90%);padding-right:min(28vw,360px)}
.page-hero.about-home-hero + .section .split>div:first-child{border-left:4px solid var(--orange);padding-left:20px}

/* Remove Mission / Vision / Values block from About page */
.page-hero.about-home-hero + .section + .section.soft-section{display:none!important}

/* Team page: no profile photos in cards */
.team-grid .profile-photo{display:none!important}
.team-grid .person-top{gap:0}

@media(max-width:960px){
  .section{padding:48px 0}
  .page-hero{padding:56px 0 44px}
  .page-hero.about-home-hero>.container{padding-right:220px}
  .page-hero.about-home-hero:before{right:-170px;top:-170px;width:390px;height:390px;border-width:68px}
  .page-hero.about-home-hero:after{right:-8px;top:-58px;width:210px;height:210px}
}
@media(max-width:700px){
  .page-hero.about-home-hero{padding:70px 0 64px}
  .page-hero.about-home-hero>.container{padding-right:0}
  .page-hero.about-home-hero:before{right:-110px;top:-110px;width:260px;height:260px;border-width:45px}
  .page-hero.about-home-hero:after{right:-2px;top:-18px;width:145px;height:145px}
  .page-hero:not(.about-home-hero):before{right:-95px;top:-125px;width:255px;height:255px;border-width:45px}
  .page-hero:not(.about-home-hero):after{right:-2px;top:-18px;width:145px;height:145px}
}


/* Signal Labs live-site revisions v3: place all concentric-ring backgrounds at the upper-right with a larger centered icon */
.page-hero,
.page-hero.about-home-hero{
  --ring-size: 560px;
  --ring-right: -170px;
  --ring-top: -150px;
  --icon-size: 250px;
  --ring-core: rgba(255,248,245,.94);
  --ring-color: rgba(10,26,115,.05);
}

.page-hero:before,
.page-hero.about-home-hero:before{
  content:""!important;
  position:absolute!important;
  right:var(--ring-right)!important;
  top:var(--ring-top)!important;
  width:var(--ring-size)!important;
  height:var(--ring-size)!important;
  border:0!important;
  border-radius:50%!important;
  background:radial-gradient(circle at center,
    var(--ring-core) 0 41%,
    rgba(255,255,255,0) 41% 56%,
    var(--ring-color) 56% 71%,
    rgba(255,255,255,0) 71% 85%,
    var(--ring-color) 85% 100%)!important;
  opacity:1!important;
  inset:auto!important;
  pointer-events:none!important;
  z-index:0!important;
  -webkit-mask:none!important;
  mask:none!important;
}

.page-hero:after,
.page-hero.about-home-hero:after{
  content:""!important;
  position:absolute!important;
  right:calc(var(--ring-right) + ((var(--ring-size) - var(--icon-size)) / 2))!important;
  top:calc(var(--ring-top) + ((var(--ring-size) - var(--icon-size)) / 2))!important;
  width:var(--icon-size)!important;
  height:var(--icon-size)!important;
  left:auto!important;
  bottom:auto!important;
  border:0!important;
  border-left:0!important;
  border-top:0!important;
  border-radius:50%!important;
  background:url('/assets/images/signal-labs-icon.png') center/92% no-repeat!important;
  opacity:.18!important;
  filter:blur(3.5px)!important;
  pointer-events:none!important;
  z-index:0!important;
}

.page-hero > .container,
.page-hero.about-home-hero > .container{
  position:relative;
  z-index:2;
}

.page-hero.about-home-hero > .container{
  padding-right:min(28vw,340px)!important;
}

@media(max-width:960px){
  .page-hero,
  .page-hero.about-home-hero{
    --ring-size: 460px;
    --ring-right: -145px;
    --ring-top: -125px;
    --icon-size: 210px;
  }
  .page-hero.about-home-hero>.container{padding-right:200px!important}
}

@media(max-width:700px){
  .page-hero,
  .page-hero.about-home-hero{
    --ring-size: 300px;
    --ring-right: -90px;
    --ring-top: -75px;
    --icon-size: 150px;
  }
  .page-hero.about-home-hero,
  .page-hero{padding-top:64px!important}
  .page-hero.about-home-hero>.container{padding-right:0!important}
}


/* Signal Labs live-site revisions v4: keep only services 1, 2 and 4; refine About banner to match the Home-style hero without overlap */
.services-grid > .card:nth-child(3),
.services-grid > .card:nth-child(5),
.services-grid > .card:nth-child(6){display:none!important}
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

.page-hero.about-home-hero{
  background:
    linear-gradient(115deg,#07113f,#0a1a73 58%,#17339b) !important;
  color:#fff!important;
}
.page-hero.about-home-hero .eyebrow{color:#f5dce3!important}
.page-hero.about-home-hero .eyebrow:before{background:var(--orange)!important}
.page-hero.about-home-hero h1,
.page-hero.about-home-hero h2,
.page-hero.about-home-hero h3{color:#fff!important}
.page-hero.about-home-hero .lead{color:#d6def7!important;max-width:650px!important}
.page-hero.about-home-hero>.container{
  width:min(1180px,90%)!important;
  padding-right:430px!important;
}

/* Clean right-side concentric circle pattern with centered icon and no overlap on text */
.page-hero.about-home-hero,
.page-hero:not(.about-home-hero){
  --ring-size: 500px;
  --ring-right: -70px;
  --ring-top: -120px;
  --icon-size: 220px;
}
.page-hero.about-home-hero:before,
.page-hero:not(.about-home-hero):before{
  content:""!important;
  position:absolute!important;
  right:var(--ring-right)!important;
  top:var(--ring-top)!important;
  width:var(--ring-size)!important;
  height:var(--ring-size)!important;
  border-radius:50%!important;
  background:radial-gradient(circle at center,
    rgba(255,248,245,.96) 0 42%,
    rgba(255,255,255,0) 42% 56%,
    rgba(10,26,115,.055) 56% 71%,
    rgba(255,255,255,0) 71% 85%,
    rgba(10,26,115,.055) 85% 100%)!important;
  border:0!important;
  opacity:1!important;
  z-index:0!important;
  pointer-events:none!important;
}
.page-hero.about-home-hero:after,
.page-hero:not(.about-home-hero):after{
  content:""!important;
  position:absolute!important;
  right:calc(var(--ring-right) + ((var(--ring-size) - var(--icon-size)) / 2))!important;
  top:calc(var(--ring-top) + ((var(--ring-size) - var(--icon-size)) / 2))!important;
  width:var(--icon-size)!important;
  height:var(--icon-size)!important;
  border-radius:50%!important;
  background:url('/assets/images/signal-labs-icon.png') center/94% no-repeat!important;
  opacity:.14!important;
  filter:blur(2.8px)!important;
  z-index:0!important;
  pointer-events:none!important;
}
.page-hero > .container,
.page-hero.about-home-hero > .container{position:relative!important;z-index:2!important}

@media(max-width:1080px){
  .page-hero.about-home-hero>.container{padding-right:320px!important}
  .page-hero.about-home-hero,
  .page-hero:not(.about-home-hero){
    --ring-size: 390px;
    --ring-right: -55px;
    --ring-top: -90px;
    --icon-size: 175px;
  }
}
@media(max-width:760px){
  .services-grid{grid-template-columns:1fr!important}
  .page-hero.about-home-hero>.container{padding-right:0!important}
  .page-hero.about-home-hero,
  .page-hero:not(.about-home-hero){
    --ring-size: 230px;
    --ring-right: -35px;
    --ring-top: -40px;
    --icon-size: 100px;
  }
  .page-hero.about-home-hero .lead{max-width:100%!important}
}


/* Signal Labs live-site revisions v5: make About/front-page hero use a larger blue concentric-circle pattern like the other page banners */
.page-hero.about-home-hero{
  background:linear-gradient(115deg,#f5f7fc 0%,#eef2fb 55%,#f8fbff 100%)!important;
  border-bottom:1px solid #e4e9f3!important;
  color:var(--ink)!important;
  padding:68px 0 62px!important;
  --ring-size: 700px;
  --ring-right: -130px;
  --ring-top: -110px;
  --icon-size: 285px;
}
.page-hero.about-home-hero .eyebrow{color:var(--coral)!important}
.page-hero.about-home-hero .eyebrow:before{background:var(--orange)!important}
.page-hero.about-home-hero h1,
.page-hero.about-home-hero h2,
.page-hero.about-home-hero h3{color:#0d173b!important}
.page-hero.about-home-hero .lead{color:#5f6d91!important;max-width:670px!important}
.page-hero.about-home-hero>.container{
  width:min(1180px,90%)!important;
  padding-right:420px!important;
}

.page-hero.about-home-hero:before{
  content:""!important;
  position:absolute!important;
  right:var(--ring-right)!important;
  top:var(--ring-top)!important;
  width:var(--ring-size)!important;
  height:var(--ring-size)!important;
  border-radius:50%!important;
  background:radial-gradient(circle at center,
    rgba(248,251,255,.98) 0 39%,
    rgba(255,255,255,0) 39% 55%,
    rgba(18,42,120,.07) 55% 71%,
    rgba(255,255,255,0) 71% 84%,
    rgba(18,42,120,.07) 84% 100%)!important;
  border:0!important;
  opacity:1!important;
  z-index:0!important;
  pointer-events:none!important;
}
.page-hero.about-home-hero:after{
  content:""!important;
  position:absolute!important;
  right:calc(var(--ring-right) + ((var(--ring-size) - var(--icon-size)) / 2))!important;
  top:calc(var(--ring-top) + ((var(--ring-size) - var(--icon-size)) / 2))!important;
  width:var(--icon-size)!important;
  height:var(--icon-size)!important;
  border-radius:50%!important;
  background:url('/assets/images/signal-labs-icon.png') center/92% no-repeat!important;
  opacity:.12!important;
  filter:blur(4px)!important;
  z-index:0!important;
  pointer-events:none!important;
}
.page-hero.about-home-hero > .container{position:relative!important;z-index:2!important}

@media(max-width:1080px){
  .page-hero.about-home-hero{
    --ring-size: 560px;
    --ring-right: -105px;
    --ring-top: -90px;
    --icon-size: 225px;
  }
  .page-hero.about-home-hero>.container{padding-right:320px!important}
}
@media(max-width:760px){
  .page-hero.about-home-hero{
    --ring-size: 300px;
    --ring-right: -52px;
    --ring-top: -32px;
    --icon-size: 125px;
    padding:58px 0 50px!important;
  }
  .page-hero.about-home-hero>.container{padding-right:0!important}
  .page-hero.about-home-hero .lead{max-width:100%!important}
}


/* Signal Labs live-site revisions v6: restore stronger original blue on About banner without changing layout */
.page-hero.about-home-hero{
  background:linear-gradient(115deg,#07113f 0%,#0a1a73 58%,#17339b 100%)!important;
  border-bottom:0!important;
  color:#fff!important;
}
.page-hero.about-home-hero .eyebrow{color:#f5dce3!important}
.page-hero.about-home-hero .eyebrow:before{background:var(--orange)!important}
.page-hero.about-home-hero h1,
.page-hero.about-home-hero h2,
.page-hero.about-home-hero h3{color:#fff!important}
.page-hero.about-home-hero .lead{color:#d6def7!important}
.page-hero.about-home-hero:before{
  background:radial-gradient(circle at center,
    rgba(19,43,121,.40) 0 39%,
    rgba(255,255,255,0) 39% 55%,
    rgba(255,255,255,.055) 55% 71%,
    rgba(255,255,255,0) 71% 84%,
    rgba(255,255,255,.055) 84% 100%)!important;
}
.page-hero.about-home-hero:after{
  opacity:.16!important;
}

/* Team cards: keep only name, title and LinkedIn */
.team-grid .person-card > p{display:none!important}


/* Signal Labs live-site revisions v7: use a full uncut transparent Signal Labs icon inside the circle */
.page-hero.about-home-hero:after,
.page-hero:not(.about-home-hero):after{
  background-image:url('/assets/images/signal-labs-icon-transparent.png')!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:78%!important;
  border-radius:0!important;
  filter:blur(3px)!important;
  opacity:.17!important;
}


/* Signal Labs live-site revisions v8: softer About icon and centered Team names/titles */
.page-hero.about-home-hero:after{
  background-image:url('/assets/images/signal-labs-icon-transparent.png')!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:72%!important;
  opacity:.07!important;
  filter:blur(7px)!important;
}

.team-grid .person-card{
  text-align:center!important;
}
.team-grid .person-top{
  justify-content:center!important;
  text-align:center!important;
}
.team-grid .person-heading{
  width:100%!important;
  text-align:center!important;
}
.team-grid .person-card h3,
.team-grid .role-line,
.team-grid .person-contact{
  text-align:center!important;
  justify-content:center!important;
}


/* Signal Labs live-site revisions v9: footer cleanup, contact phone styling, services numbering presentation */
/* Remove company blurb and phone from footer; keep contact details on Contact page instead. */
app-footer .footer-about > p,
app-footer .footer-about > a.footer-phone{display:none!important}

/* Contact page phone should not appear larger/heavier than other contact items. */
.contact-item a[href^="tel:"]{
  font-weight:700!important;
  font-size:1rem!important;
  color:var(--navy)!important;
}
.contact-item a[href^="mailto:"],
.contact-item a[href^="tel:"]{
  margin-top:8px!important;
  line-height:1.5!important;
}

/* Ensure remaining services cards stay evenly spaced on the Services page. */
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:760px){
  .services-grid{grid-template-columns:1fr!important}
}
