/* Sprint 29.1 production stabilization */
.gsn-page-hero h1,.gsn-lead-hero h1{color:#fff!important;text-shadow:0 10px 45px rgba(0,0,0,.24)}
.gsn-lead-hero p{color:rgba(255,255,255,.78)}
.gsn-lead-hero span{color:var(--gsn-gold)}
.gsn-contact-page,.gsn-contact-page .site-main{color:var(--gsn-body)}
.gsn-contact-page .gsn-lead-form-panel h2,.gsn-contact-page .gsn-lead-step h3{color:#171117!important}
.gsn-contact-page .gsn-lead-fields label>span{color:#4f4653}
.gsn-contact-page input::placeholder,.gsn-contact-page textarea::placeholder{color:#8b818e;opacity:1}
.gsn-about-leadership{padding:120px 0;background:#09070b;color:#fff}
.gsn-about-leadership__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center}
.gsn-about-leadership blockquote{margin:25px 0 30px;color:#fff;font-size:clamp(2.15rem,4.2vw,4.8rem);line-height:1.05;letter-spacing:-.055em}
.gsn-about-leadership strong,.gsn-about-leadership small{display:block}.gsn-about-leadership small{margin-top:5px;color:rgba(255,255,255,.48)}
.gsn-about-philosophy{min-height:520px;display:flex;justify-content:flex-end;align-items:flex-start;flex-direction:column;padding:50px;border:1px solid rgba(255,255,255,.1);border-radius:30px;background:radial-gradient(circle at 75% 15%,rgba(var(--gsn-purple-rgb),.72),transparent 38%),linear-gradient(145deg,#130619,#22072e)}
.gsn-about-philosophy>span{color:var(--gsn-gold);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.gsn-about-philosophy h2{max-width:620px;margin:20px 0 40px;color:#fff;font-size:clamp(2.2rem,4vw,4.1rem);line-height:1.02;letter-spacing:-.055em}
.gsn-about-philosophy__pillars{display:flex;flex-wrap:wrap;gap:9px}.gsn-about-philosophy__pillars strong{padding:10px 13px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:rgba(255,255,255,.78);font-size:.72rem}
.site-header{transition:min-height .25s ease,background .25s ease,box-shadow .25s ease}.site-header.is-scrolled{background:rgba(9,7,11,.94);box-shadow:0 14px 40px rgba(0,0,0,.18)}.site-header__inner{transition:min-height .25s ease}
.gsn-floating-contact{position:fixed;right:24px;bottom:24px;z-index:9998;display:grid;justify-items:end;gap:12px}.gsn-chat-launcher{display:flex;align-items:center;gap:10px;padding:8px 15px 8px 8px;border:0;border-radius:999px;color:#fff;background:#159447;box-shadow:0 16px 35px rgba(0,0,0,.26);cursor:pointer}.gsn-chat-launcher__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font-weight:900;background:#fff;color:#159447}.gsn-chat-launcher__label{font-weight:800}.gsn-chat-launcher:after{content:"";position:absolute;width:58px;height:58px;right:78px;border:2px solid rgba(21,148,71,.42);border-radius:50%;animation:gsnChatPulse 2s infinite;pointer-events:none}
.gsn-chat-panel{position:relative;width:min(350px,calc(100vw - 32px));padding:25px;border:1px solid rgba(255,255,255,.12);border-radius:20px;color:#fff;background:#120617;box-shadow:0 25px 70px rgba(0,0,0,.35)}.gsn-chat-panel>span{color:var(--gsn-gold);font-size:.65rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.gsn-chat-panel>strong{display:block;margin-top:10px;font-size:1.35rem;line-height:1.15}.gsn-chat-panel p{color:rgba(255,255,255,.58);font-size:.82rem}.gsn-chat-panel>a{display:flex;justify-content:space-between;padding:13px 15px;border-radius:11px;color:#fff;font-weight:800;background:#159447}.gsn-chat-panel small{display:block;margin-top:13px;color:rgba(255,255,255,.4)}.gsn-chat-panel__close{position:absolute;right:13px;top:10px;border:0;color:rgba(255,255,255,.65);background:transparent;font-size:24px;cursor:pointer}
@keyframes gsnChatPulse{0%{transform:scale(.75);opacity:1}100%{transform:scale(1.45);opacity:0}}
@media(max-width:900px){.gsn-about-leadership__grid{grid-template-columns:1fr;gap:45px}.gsn-about-philosophy{min-height:420px}.gsn-floating-contact{right:15px;bottom:15px}.gsn-chat-launcher__label{display:none}.gsn-chat-launcher{padding:7px}.gsn-chat-launcher:after{right:0}}
@media(prefers-reduced-motion:reduce){.gsn-chat-launcher:after{animation:none}}

.gsn-contact-assurance{padding:105px 0;background:#fff}.gsn-contact-assurance__intro{max-width:980px}.gsn-contact-assurance__intro>span{color:var(--gsn-purple);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.gsn-contact-assurance__intro h2{margin:20px 0 0;color:#171117;font-size:clamp(2.4rem,4.8vw,5rem);line-height:1;letter-spacing:-.055em}.gsn-contact-assurance__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:55px}.gsn-contact-assurance__grid article{padding:32px;border:1px solid #e5dee7;border-radius:20px;background:#faf8fb}.gsn-contact-assurance__grid b{color:var(--gsn-gold)}.gsn-contact-assurance__grid h3{margin:34px 0 12px;color:#171117}.gsn-contact-assurance__grid p{margin:0;color:#6f6672}
.gsn-contact-page .gsn-contact-offices,.gsn-lead-page .gsn-contact-offices{background:#f7f4f8}.gsn-lead-page .gsn-contact-faq{background:#fff}
@media(max-width:800px){.gsn-contact-assurance__grid{grid-template-columns:1fr}.gsn-contact-assurance{padding:75px 0}}


/* v2.9.8 service routing, visibility and typography refinement */
:root{
    --gsn-purple-soft:#7416A3;
    --gsn-purple-deep:#42005C;
}

/* Slightly lighter premium purple gradients. */
.gsn-page-hero,
.gsn-portfolio-hero,
.gsn-case-study-hero,
.gsn-services-hero,
.gsn-service-hero{
    background:
        radial-gradient(circle at 80% 18%,rgba(116,22,163,.74),transparent 35%),
        linear-gradient(135deg,#09070b 0%,#20082b 54%,#42005c 100%)!important;
}

/* All major headings on dark/purple areas remain visible. */
.gsn-page-hero h1,
.gsn-page-hero h2,
.gsn-portfolio-hero h1,
.gsn-portfolio-hero h2,
.gsn-case-study-hero h1,
.gsn-services-hero h1,
.gsn-service-hero h1,
.gsn-about-leadership h2,
.gsn-about-leadership blockquote,
.gsn-about-engine h2,
.gsn-case-study-results h2{
    color:#fff!important;
    opacity:1!important;
    visibility:visible!important;
}

/* Portfolio/selected-work hero screenshot contrast correction. */
.gsn-portfolio-hero h1,
.gsn-portfolio-hero p,
.gsn-portfolio-hero .gsn-portfolio-kicker{
    position:relative;
    z-index:2;
}
.gsn-portfolio-hero p{color:rgba(255,255,255,.76)!important}

/* About statement cards and highlighted panels. */
.gsn-about-statements article:nth-child(2){
    background:#7416A3!important;
}
.gsn-about-statements h3,
.gsn-about-statements p{
    opacity:1!important;
    visibility:visible!important;
}
.gsn-about-statements h3{color:#fff!important}
.gsn-about-statements p{color:rgba(255,255,255,.74)!important}

/* Reduced default heading sizes for a cleaner composition. */
.gsn-services-closing h2{
    font-size:clamp(2.2rem,4.5vw,4.8rem)!important;
}
.gsn-about-leadership blockquote{
    font-size:clamp(2rem,3.5vw,4rem)!important;
}
.gsn-about-philosophy h2{
    font-size:clamp(2rem,3.4vw,3.6rem)!important;
}
.gsn-error-page h1{
    font-size:clamp(3rem,6.2vw,5.8rem)!important;
}

@media(max-width:700px){
    .gsn-page-hero h1,
    .gsn-portfolio-hero h1,
    .gsn-case-study-hero h1{
        font-size:clamp(2.45rem,11vw,4rem)!important;
    }
}
