/* Elementor adapter only. Visual tokens and composition remain source-led. */
.gh-agency-section.e-parent{--clb-container-side-gutter:var(--clb-grid-gutter)}
.gh-agency-module,.gh-agency-module *{box-sizing:border-box}
.gh-agency-module{width:100%;max-width:none;font-family:var(--font-sans);color:var(--text-primary);position:relative}
.gh-agency-module img,.gh-agency-module svg{max-width:100%}
.gh-agency-media-slot{display:block;width:100%;height:100%;object-fit:cover;background:linear-gradient(135deg,#edf1f4,#dfe7ec);box-shadow:inset 0 0 0 1px rgba(4,34,61,.06)}
.gh-agency-module--experience{z-index:99999}
.gh-agency-module [data-tour]{z-index:99999!important}
.gh-agency-module--reframe [data-capture] h2,.gh-agency-module--proof-engine [data-capture] h2,.gh-agency-module--ecosystem [data-capture] h2,.gh-agency-module--agenda [data-capture] h2{color:var(--agency-heading-color,#eaf2ff)!important}
.gh-agency-module :focus-visible{outline:3px solid #7ff0e0!important;outline-offset:3px}
.gh-agency-module [data-capture="work"]{overflow-x:clip}
.gh-agency-module [data-marquee]:hover{animation-play-state:paused!important}
.gh-agency-module [data-tour][inert]{visibility:hidden}
.gh-agency-module dialog[data-tour]{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:clamp(12px,3vw,40px);border:0;background:transparent;color:#eaf2ff;overflow:auto}
.gh-agency-module dialog[data-tour][open]{display:flex;align-items:center;justify-content:center}
.gh-agency-module dialog[data-tour]::backdrop{background:rgba(2,12,23,.88);backdrop-filter:blur(12px);animation:ghVideoBackdrop var(--motion-medium) var(--ease-standard) both}
.gh-agency-video-panel{width:100%;max-width:min(1120px,calc((100dvh - 180px)*16/9));min-width:0;flex-shrink:0;border:1px solid rgba(94,234,212,.2);border-radius:var(--radius-xl);background:#071d30;overflow:hidden;box-shadow:0 32px 100px rgba(0,0,0,.55);animation:ghVideoEnter var(--motion-medium) var(--ease-emphasized) both}
.gh-agency-video-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px}
.gh-agency-video-heading{min-width:0}
.gh-agency-video-eyebrow{display:block;margin-bottom:4px;color:#5eead4;font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.gh-agency-module .gh-agency-video-title{margin:0;color:#eaf2ff;font-family:var(--font-display);font-size:clamp(1rem,2vw,1.25rem);font-weight:600;line-height:1.3}
.gh-agency-module .gh-agency-video-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-full);background:rgba(255,255,255,.05);color:#eaf2ff;cursor:pointer;box-shadow:none;transition:background var(--motion-short),border-color var(--motion-short)}
.gh-agency-module .gh-agency-video-close:hover{background:rgba(94,234,212,.12);border-color:#5eead4;color:#5eead4}
.gh-agency-video-close i{font-size:22px;line-height:1}
.gh-agency-video-stage{position:relative;aspect-ratio:16/9;background:#020c17;display:grid;place-items:center}
.gh-agency-module .gh-agency-video-status{margin:0;padding:24px;max-width:44ch;text-align:center;color:#b4cbe0;font-size:.875rem;line-height:1.6}
.gh-agency-video-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.gh-agency-video-footer{display:flex;justify-content:flex-end;padding:2px 24px;min-height:48px;border-top:1px solid rgba(255,255,255,.08)}
.gh-agency-module .gh-agency-video-fallback{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#b4cbe0;font-size:.8125rem;text-decoration:none}
.gh-agency-module .gh-agency-video-fallback:hover{color:#5eead4}
.gh-agency-module .gh-agency-video-fallback[hidden]{display:none!important}
@keyframes ghVideoEnter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes ghVideoBackdrop{from{opacity:0}to{opacity:1}}
@media(max-width:600px){.gh-agency-video-header{padding:14px 16px;gap:12px}.gh-agency-video-footer{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.gh-agency-video-panel,.gh-agency-module dialog[data-tour]::backdrop{animation:none!important}}
.gh-agency-module[data-motion="no"] .gh-agency-video-panel,.gh-agency-module[data-motion="no"] dialog[data-tour]::backdrop{animation:none}
.gh-agency-module [data-svc-card][data-cat="tech"] [data-svc-ic]{background:rgba(3,117,219,.12)!important;color:var(--primary)!important}
.gh-agency-module [data-svc-card][data-cat="mkt"] [data-svc-ic]{background:rgba(20,184,166,.14)!important;color:var(--secondary)!important}
.gh-agency-trust-wrap{max-width:1200px;margin:auto;display:grid;gap:22px;text-align:center;min-width:0}
.gh-agency-trust-label{font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}
.gh-agency-module--trust .gh-logo-marquee{width:100%;min-width:0}
.gh-agency-agenda-card{position:relative;overflow:hidden;max-width:1120px;margin:auto;padding:clamp(30px,4vw,52px);border-radius:var(--radius-xl);background:radial-gradient(ellipse at 0 100%,rgba(20,184,166,.16),transparent 60%),#04223d;color:#eaf2ff;display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.gh-agency-agenda-eyebrow{display:block;margin-bottom:18px;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#5eead4}
.gh-agency-agenda-card h2{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;line-height:1.12;letter-spacing:-.02em;margin:0 0 20px}
.gh-agency-agenda-card p{font-size:1.0625rem;line-height:1.6;color:#b4cbe0;margin:0}
.gh-agency-agenda-benefits{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:16px}
.gh-agency-agenda-benefits li{display:flex;align-items:flex-start;gap:11px;font-size:.9375rem;color:#cfe0f0;line-height:1.5}
.gh-agency-agenda-benefits i{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:1px;border-radius:50%;background:rgba(20,184,166,.18);color:#5eead4;font-size:15px}
.gh-agency-module .gh-agency-agenda-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 24px;border-radius:var(--radius-md);background:var(--agency-cta-bg,var(--secondary-light));color:var(--agency-cta-ink,#04223d);font-weight:600;line-height:1.3;text-decoration:none;transition:box-shadow 180ms ease,transform 180ms ease}
.gh-agency-module .gh-agency-agenda-button:hover{background:var(--agency-cta-hover,#5eead4);color:var(--agency-cta-ink,#04223d);box-shadow:0 8px 24px rgba(20,184,166,.22);transform:translateY(-2px)}
.gh-agency-agenda-contact{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:.875rem;line-height:1.6;color:#94b0c8}
.gh-agency-cases-section{background:var(--surface);padding:clamp(48px,6vw,80px) clamp(20px,5vw,56px)}
.gh-agency-agenda-card.gh-agency-cases-card{grid-template-columns:minmax(0,1fr) auto}
.gh-agency-cases-copy{min-width:0;max-width:660px}
.gh-agency-module--cases .gh-agency-cases-card h2{color:var(--agency-heading-color,#eaf2ff)!important}
.gh-agency-module .gh-agency-cases-button{white-space:nowrap;transition:background-color 180ms ease,box-shadow 180ms ease}
.gh-agency-module .gh-agency-cases-button:hover{transform:none}
.gh-agency-cases-button i{transition:transform 180ms ease}
.gh-agency-cases-button:hover i,.gh-agency-cases-button:focus-visible i{transform:translateX(3px)}
@media(max-width:760px){.gh-agency-agenda-card.gh-agency-cases-card{grid-template-columns:minmax(0,1fr)}.gh-agency-module .gh-agency-cases-button{width:100%;white-space:normal}}
@media(prefers-reduced-motion:reduce){.gh-agency-cases-button:hover i,.gh-agency-cases-button:focus-visible i{transform:none}}
.gh-agency-module .gh-agency-agenda-contact a{color:#5eead4;font-weight:600;overflow-wrap:anywhere}
@media(max-width:760px){.gh-agency-agenda-card{grid-template-columns:minmax(0,1fr)}.gh-agency-module .gh-agency-agenda-button{width:100%}}
.elementor-editor-active .gh-agency-module [data-reveal],.gh-agency-module[data-motion="no"] [data-reveal]{opacity:1!important;transform:none!important}
.elementor-editor-active .gh-agency-module--experience [data-sticky-cta]{display:none!important}
@media(max-width:760px){.gh-agency-module [data-capture="hero"]{padding-top:clamp(110px,25vw,138px)!important}.gh-agency-module [data-parallax-scene]{margin-top:12px!important}}
/* The source's absolute orbit needs a content-sized layout below tablet width. */
@media(max-width:600px){
  .gh-agency-module [data-engine-stage]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;aspect-ratio:auto!important;padding:190px 0 12px}
  .gh-agency-module [data-engine-stage]>svg{height:180px!important}
  .gh-agency-module [data-engine-stage]>[data-core]{top:80px!important;width:122px!important}
  .gh-agency-module [data-engine-stage]>[data-core]+div{top:80px!important}
  .gh-agency-module [data-engine-stage]>[data-cap]{position:relative!important;inset:auto!important;width:100%!important;min-width:0}
  .gh-agency-module [data-engine-stage]>[data-cap] [data-cap-tag]{font-size:.55rem!important;letter-spacing:0!important}
}
@media(prefers-reduced-motion:reduce){.gh-agency-module *,.gh-agency-module *::before,.gh-agency-module *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.gh-agency-module [data-reveal]{opacity:1!important;transform:none!important}}

/* FAQ actions belong to the sidebar, never a third flex item underneath a sticky block. */
.gh-agency-faq-layout{max-width:1080px;margin:auto;display:grid;grid-template-columns:minmax(250px,1fr) minmax(0,1.7fr);gap:clamp(28px,4vw,56px);align-items:start}
.gh-agency-faq-aside{position:sticky;top:92px;min-width:0}
.gh-agency-faq-contact{padding:20px;background:var(--neutral);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:0}
.gh-agency-faq-contact p{margin:0!important}
.gh-agency-faq-contact a{max-width:100%;overflow-wrap:anywhere}
.gh-agency-module .gh-agency-faq-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;padding:12px 16px;border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);font-size:var(--type-label-lg-size);font-weight:var(--fw-semibold);line-height:1.35;text-align:center;text-decoration:none}
.gh-agency-faq-questions{display:flex;flex-direction:column;gap:12px;min-width:0}
@media(max-width:1024px){.gh-agency-faq-layout{grid-template-columns:minmax(0,1fr)}.gh-agency-faq-aside{position:static}.gh-agency-faq-contact{max-width:520px}}
@media(max-height:760px){.gh-agency-faq-aside{position:static}}
/* Keep the glow's transparent edge inside its own box; tall circle gradients get cropped. */
.gh-agency-ecosystem-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 42% at 84% 22%,rgba(20,184,166,.16),rgba(20,184,166,0) 100%)}
/* Core and mark share parallax depth. Size the mark from the orbit, not the viewport. */
.gh-agency-module .gh-agency-hero-mark{width:11.5%!important;max-width:62px;height:auto}
