/* GGD services: [ggd_services]. Element-typed selectors out-rank the Elementor kit's global a/h2/ul rules. */
.ggd-svcs{
  --s-ink:var(--ggd-navy,#0F172A);--s-red:var(--ggd-red,#BE1E2D);--s-red-bright:var(--ggd-red-bright,#DC2626);
  --s-blue:var(--ggd-blue,#1D4ED8);--s-glow:var(--ggd-blue-glow,#60A5FA);--s-slate:var(--ggd-slate,#475569);
  --s-off:var(--ggd-off-white,#F8FAFC);--s-line:var(--ggd-field-border,#E2E8F0);--s-font:"Heebo",system-ui,sans-serif;
  font-family:var(--s-font);color:var(--s-ink)
}
.ggd-svcs *,.ggd-svcs *::before,.ggd-svcs *::after{box-sizing:border-box}
.ggd-svcs .ggd-svcs__shell{width:100%;max-width:1336px;margin:0 auto;padding:0 48px}

/* Jump nav: sticks under the site header */
.ggd-svcs nav.ggd-svcs__nav{position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) + 123px);z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--s-line)}
.ggd-svcs .ggd-svcs__nav .ggd-svcs__shell{display:flex;gap:8px;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:none}
.ggd-svcs a.ggd-svcs__chip{flex:none;display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:999px;border:1px solid var(--s-line);background:#fff;color:var(--s-ink);font:600 14px/1 var(--s-font);text-decoration:none;transition:border-color .15s,color .15s}
.ggd-svcs a.ggd-svcs__chip:hover{border-color:var(--s-red);color:var(--s-red)}

/* Sections */
.ggd-svcs section.ggd-svc{padding:88px 0;scroll-margin-top:0}
.ggd-svcs .ggd-svc--panel .ggd-svc__copy{position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) + 220px)}
/* Fluent Form inside a panel: brand the submit button (FF ships its own blue) */
.ggd-svcs .ggd-svc__panel .ff-btn-submit,.ggd-svcs .ggd-svc__panel button.ff-btn-submit:not(.ff_btn_no_style){min-height:52px;padding:0 26px!important;border-radius:8px!important;background:var(--s-red-bright)!important;border:2px solid var(--s-red-bright)!important;color:#fff!important;font:700 15px/1 var(--s-font)!important;letter-spacing:.04em;text-transform:uppercase}
.ggd-svcs .ggd-svc__panel .ff-btn-submit:hover{background:var(--s-red)!important;border-color:var(--s-red)!important}
.ggd-svcs .ggd-svc__panel .ff-el-group label,.ggd-svcs .ggd-svc__panel .ff-el-input--label label{font-family:var(--s-font);font-weight:600;color:var(--s-ink)}
.ggd-svcs section.ggd-svc--plain{background:#fff}
.ggd-svcs section.ggd-svc--tint{background:var(--s-off)}
.ggd-svcs .ggd-svc__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;align-items:start}
.ggd-svcs .ggd-svc--panel .ggd-svc__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
.ggd-svcs .ggd-svc:not(.ggd-svc--panel) .ggd-svc__copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:64px;align-items:start}
.ggd-svcs .ggd-svc:not(.ggd-svc--panel) .ggd-svc__copy>*{grid-column:1}
.ggd-svcs .ggd-svc:not(.ggd-svc--panel) .ggd-svc__list-head,.ggd-svcs .ggd-svc:not(.ggd-svc--panel) ul.ggd-svc__list{grid-column:2}
.ggd-svcs .ggd-svc:not(.ggd-svc--panel) .ggd-svc__list-head{grid-row:1;margin-top:4px}
.ggd-svcs .ggd-svc:not(.ggd-svc--panel) ul.ggd-svc__list{grid-row:2 / span 4}

.ggd-svcs p.ggd-svc__eyebrow{margin:0 0 10px;font:600 12px/1.2 var(--s-font);letter-spacing:.14em;text-transform:uppercase;color:var(--s-blue)}
.ggd-svcs h2.ggd-svc__title{margin:0 0 16px;font:700 clamp(30px,3.2vw,40px)/1.1 var(--s-font);letter-spacing:-.01em;color:var(--s-ink)}
.ggd-svcs p.ggd-svc__body{margin:0 0 28px;max-width:560px;font:400 17px/1.6 var(--s-font);color:var(--s-slate)}
.ggd-svcs p.ggd-svc__list-head{margin:0 0 12px;font:700 13px/1.2 var(--s-font);letter-spacing:.08em;text-transform:uppercase;color:var(--s-ink)}
.ggd-svcs ul.ggd-svc__list{list-style:none;margin:0 0 32px;padding:0;display:grid;gap:10px}
.ggd-svcs ul.ggd-svc__list li{display:flex;gap:12px;align-items:flex-start;margin:0;font:500 16px/1.45 var(--s-font);color:var(--s-ink)}
.ggd-svcs ul.ggd-svc__list svg{flex:none;width:22px;height:22px;padding:3px;margin-top:-1px;border-radius:50%;background:#DBEAFE;stroke:var(--s-blue);stroke-width:2.6;fill:none;stroke-linecap:round;stroke-linejoin:round}

.ggd-svcs .ggd-svc__ctas{display:flex;flex-wrap:wrap;gap:12px}
.ggd-svcs a.ggd-svc__btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:8px;font:700 15px/1 var(--s-font);letter-spacing:.04em;text-transform:uppercase;text-decoration:none;transition:background .15s,color .15s,border-color .15s}
.ggd-svcs a.ggd-svc__btn--primary{background:var(--s-red-bright);color:#fff;border:2px solid var(--s-red-bright)}
.ggd-svcs a.ggd-svc__btn--primary:hover{background:var(--s-red);border-color:var(--s-red);color:#fff}
.ggd-svcs a.ggd-svc__btn--ghost{background:transparent;color:var(--s-ink);border:2px solid var(--s-ink)}
.ggd-svcs a.ggd-svc__btn--ghost:hover{background:var(--s-ink);color:#fff}

/* Right-hand panel: form, widget or placeholder */
.ggd-svcs .ggd-svc__panel{background:#fff;border:1px solid var(--s-line);border-radius:14px;padding:28px;box-shadow:0 24px 48px -32px rgba(15,23,42,.35);scroll-margin-top:60px}
.ggd-svcs .ggd-svc--tint .ggd-svc__panel{background:#fff}
.ggd-svcs .ggd-svc__panel--dark{background:var(--color-bg-panel,#0F2340);border-color:rgba(255,255,255,.08);padding:20px}
.ggd-svcs .ggd-svc__panel--dark .ggd-widget-wrap{max-width:none}
.ggd-svcs p.ggd-svc__panel-title{margin:0 0 18px;font:700 22px/1.2 var(--s-font);color:var(--s-ink)}
.ggd-svcs .ggd-svc__placeholder{display:flex;flex-direction:column;gap:6px;padding:28px;border:2px dashed #B45309;border-radius:10px;background:#FEF3C7;color:#92400E;font:500 15px/1.4 var(--s-font)}
.ggd-svcs .ggd-svc__placeholder strong{font-weight:800;letter-spacing:.08em}

@media (max-width:1024px){
  .ggd-svcs .ggd-svcs__shell{padding:0 24px}
  .ggd-svcs nav.ggd-svcs__nav{top:calc(var(--wp-admin--admin-bar--height,0px) + 115px)}
  .ggd-svcs section.ggd-svc{padding:64px 0}
  .ggd-svcs .ggd-svc--panel .ggd-svc__copy{position:static}
  .ggd-svcs .ggd-svc--panel .ggd-svc__grid,.ggd-svcs .ggd-svc:not(.ggd-svc--panel) .ggd-svc__copy{grid-template-columns:minmax(0,1fr)}
  .ggd-svcs .ggd-svc:not(.ggd-svc--panel) .ggd-svc__copy>*{grid-column:1!important;grid-row:auto!important}
}
@media (max-width:767px){
  .ggd-svcs .ggd-svcs__shell{padding:0 16px}
  .ggd-svcs nav.ggd-svcs__nav{top:calc(var(--wp-admin--admin-bar--height,0px) + 140px)}
  .ggd-svcs section.ggd-svc{padding:48px 0}
  .ggd-svcs .ggd-svc__panel{padding:20px}
  .ggd-svcs a.ggd-svc__btn{flex:1 1 100%}
}
