/* General Informatics Brand System 1.3.1 — 2026-09-13
   Neutral sRGB palette, new dimensional G mark and fine rounded symbol language. */
:root{
  --bg:#07090c;
  --bg2:#0f0f0f;
  --text:#f5f7fb;
  --muted:#afafaf;
  --line:rgba(255,255,255,.115);
  --card:rgba(255,255,255,.065);
  --card2:rgba(255,255,255,.036);
  --blue:#c4c4c4;
  --violet:#939393;
  --red:#8c8c8c;
  --red2:#676767;
}
body:before{
  background:
    radial-gradient(circle at 18% 15%,rgba(196,196,196,.105),transparent 34%),
    radial-gradient(circle at 84% 10%,rgba(147,147,147,.085),transparent 32%),
    radial-gradient(circle at 54% 90%,rgba(140,140,140,.055),transparent 38%),
    linear-gradient(135deg,#050608,#0c0c0c 48%,#0d0b10)!important;
  animation:none!important;
}
body:after{opacity:.62}
.brand img,.gi-footer-brandmark img{
  object-fit:contain;
  border-radius:0!important;
  filter:drop-shadow(0 7px 16px rgba(0,0,0,.34)) drop-shadow(0 0 8px rgba(255,255,255,.055))!important;
}
.brand img{width:44px;height:44px}
.gi-footer-brandmark img{width:46px;height:46px}
.svg-icon.material-symbol-rounded{display:inline-grid;place-items:center;line-height:1;vertical-align:-.12em}
.svg-icon.material-symbol-rounded svg{
  display:block;width:100%;height:100%;fill:none;stroke:currentColor;
  stroke-width:1.55!important;stroke-linecap:round!important;stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke;shape-rendering:geometricPrecision;
}
.btn>.svg-icon,.text-link>.svg-icon,b>.svg-icon,.gi-hero-mini-action>.svg-icon,.gi-project-open>.svg-icon,.wp-rocketboot-action>.svg-icon{width:18px;height:18px;margin-left:2px}
.gi-footer-mail>.svg-icon:first-child{width:17px;height:17px;margin-right:2px}
.gi-footer-mail>.svg-icon:last-child{width:16px;height:16px;margin-left:auto}
.gi-footer .footer-links a>.svg-icon{width:15px;height:15px;margin-left:3px;flex:0 0 auto;color:#979797}
.menu-toggle{font-size:0}
.menu-toggle .menu-open-icon,.menu-toggle .menu-close-icon{display:grid;place-items:center;width:21px;height:21px}
.menu-toggle .menu-open-icon .svg-icon,.menu-toggle .menu-close-icon .svg-icon{width:21px;height:21px}
.menu-toggle .menu-close-icon{display:none}
.menu-toggle.open .menu-open-icon{display:none}
.menu-toggle.open .menu-close-icon{display:grid}
.modal-close{display:grid;place-items:center}
.modal-close .svg-icon{width:20px;height:20px}
.lang-select-wrap:after{content:""!important;width:7px;height:7px;right:15px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-68%) rotate(45deg)!important;color:#a7a7a7}
.gi-footer .footer-links a.gi-footer-subproduct:before{content:""!important;width:6px;height:6px;left:1px;top:50%;border-left:1px solid #818181;border-bottom:1px solid #818181;transform:translateY(-62%)}
/* Quieter neutral surfaces make the dimensional mark and content the focus. */
header{background:rgba(7,9,12,.78)!important}
header.header-scrolled{background:rgba(7,9,12,.91)!important}
.btn-primary{background:linear-gradient(135deg,#fff,#f1f1f1)!important;color:#080a0d!important;box-shadow:0 16px 44px rgba(0,0,0,.22)!important}
.btn-primary:hover{box-shadow:0 20px 58px rgba(0,0,0,.3)!important}
.gradtext{background:linear-gradient(112deg,#fff 0%,#ececec 48%,#d4d4d4 72%,#b5b5b5 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
@media(max-width:680px){.brand img{width:40px;height:40px}.gi-footer-brandmark img{width:40px;height:40px}}
.stack.chain span{display:inline-flex;align-items:center;gap:6px}
.stack.chain .svg-icon{width:15px;height:15px;opacity:.66;flex:0 0 auto}
.gi-back-link{display:inline-flex;align-items:center;gap:7px}
.gi-back-link>.svg-icon{width:17px;height:17px;flex:0 0 auto}


/* 1.3.1 — framed GI mark, monochrome accent system, compact mobile footer */
:root{
  --bg:#080a0d;
  --bg2:#0d1014;
  --text:#f4f5f7;
  --muted:#b3b3b3;
  --line:rgba(255,255,255,.12);
  --card:rgba(255,255,255,.06);
  --card2:rgba(255,255,255,.035);
  --blue:#bcbcbc;
  --violet:#a4a4a4;
  --red:#929292;
  --red2:#767676;
  --gi-blue:#bcbcbc;
  --gi-red:#929292;
  --gi-ink:#090b0e;
  --gi-panel:rgba(18,18,18,.82);
  --gi-softline:rgba(255,255,255,.13);
}
body:before{
  background:
    radial-gradient(circle at 16% 12%,rgba(255,255,255,.065),transparent 32%),
    radial-gradient(circle at 86% 18%,rgba(193,193,193,.045),transparent 31%),
    radial-gradient(circle at 52% 94%,rgba(255,255,255,.035),transparent 38%),
    linear-gradient(135deg,#060709,#0a0c10 48%,#0d0f13)!important;
}
body:after{opacity:.45!important}
header,header.header-scrolled{border-color:rgba(255,255,255,.09)!important}
.brand img,.gi-footer-brandmark img{
  filter:drop-shadow(0 7px 18px rgba(0,0,0,.42)) drop-shadow(0 0 1px rgba(255,255,255,.18))!important;
}
.gradtext{background:linear-gradient(112deg,#fff 0%,#eef0f3 48%,#c8c8c8 76%,#a4a4a4 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
.eyebrow:before,.kicker:before{background:linear-gradient(135deg,#d9d9d9,#7d7d7d)!important;box-shadow:0 0 22px rgba(255,255,255,.10)!important}

/* Neutralize legacy cyan/red/violet decoration without flattening hierarchy. */
.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-focus-visual,.gi-presence-callout-inner,.ai-agency-proof-shell,.service-ai-intents .wrap,.cta-panel,#contact .cta-panel,
.gi-security-suite-card,.wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.company-system-visual{
  border-color:rgba(255,255,255,.14)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.027))!important;
  box-shadow:0 26px 90px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.055)!important;
}
.gi-product-card-featured{background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.10),transparent 35%),radial-gradient(circle at 92% 100%,rgba(255,255,255,.045),transparent 40%),linear-gradient(145deg,rgba(27,27,27,.97),rgba(10,12,16,.96))!important}
.gi-hero-mini-product--growth,.gi-hero-mini-product--cashflow{border-color:rgba(255,255,255,.15)!important;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025))!important}
.gi-hero-mini-tag,.gi-product-status,.gi-product-detail-meta span,.gi-product-detail-meta b,.visual-core-card span,.wp-rocketboot-copy small{color:#cbcbcb!important}
.gi-presence-icon,.gi-security-suite-icon,.visual-pillar .svg-icon,.module-icon,.step-icon,.trust-icon,.proof-icon,.gi-product-hero-icon,.gi-project-features li .svg-icon,.gi-security-suite-features .svg-icon,.visual-status-row .svg-icon{color:#cfcfcf!important}
.gi-presence-icon,.gi-security-suite-icon,.visual-pillar .svg-icon{background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035))!important;border-color:rgba(255,255,255,.16)!important}
.visual-status-row span{color:#dbdbdb!important}
.visual-pillar:hover{box-shadow:0 24px 72px rgba(0,0,0,.42),0 0 24px rgba(255,255,255,.045)!important}
.map-core-ring.dashed{stroke:rgba(255,255,255,.22)!important}
.system-terminal i{border-color:#b3b3b3!important;color:#cfcfcf!important}
.system-terminal i:before{color:#cfcfcf!important}
.contact-box input:focus,.contact-box textarea:focus,.contact-box select:focus{border-color:#b3b3b3!important;box-shadow:0 0 0 4px rgba(255,255,255,.075),0 12px 35px rgba(0,0,0,.2)!important}
.text-link:hover{color:#fff!important}

/* Actions: icon always remains directly after the label instead of dropping below it. */
.btn,.text-link,.gi-hero-mini-action,.gi-project-open,.wp-rocketboot-action,.gi-footer-mail,.gi-footer .footer-links a,.ai-intent-link-grid a{
  align-items:center!important;
}
.btn>.svg-icon,.text-link>.svg-icon,.gi-hero-mini-action>.svg-icon,.gi-project-open>.svg-icon,.wp-rocketboot-action>.svg-icon,.gi-footer-mail>.svg-icon:last-child,.gi-footer .footer-links a>.svg-icon{
  display:inline-grid!important;flex:0 0 auto!important;align-self:center!important;white-space:nowrap!important;
}
.gi-hero-mini-action{display:inline-flex!important;gap:7px!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important}
.gi-project-open,.wp-rocketboot-action,.text-link{gap:7px!important;flex-wrap:nowrap!important}
.gi-footer .footer-links a{display:inline-flex!important;width:fit-content!important;max-width:100%!important;justify-content:flex-start!important;gap:5px!important}
.gi-footer .footer-links a>.svg-icon{margin-left:1px!important}

/* Footer: remove colored glow, tighten typography and use independent mobile columns. */
.gi-footer{background:linear-gradient(180deg,rgba(6,7,9,.14),rgba(6,7,9,.78))!important}
.gi-footer-shell{background:linear-gradient(145deg,rgba(15,17,21,.96),rgba(9,10,14,.94))!important;border-color:rgba(255,255,255,.12)!important;box-shadow:0 24px 80px rgba(0,0,0,.3)!important}
.gi-footer-shell:before{background:radial-gradient(circle at 16% 70%,rgba(255,255,255,.045),transparent 34%),radial-gradient(circle at 86% 70%,rgba(255,255,255,.035),transparent 35%)!important}
.gi-footer-mail{border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.04)!important;color:#e8eaed!important}
.gi-footer-mail:hover{border-color:rgba(255,255,255,.28)!important;background:rgba(255,255,255,.075)!important}
.gi-footer-navcol{display:contents}
.gi-footer .footer-links a,.gi-footer-bottom p{color:#b3b3b3!important}
.gi-footer-group h3{color:#f2f3f5!important}
.gi-footer .footer-links a:hover{color:#fff!important}
.gi-footer .footer-links a>.svg-icon{color:#8b8b8b!important}
.gi-footer .footer-links a.gi-footer-subproduct:before{border-color:#767676!important}

/* Material Symbols Rounded local SVG style: fine rounded stroke everywhere. */
.svg-icon.material-symbol-rounded svg{stroke-width:1.45!important;stroke-linecap:round!important;stroke-linejoin:round!important}

@media(max-width:680px){
  .brand img{width:42px;height:42px}
  .gi-footer{margin-top:20px!important;padding:22px 0 max(44px,calc(32px + env(safe-area-inset-bottom)))!important}
  .gi-footer-shell{padding:16px 14px!important;border-radius:20px!important}
  .gi-footer-main{display:block!important}
  .gi-footer-brand{margin-bottom:16px!important}
  .gi-footer-brandmark{gap:9px!important;margin-bottom:7px!important;font-size:17px!important}
  .gi-footer-brandmark img{width:38px!important;height:38px!important}
  .gi-footer-brand p{margin:0 0 5px!important;font-size:11.75px!important;line-height:1.42!important}
  .gi-footer-brand .gi-footer-presence{display:none!important}
  .gi-footer-mail{margin-top:6px!important;padding:8px 10px!important;font-size:11.5px!important;border-radius:11px!important}
  .gi-footer-navgrid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
  .gi-footer-navcol{display:grid!important;gap:13px!important;align-content:start!important;min-width:0!important}
  .gi-footer-group{margin:0!important;padding:0!important;align-self:start!important;min-height:0!important}
  .gi-footer-group h3{margin:0 0 5px!important;font-size:11.25px!important;line-height:1.2!important}
  .gi-footer .footer-links{gap:0!important}
  .gi-footer .footer-links a{padding:3px 0!important;font-size:11.25px!important;line-height:1.24!important;gap:4px!important}
  .gi-footer .footer-links a.gi-footer-subproduct{padding-left:11px!important;font-size:11px!important}
  .gi-footer-bottom{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;margin-top:14px!important;padding-top:12px!important}
  .gi-footer-bottom p{font-size:10.25px!important;white-space:nowrap!important}
  .gi-footer .footer-language-switcher{width:auto!important;min-width:136px!important;max-width:158px!important}
  .gi-footer .footer-language-switcher .lang-select{min-height:34px!important;padding:6px 29px 6px 10px!important;font-size:10.5px!important;border-radius:10px!important}
  .gi-hero-mini-action{font-size:12.5px!important}
}
@media(max-width:380px){
  .gi-footer-shell{padding:14px 12px!important}
  .gi-footer-navgrid{gap:12px!important}
  .gi-footer-navcol{gap:11px!important}
  .gi-footer .footer-links a{font-size:10.9px!important}
  .gi-footer-bottom{grid-template-columns:1fr!important;align-items:start!important}
  .gi-footer .footer-language-switcher{min-width:0!important;max-width:170px!important}
}

/* Keep the embedded V8Chat launcher visually inside the monochrome GI shell. */
iframe[src*="v8chat.com"],iframe[src*="widget.v8chat"],[data-v8chat-widget] iframe{filter:grayscale(1) saturate(0) contrast(.96)!important}


/* 1.3.2 — selected framed GI mark, dimensional white header tile and symbolic micro-markers */
.brand{gap:13px!important}
.brand>.gi-brand-mark{
  position:relative;display:grid!important;place-items:center;flex:0 0 auto;
  width:68px;height:68px;padding:7px;border-radius:19px;
  background:linear-gradient(145deg,#ffffff 0%,#f7f8fa 43%,#e8eaed 100%);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:
    0 16px 34px rgba(0,0,0,.32),
    0 5px 10px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -1px 0 rgba(12,14,18,.10);
  transform:translateZ(0);
  overflow:visible;
}
.brand>.gi-brand-mark:before{
  content:"";position:absolute;inset:4px;border-radius:15px;pointer-events:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -10px 22px rgba(80,85,92,.055);
}
.brand>.gi-brand-mark:after{
  content:"";position:absolute;left:14%;right:14%;bottom:-8px;height:12px;border-radius:50%;
  background:rgba(0,0,0,.36);filter:blur(8px);z-index:-1;pointer-events:none;
}
.brand>.gi-brand-mark img{
  width:54px!important;height:54px!important;object-fit:contain!important;
  filter:drop-shadow(0 5px 4px rgba(0,0,0,.20)) drop-shadow(0 13px 12px rgba(0,0,0,.12))!important;
}
.brand>span:last-child{font-weight:900!important;letter-spacing:-.035em!important}

/* Replace former red/white decorative dots/diamonds with quiet Material-style symbols. */
.eyebrow:before,.kicker:before{
  content:""!important;width:18px!important;height:18px!important;flex:0 0 18px!important;border-radius:0!important;
  background:#cfd2d6!important;box-shadow:none!important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 3.5 1.7 4.8 4.8 1.7-4.8 1.7L12 16.5l-1.7-4.8L5.5 10l4.8-1.7L12 3.5ZM18.5 15.5l.7 2 2 .7-2 .7-.7 2-.7-2-2-.7 2-.7.7-2Z' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 3.5 1.7 4.8 4.8 1.7-4.8 1.7L12 16.5l-1.7-4.8L5.5 10l4.8-1.7L12 3.5ZM18.5 15.5l.7 2 2 .7-2 .7-.7 2-.7-2-2-.7 2-.7.7-2Z' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
.eyebrow .pulse{display:none!important}
.card li:before,.wp-example-card li:before,.gi-product-card li:before{
  width:15px!important;height:15px!important;left:0!important;top:50%!important;border-radius:0!important;
  background:#bfc3c8!important;transform:translateY(-50%)!important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='white' stroke-width='1.55' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='white' stroke-width='1.55' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
.gi-badge:before{
  width:14px!important;height:14px!important;border-radius:0!important;background:#c7cbd0!important;box-shadow:none!important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.5 5.5 6.2v4.9c0 4.5 2.7 7.3 6.5 9.4 3.8-2.1 6.5-4.9 6.5-9.4V6.2L12 3.5Z' fill='none' stroke='white' stroke-width='1.45' stroke-linejoin='round'/%3E%3Cpath d='m8.5 12 2.2 2.2 4.8-5' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.5 5.5 6.2v4.9c0 4.5 2.7 7.3 6.5 9.4 3.8-2.1 6.5-4.9 6.5-9.4V6.2L12 3.5Z' fill='none' stroke='white' stroke-width='1.45' stroke-linejoin='round'/%3E%3Cpath d='m8.5 12 2.2 2.2 4.8-5' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
.hero-proof-wide div:before{
  border-radius:12px!important;background:#d0d3d7!important;box-shadow:none!important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.5 5.5 6.2v4.9c0 4.5 2.7 7.3 6.5 9.4 3.8-2.1 6.5-4.9 6.5-9.4V6.2L12 3.5Z' fill='none' stroke='white' stroke-width='1.45' stroke-linejoin='round'/%3E%3Cpath d='m8.5 12 2.2 2.2 4.8-5' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/22px 22px no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.5 5.5 6.2v4.9c0 4.5 2.7 7.3 6.5 9.4 3.8-2.1 6.5-4.9 6.5-9.4V6.2L12 3.5Z' fill='none' stroke='white' stroke-width='1.45' stroke-linejoin='round'/%3E%3Cpath d='m8.5 12 2.2 2.2 4.8-5' fill='none' stroke='white' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/22px 22px no-repeat!important;
}

/* Footer/logo alignment after the new framed symbol. */
.gi-footer-brandmark img{object-fit:contain!important}

@media(max-width:680px){
  header .nav{padding-top:12px!important;padding-bottom:12px!important}
  .brand{gap:11px!important}
  .brand>.gi-brand-mark{width:62px;height:62px;padding:6px;border-radius:18px}
  .brand>.gi-brand-mark:before{inset:4px;border-radius:14px}
  .brand>.gi-brand-mark img{width:50px!important;height:50px!important}
  .brand>span:last-child{font-size:17px!important;line-height:1.05!important}
  .menu-toggle{width:52px!important;height:52px!important}
}
@media(max-width:390px){
  .brand>.gi-brand-mark{width:58px;height:58px;border-radius:17px}
  .brand>.gi-brand-mark img{width:47px!important;height:47px!important}
  .brand>span:last-child{font-size:16px!important}
}


/* 1.3.3 — refined framed mark, calmer graphic surfaces, focused 4-field contact form */
.brand>.gi-brand-mark{
  width:64px;height:64px;padding:6px;border-radius:17px;
  background:linear-gradient(145deg,#fff 0%,#fbfbfc 52%,#e8eaed 100%);
  border:1px solid rgba(255,255,255,.96);
  box-shadow:0 13px 26px rgba(0,0,0,.30),0 3px 7px rgba(0,0,0,.18),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(7,9,12,.09)!important;
}
.brand>.gi-brand-mark:before{inset:3px;border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.98),inset 0 -9px 18px rgba(54,59,66,.045)!important}
.brand>.gi-brand-mark:after{left:18%;right:18%;bottom:-6px;height:9px;background:rgba(0,0,0,.30);filter:blur(7px)!important}
.brand>.gi-brand-mark img{width:55px!important;height:55px!important;filter:drop-shadow(0 3px 2px rgba(0,0,0,.18)) drop-shadow(0 8px 8px rgba(0,0,0,.10))!important}

/* One quiet visual language: shallow depth, neutral icon plates, no decorative colour noise. */
.icon,.gi-presence-icon,.gi-security-suite-icon,.module-icon,.step-icon,.trust-icon,.proof-icon,.gi-product-hero-icon,.gi-corp-intro-icon,.wp-capability-card>span,.wp-example-label>span{
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.028))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:#d7d9dc!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.gi-hero-mini-product:before,.gi-product-card:after,.gi-project-card:after,.service-card:after,.module-card:after,.wp-capability-card:after{opacity:.52!important;filter:blur(12px)!important}
.gi-focus-visual,.visual,.service-hero-visual{box-shadow:0 24px 72px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035)!important}

/* Four visible inputs only: inquiry, name, email, message. */
.gi-contact-grid,.gi-contact-simple-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 18px!important;margin-top:16px!important}
.gi-contact-grid .full,.gi-contact-simple-grid .full{grid-column:1/-1!important}
.gi-contact-grid textarea,.gi-contact-simple-grid textarea{min-height:150px!important;resize:vertical!important}
.gi-contact-grid select{cursor:pointer}
.contact-box{box-shadow:0 24px 76px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035)!important}
.contact-box .section-head{margin-bottom:22px!important}
.contact-box .submit-row{margin-top:18px!important}
.contact-box .privacy-note{max-width:760px!important;margin-top:13px!important;font-size:12.5px!important;line-height:1.55!important;color:#9da1a8!important}

@media(max-width:680px){
  .brand>.gi-brand-mark{width:58px;height:58px;padding:5px;border-radius:16px}
  .brand>.gi-brand-mark:before{inset:3px;border-radius:13px}
  .brand>.gi-brand-mark img{width:50px!important;height:50px!important}
  .gi-contact-grid,.gi-contact-simple-grid{grid-template-columns:1fr!important;gap:13px!important}
  .gi-contact-grid .full,.gi-contact-simple-grid .full{grid-column:auto!important}
  .gi-contact-grid textarea,.gi-contact-simple-grid textarea{min-height:138px!important}
  .contact-box{padding:20px!important}
}
@media(max-width:390px){
  .brand>.gi-brand-mark{width:55px;height:55px;border-radius:15px}
  .brand>.gi-brand-mark img{width:47px!important;height:47px!important}
}


/* 1.3.4 — transparent header mark, Vercel-like hero stage and consistent hexagon rollout */
header .brand{gap:12px!important}
header .brand>.gi-brand-mark{
  width:auto!important;height:auto!important;padding:0!important;border-radius:0!important;
  background:none!important;border:0!important;box-shadow:none!important;overflow:visible!important;
}
header .brand>.gi-brand-mark:before,
header .brand>.gi-brand-mark:after{content:none!important;display:none!important}
header .brand>.gi-brand-mark img{
  width:50px!important;height:50px!important;object-fit:contain!important;
  filter:drop-shadow(0 7px 16px rgba(0,0,0,.24)) drop-shadow(0 2px 3px rgba(255,255,255,.04))!important;
}
header .brand>span:last-child{font-size:18px!important;line-height:1.02!important}

.gi-hero-product-stack{align-content:start!important}
.gi-hero-brand-stage{
  position:relative;display:grid;place-items:center;min-height:244px;padding:20px;
  border:1px solid rgba(255,255,255,.12);border-radius:30px;
  background:linear-gradient(150deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  box-shadow:0 26px 92px rgba(0,0,0,.24);overflow:hidden;
}
.gi-hero-brand-stage:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.12),transparent 52%),radial-gradient(circle at 18% 86%,rgba(255,255,255,.08),transparent 28%);
}
.gi-hero-brand-surface{
  position:relative;display:grid;place-items:center;width:min(100%,286px);aspect-ratio:1/1;
  border-radius:34px;background:linear-gradient(180deg,#ffffff 0%,#f5f6f8 54%,#ebedf0 100%);
  border:1px solid rgba(255,255,255,.95);
  box-shadow:inset 0 1px 0 rgba(255,255,255,1), inset 0 -1px 0 rgba(10,12,16,.08), 0 20px 42px rgba(0,0,0,.22), 0 6px 12px rgba(0,0,0,.10);
}
.gi-hero-brand-surface:after{
  content:"";position:absolute;left:18%;right:18%;bottom:-14px;height:16px;border-radius:50%;
  background:rgba(0,0,0,.18);filter:blur(11px);
}
.gi-hero-brand-surface img{
  position:relative;width:74%;height:74%;object-fit:contain;
  filter:drop-shadow(0 6px 4px rgba(0,0,0,.18)) drop-shadow(0 18px 24px rgba(0,0,0,.12));
}

.gi-footer-brandmark img{
  object-fit:contain!important;
  filter:drop-shadow(0 7px 18px rgba(0,0,0,.24));
}
.gi-footer .footer-links a,.gi-footer-mail,.gi-hero-mini-action,.gi-cashflow-module b,.gi-portfolio-card b{
  display:inline-flex!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important;
}
.gi-footer .footer-links a .svg-icon,.gi-footer-mail .svg-icon,.gi-hero-mini-action .svg-icon,.gi-cashflow-module b .svg-icon,.gi-portfolio-card b .svg-icon{flex:0 0 auto!important}
.gi-portfolio-logo--quoapi{height:auto!important;align-items:flex-start!important}
.gi-portfolio-logo--quoapi img{max-width:74px!important;max-height:74px!important}

@media(max-width:680px){
  header .brand{gap:10px!important}
  header .brand>.gi-brand-mark img{width:44px!important;height:44px!important}
  header .brand>span:last-child{font-size:16px!important}
  .gi-hero-brand-stage{min-height:196px!important;padding:16px!important;border-radius:26px!important}
  .gi-hero-brand-surface{width:min(100%,220px)!important;border-radius:28px!important}
  .gi-footer{padding:34px 0 104px!important}
  .gi-footer-shell{padding:18px 15px!important;border-radius:22px!important}
  .gi-footer-main{gap:20px!important}
  .gi-footer-navgrid{gap:18px 14px!important}
  .gi-footer-navcol{gap:14px!important}
  .gi-footer-group h3{margin-bottom:8px!important}
  .gi-footer .footer-links{gap:1px!important}
  .gi-footer .footer-links a{padding:5px 0!important;font-size:12.2px!important}
  .gi-footer-brandmark{gap:9px!important;margin-bottom:8px!important;font-size:17.5px!important}
  .gi-footer-brandmark img{width:38px!important;height:38px!important}
  .gi-footer-brand p{margin:0 0 6px!important;font-size:12px!important;line-height:1.45!important}
  .gi-footer-bottom{gap:10px!important;margin-top:18px!important;padding-top:14px!important}
}
@media(max-width:390px){
  header .brand>.gi-brand-mark img{width:40px!important;height:40px!important}
  header .brand>span:last-child{font-size:15px!important}
  .gi-hero-brand-stage{min-height:176px!important;padding:14px!important}
  .gi-hero-brand-surface{width:min(100%,198px)!important}
}


/* 1.3.5 — technical blue accent refresh, corrected logo placement and clearer validation styling */
:root{
  --gi-tech-blue:#258cff;
  --gi-tech-blue-strong:#1478f1;
  --gi-tech-blue-soft:#82c4ff;
  --blue:#258cff;
  --violet:#5a9cff;
  --red:#258cff;
  --red2:#78bbff;
}
body:before{
  background:
    radial-gradient(circle at 14% 14%,rgba(37,140,255,.17),transparent 31%),
    radial-gradient(circle at 86% 14%,rgba(115,188,255,.10),transparent 29%),
    radial-gradient(circle at 76% 82%,rgba(26,102,205,.11),transparent 33%),
    linear-gradient(135deg,#05070c,#09111b 52%,#0d141d)!important;
}
header,header.header-scrolled{background:rgba(7,10,16,.82)!important;border-color:rgba(92,144,214,.16)!important;box-shadow:0 10px 40px rgba(0,0,0,.18)!important}
.brand{gap:14px!important}
.brand>.gi-brand-mark{
  width:78px!important;height:78px!important;padding:0!important;border-radius:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;
}
.brand>.gi-brand-mark:before,.brand>.gi-brand-mark:after{content:none!important;display:none!important}
.brand>.gi-brand-mark img{
  width:58px!important;height:58px!important;object-fit:contain!important;
  filter:drop-shadow(0 10px 24px rgba(37,140,255,.16)) drop-shadow(0 3px 8px rgba(0,0,0,.28))!important;
}
.gi-footer-brandmark img{
  width:46px!important;height:46px!important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.28)) drop-shadow(0 0 1px rgba(255,255,255,.12))!important;
}
.brand>span:last-child{font-weight:900!important;letter-spacing:-.038em!important}
@media(max-width:680px){
  .brand>.gi-brand-mark{width:72px!important;height:72px!important}
  .brand>.gi-brand-mark img{width:54px!important;height:54px!important}
  .gi-footer-brandmark img{width:40px!important;height:40px!important}
}
.gi-hero-brand-stage,.gi-hero-brand-surface{display:none!important}
.eyebrow:before,.kicker:before{
  background:linear-gradient(135deg,var(--gi-tech-blue-soft),var(--gi-tech-blue-strong))!important;
  box-shadow:0 0 18px rgba(37,140,255,.22)!important;
}
.gradtext{background:linear-gradient(112deg,#fff 0%,#f0f6ff 40%,#98cfff 74%,#5ea5ff 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
.btn-primary{background:linear-gradient(135deg,#ffffff,#eef5ff)!important;color:#081019!important;box-shadow:0 18px 52px rgba(13,58,120,.16),0 8px 24px rgba(37,140,255,.12)!important}
.btn-primary:hover{box-shadow:0 22px 64px rgba(13,58,120,.24),0 10px 28px rgba(37,140,255,.18)!important}
.btn-secondary,.btn-ghost,.lang-select,.menu-toggle{border-color:rgba(93,142,210,.18)!important}
.btn-secondary:hover,.btn-ghost:hover,.menu-toggle:hover{border-color:rgba(119,175,244,.32)!important;box-shadow:0 8px 24px rgba(37,140,255,.09)!important}
.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-focus-visual,.gi-presence-callout-inner,.ai-agency-proof-shell,.service-ai-intents .wrap,.cta-panel,#contact .cta-panel,
.gi-security-suite-card,.wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.company-system-visual,.system-card,.contact-box{
  border-color:rgba(94,145,214,.18)!important;
  background:radial-gradient(circle at 12% 8%,rgba(37,140,255,.13),transparent 32%),radial-gradient(circle at 88% 100%,rgba(116,188,255,.08),transparent 38%),linear-gradient(145deg,rgba(24,27,34,.97),rgba(10,13,19,.94))!important;
  box-shadow:0 30px 92px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.055)!important;
}
.gi-product-card-featured:before{background:linear-gradient(110deg,transparent 0 45%,rgba(101,168,244,.10) 51%,transparent 57%)!important}
.gi-product-card-featured,.gi-product-card-featured h2,.gi-product-card-featured p,.gi-product-card-featured li{position:relative}
.gi-hero-mini-product--growth,.gi-hero-mini-product--cashflow,.gi-product-status,.gi-product-detail-meta b,.visual-core-card span{border-color:rgba(105,164,236,.22)!important;background:linear-gradient(145deg,rgba(22,35,52,.86),rgba(12,16,24,.86))!important;color:#d7e9ff!important}
.gi-hero-mini-tag,.gi-product-status,.gi-product-detail-meta span,.wp-rocketboot-copy small,.visual-status-row span{color:#bcd8f7!important}
.gi-presence-icon,.gi-security-suite-icon,.visual-pillar .svg-icon,.module-icon,.step-icon,.trust-icon,.proof-icon,.gi-product-hero-icon,.gi-project-features li .svg-icon,.gi-security-suite-features .svg-icon,.visual-status-row .svg-icon,.system-card span{
  color:#89c3ff!important;
}
.gi-presence-icon,.gi-security-suite-icon,.visual-pillar .svg-icon,.system-card span{
  background:linear-gradient(145deg,rgba(41,82,138,.34),rgba(12,26,48,.34))!important;
  border-color:rgba(101,162,236,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 24px rgba(15,58,120,.16)!important;
}
.text-link,.inline-cta,.gi-hero-mini-action,.gi-project-open,.wp-rocketboot-action,.gi-footer .footer-links a:hover,.gi-footer-mail:hover{color:#d8ebff!important}
.text-link:hover,.inline-cta:hover,.gi-hero-mini-action:hover,.gi-project-open:hover,.wp-rocketboot-action:hover{color:#88c4ff!important}
.inline-cta{border-bottom-color:rgba(104,166,241,.42)!important}
.gi-footer-shell{background:radial-gradient(circle at 18% 18%,rgba(37,140,255,.08),transparent 32%),linear-gradient(145deg,rgba(14,17,24,.97),rgba(8,10,15,.95))!important;border-color:rgba(93,143,212,.18)!important}
.gi-footer-mail{border-color:rgba(97,150,222,.22)!important;background:rgba(15,22,34,.82)!important}
.gi-footer .footer-links a,.gi-footer-bottom p{color:#b7c7dd!important}
.gi-footer .footer-links a>.svg-icon{color:#76b6ff!important}
.contact-box input,.contact-box textarea,.contact-box select{border-color:rgba(93,143,212,.28)!important;background:#0e141c!important}
.contact-box input:hover,.contact-box textarea:hover,.contact-box select:hover{background:#111a24!important;border-color:rgba(125,181,250,.42)!important}
.contact-box input:focus,.contact-box textarea:focus,.contact-box select:focus{background:#111a24!important;border-color:var(--gi-tech-blue)!important;box-shadow:0 0 0 4px rgba(37,140,255,.16),0 14px 38px rgba(13,55,116,.22)!important}
.form-alert{border-color:rgba(91,145,218,.28)!important;background:linear-gradient(135deg,rgba(17,37,66,.34),rgba(9,16,26,.54))!important;color:#e6f1ff!important}
.form-alert.is-error{border-color:rgba(92,150,226,.62)!important;background:rgba(16,39,74,.72)!important;color:#eff7ff!important}
.form-alert.is-success{border-color:rgba(97,159,235,.44)!important;background:rgba(15,41,76,.58)!important;color:#f4f9ff!important}
.field-error{color:#95c7ff!important}
.field.has-error input,.field.has-error textarea,.field.has-error select{border-color:rgba(37,140,255,.82)!important;box-shadow:0 0 0 4px rgba(37,140,255,.16),0 14px 36px rgba(14,56,117,.18)!important}
.field.has-error label{color:#dfeeff!important}
.gi-project-logo.product-logo-quoapi{padding:0!important;background:transparent!important;border-color:rgba(93,143,212,.22)!important}
.gi-project-logo.product-logo-quoapi img{object-fit:contain!important;border-radius:22px!important;background:transparent!important}
.map-core-ring.dashed{stroke:rgba(120,180,248,.28)!important}
.system-terminal i{border-color:rgba(119,177,244,.42)!important;color:#97caff!important}
.system-terminal i:before{color:#9fd1ff!important}


/* 1.3.6 — robust scroll reveal + dedicated framed footer asset */
.reveal{transition-duration:.56s!important;transition-timing-function:cubic-bezier(.22,.72,.24,1)!important;will-change:opacity,transform}
.reveal.in{will-change:auto}
.gi-footer-brandmark img{width:48px!important;height:48px!important;object-fit:contain!important}
@media(max-width:680px){.gi-footer-brandmark img{width:42px!important;height:42px!important}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;transition:none!important}}


/* 1.3.7 — slightly larger header mark */
header .brand>.gi-brand-mark{width:86px!important;height:86px!important}
header .brand>.gi-brand-mark img{width:64px!important;height:64px!important}
@media(max-width:680px){
  header .brand>.gi-brand-mark{width:78px!important;height:78px!important}
  header .brand>.gi-brand-mark img{width:60px!important;height:60px!important}
}
@media(max-width:390px){
  header .brand>.gi-brand-mark{width:74px!important;height:74px!important}
  header .brand>.gi-brand-mark img{width:57px!important;height:57px!important}
}


/* 1.3.9 — smaller aligned header mark + rounded QuoAPI card treatment */
header .nav{
  width:min(1180px,calc(100% - 40px))!important;
  margin:0 auto!important;
  padding:12px 0!important;
  align-items:center!important;
}
header .brand{
  gap:12px!important;
  min-width:0!important;
  margin-left:0!important;
}
header .brand>.gi-brand-mark{
  width:76px!important;
  height:76px!important;
  display:grid!important;
  place-items:center!important;
}
header .brand>.gi-brand-mark img{
  width:56px!important;
  height:56px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 18px rgba(37,140,255,.14)) drop-shadow(0 3px 8px rgba(0,0,0,.26))!important;
}
header .brand>span:last-child{
  font-size:17px!important;
  line-height:1.02!important;
}
@media(max-width:680px){
  header .nav{width:min(100% - 28px,1180px)!important;padding:10px 0!important}
  header .brand{gap:10px!important}
  header .brand>.gi-brand-mark{width:68px!important;height:68px!important}
  header .brand>.gi-brand-mark img{width:50px!important;height:50px!important}
  header .brand>span:last-child{font-size:15px!important}
}
@media(max-width:390px){
  header .brand>.gi-brand-mark{width:64px!important;height:64px!important}
  header .brand>.gi-brand-mark img{width:47px!important;height:47px!important}
  header .brand>span:last-child{font-size:14px!important}
}

.gi-project-logo.product-logo-quoapi{
  padding:6px!important;
  border-radius:24px!important;
  background:linear-gradient(145deg,rgba(18,31,50,.92),rgba(8,13,22,.95))!important;
  border:1px solid rgba(93,143,212,.26)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 16px 42px rgba(0,0,0,.28)!important;
}
.gi-project-logo.product-logo-quoapi img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:18px!important;
  background:transparent!important;
}
@media(max-width:560px){
  .gi-project-logo.product-logo-quoapi{padding:5px!important;border-radius:20px!important}
  .gi-project-logo.product-logo-quoapi img{border-radius:15px!important}
}
.gi-portfolio-logo--quoapi{
  border-radius:24px!important;
  padding:6px!important;
  background:linear-gradient(145deg,rgba(18,31,50,.92),rgba(8,13,22,.95))!important;
  border:1px solid rgba(93,143,212,.24)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 12px 32px rgba(0,0,0,.24)!important;
}
.gi-portfolio-logo--quoapi img{
  max-width:76px!important;
  max-height:76px!important;
  object-fit:contain!important;
  border-radius:18px!important;
}


/* 1.3.10 — left-shifted mobile header, inline arrows, smaller square QuoAPI logo background */
header .brand{
  margin-left:-6px!important;
  gap:9px!important;
}
header .brand>.gi-brand-mark{
  width:64px!important;
  height:64px!important;
}
header .brand>.gi-brand-mark img{
  width:50px!important;
  height:50px!important;
}
header .brand>span:last-child{
  margin-left:-1px!important;
  font-size:14px!important;
}
@media(min-width:681px){
  header .brand{margin-left:-4px!important;gap:10px!important}
  header .brand>.gi-brand-mark{width:68px!important;height:68px!important}
  header .brand>.gi-brand-mark img{width:52px!important;height:52px!important}
  header .brand>span:last-child{font-size:15px!important}
}

.gi-project-open,
.gi-portfolio-card b,
.wp-rocketboot-action,
.text-link,
.inline-cta,
.gi-hero-mini-action{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
  flex-wrap:nowrap!important;
  width:fit-content!important;
  max-width:100%!important;
}
.gi-project-open>.svg-icon,
.gi-portfolio-card b>.svg-icon,
.wp-rocketboot-action>.svg-icon,
.text-link>.svg-icon,
.inline-cta>.svg-icon,
.gi-hero-mini-action>.svg-icon{
  margin-left:0!important;
  flex:0 0 auto!important;
}
.gi-portfolio-card b{margin-top:auto!important;padding-top:18px!important}

.gi-project-logo.product-logo-quoapi{
  width:64px!important;
  height:64px!important;
  flex:0 0 64px!important;
  padding:4px!important;
  border-radius:18px!important;
  background:#08111f!important;
  border-color:rgba(93,143,212,.24)!important;
}
.gi-project-logo.product-logo-quoapi img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:15px!important;
  background:transparent!important;
}
.gi-portfolio-logo--quoapi{
  display:grid!important;
  place-items:center!important;
  width:64px!important;
  height:64px!important;
  max-width:64px!important;
  flex:0 0 64px!important;
  padding:4px!important;
  border-radius:18px!important;
  background:#08111f!important;
  border:1px solid rgba(93,143,212,.24)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.gi-portfolio-logo--quoapi img{
  width:56px!important;
  height:56px!important;
  max-width:56px!important;
  max-height:56px!important;
  object-fit:contain!important;
  border-radius:14px!important;
}
@media(max-width:560px){
  .gi-project-logo.product-logo-quoapi{width:58px!important;height:58px!important;flex-basis:58px!important;border-radius:16px!important;padding:4px!important}
  .gi-project-logo.product-logo-quoapi img{border-radius:13px!important}
  .gi-portfolio-logo--quoapi{width:58px!important;height:58px!important;max-width:58px!important;flex-basis:58px!important;border-radius:16px!important}
  .gi-portfolio-logo--quoapi img{width:50px!important;height:50px!important;max-width:50px!important;max-height:50px!important;border-radius:12px!important}
}


/* 1.4.0 — full-site silver/blue hexagon brand refresh */
:root{
  --gi-tech-blue:#258cff;
  --gi-tech-blue-strong:#1a7cff;
  --gi-tech-blue-soft:#8fd8ff;
  --gi-ice:#dff4ff;
  --gi-deep:#08111d;
  --gi-panel:#0b1522;
}
body:before{
  background:
    radial-gradient(circle at 14% 16%, rgba(37,140,255,.16), transparent 30%),
    radial-gradient(circle at 80% 10%, rgba(143,216,255,.09), transparent 28%),
    radial-gradient(circle at 72% 78%, rgba(38,112,216,.11), transparent 34%),
    linear-gradient(135deg,#050912 0%,#091321 42%,#08101c 100%)!important;
}
header,header.header-scrolled{
  background:rgba(6,10,18,.84)!important;
  border-color:rgba(118,182,255,.12)!important;
  box-shadow:0 14px 40px rgba(0,0,0,.22)!important;
}
header .nav{width:min(1180px,calc(100% - 32px))!important;padding:12px 0!important}
.brand{gap:10px!important;margin-left:-4px!important}
.brand>.gi-brand-mark{width:66px!important;height:66px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.brand>.gi-brand-mark img{width:50px!important;height:50px!important;object-fit:contain!important;filter:drop-shadow(0 10px 22px rgba(37,140,255,.14)) drop-shadow(0 2px 8px rgba(0,0,0,.28))!important}
.brand>span:last-child{font-size:15px!important;line-height:1.02!important;font-weight:900!important;letter-spacing:-.035em!important}
@media(max-width:680px){
  header .nav{width:min(100% - 24px,1180px)!important;padding:10px 0!important}
  .brand{margin-left:-6px!important;gap:8px!important}
  .brand>.gi-brand-mark{width:62px!important;height:62px!important}
  .brand>.gi-brand-mark img{width:48px!important;height:48px!important}
  .brand>span:last-child{font-size:14px!important}
}
.gi-footer-brandmark img{width:44px!important;height:44px!important;object-fit:contain!important;filter:drop-shadow(0 8px 16px rgba(0,0,0,.3))!important}
.gi-footer-shell{
  background:
    radial-gradient(circle at 16% 18%,rgba(37,140,255,.08),transparent 30%),
    radial-gradient(circle at 86% 80%,rgba(143,216,255,.05),transparent 34%),
    linear-gradient(145deg,rgba(12,18,28,.97),rgba(7,10,16,.95))!important;
  border-color:rgba(101,162,236,.16)!important;
}
.gradtext{
  background:linear-gradient(112deg,#ffffff 0%, #eff7ff 38%, #9bd7ff 71%, #4f9cff 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;
}
.eyebrow:before,.kicker:before{
  background:linear-gradient(135deg,var(--gi-tech-blue-soft),var(--gi-tech-blue))!important;
  box-shadow:0 0 18px rgba(37,140,255,.18)!important;
}
.btn-primary{
  background:linear-gradient(135deg,#dff6ff 0%, #ffffff 54%, #d9e9ff 100%)!important;
  color:#08111d!important;
  border:1px solid rgba(133,201,255,.26)!important;
  box-shadow:0 18px 46px rgba(9,31,67,.18),0 8px 20px rgba(37,140,255,.10)!important;
}
.btn-primary:hover{box-shadow:0 22px 56px rgba(9,31,67,.24),0 10px 28px rgba(37,140,255,.14)!important}
.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-focus-visual,.gi-presence-callout-inner,.ai-agency-proof-shell,.service-ai-intents .wrap,.cta-panel,#contact .cta-panel,
.gi-security-suite-card,.wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.company-system-visual,.system-card,.contact-box{
  border-color:rgba(96,156,230,.17)!important;
  background:
    radial-gradient(circle at 12% 8%,rgba(37,140,255,.12),transparent 30%),
    radial-gradient(circle at 88% 96%,rgba(143,216,255,.07),transparent 34%),
    linear-gradient(145deg,rgba(17,23,34,.97),rgba(9,12,18,.95))!important;
}
.gi-product-status,.gi-hero-mini-product--growth,.gi-hero-mini-product--cashflow,.gi-product-detail-meta b,.visual-core-card span{
  background:linear-gradient(145deg,rgba(17,35,60,.82),rgba(11,18,28,.82))!important;
  border-color:rgba(109,176,248,.24)!important;
  color:#d7ebff!important;
}
.gi-presence-icon,.gi-security-suite-icon,.visual-pillar .svg-icon,.module-icon,.step-icon,.trust-icon,.proof-icon,.gi-product-hero-icon,.gi-project-features li .svg-icon,.gi-security-suite-features .svg-icon,.visual-status-row .svg-icon,.system-card span,
.gi-footer .footer-links a>.svg-icon{color:#8ccfff!important}
.gi-project-open,.text-link,.inline-cta,.gi-hero-mini-action,.wp-rocketboot-action,.gi-footer-mail:hover{color:#e3f2ff!important}
.gi-project-open:hover,.text-link:hover,.inline-cta:hover,.gi-hero-mini-action:hover,.wp-rocketboot-action:hover{color:#8fd8ff!important}
.gi-project-logo.product-logo-quoapi{
  width:66px!important;height:66px!important;flex:0 0 66px!important;
  padding:4px!important;border-radius:16px!important;
  background:#08111d!important;border:1px solid rgba(100,162,236,.24)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.gi-project-logo.product-logo-quoapi img{width:100%!important;height:100%!important;object-fit:contain!important;border-radius:13px!important;background:transparent!important}
.form-alert,.form-alert.is-error,.field-error,.field.has-error label{
  color:#eaf6ff!important;
}
.field.has-error input,.field.has-error textarea,.field.has-error select,
.contact-box input:focus,.contact-box textarea:focus,.contact-box select:focus{
  border-color:var(--gi-tech-blue)!important;
  box-shadow:0 0 0 4px rgba(37,140,255,.14),0 12px 34px rgba(13,55,116,.18)!important;
}


/* 1.4.1 — stronger GI presence across all public page types */
:root{
  --gi-tech-blue:#258cff;
  --gi-tech-blue-strong:#1478f1;
  --gi-tech-blue-soft:#86d4ff;
  --gi-blue-violet:#8a9cff;
  --gi-silver:#f4f7fa;
  --gi-soft-silver:#aab4c2;
  --gi-deep:#07101b;
}

/* Brand texture: subtle fixed Infinity/Hexagon lattice, masked so text stays clean. */
.gi-infinity-grid{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:url('/assets/gi-infinity-hex-grid.svg');
  background-size:280px 242px;
  background-position:50% -38px;
  background-repeat:repeat;
  opacity:.052;
  -webkit-mask-image:radial-gradient(ellipse 105% 76% at 50% 12%,#000 0%,rgba(0,0,0,.92) 34%,rgba(0,0,0,.48) 64%,transparent 100%);
  mask-image:radial-gradient(ellipse 105% 76% at 50% 12%,#000 0%,rgba(0,0,0,.92) 34%,rgba(0,0,0,.48) 64%,transparent 100%);
}
main,footer{position:relative;z-index:1}
header{z-index:1000!important}
@media(max-width:680px){
  .gi-infinity-grid{background-size:220px 190px;opacity:.044;background-position:48% -20px}
}
@media(prefers-reduced-motion:reduce){.gi-infinity-grid{transform:none!important}}

/* More dimensional global atmosphere without turning the page into a neon UI. */
body:before{
  background:
    radial-gradient(circle at 12% 10%,rgba(37,140,255,.20),transparent 29%),
    radial-gradient(circle at 82% 11%,rgba(134,212,255,.11),transparent 27%),
    radial-gradient(circle at 74% 74%,rgba(138,156,255,.065),transparent 31%),
    radial-gradient(circle at 18% 82%,rgba(37,140,255,.07),transparent 28%),
    linear-gradient(135deg,#040812 0%,#07111f 38%,#091321 66%,#070d17 100%)!important;
}

/* Home hero: stronger focal hierarchy while preserving the existing copy. */
.gi-home-page .gi-conversion-hero{
  isolation:isolate;
  padding-top:88px!important;
  padding-bottom:62px!important;
}
.gi-home-page .gi-conversion-hero:before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 0 auto;
  height:min(720px,78vh);
  pointer-events:none;
  background:
    radial-gradient(ellipse 55% 48% at 14% 26%,rgba(37,140,255,.20),transparent 66%),
    radial-gradient(ellipse 45% 38% at 78% 22%,rgba(134,212,255,.10),transparent 69%),
    linear-gradient(115deg,rgba(255,255,255,.018),transparent 42%);
  filter:saturate(1.08);
}
.gi-home-page .gi-conversion-hero .hero-copy{position:relative}
.gi-home-page .gi-conversion-hero .hero-copy:after{
  content:"";
  display:block;
  width:96px;
  height:2px;
  margin-top:30px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--gi-tech-blue),var(--gi-tech-blue-soft),transparent);
  box-shadow:0 0 24px rgba(37,140,255,.24);
}
.gi-home-page .gi-conversion-hero h1 .gradtext,
.gradtext{
  background:linear-gradient(112deg,#ffffff 0%,#f4f9ff 33%,#a7ddff 63%,#4d9cff 84%,#8a9cff 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}
.gi-home-page .gi-conversion-hero .lead{color:#eef5ff!important}
.gi-home-page .gi-conversion-hero .hero-note{
  border-left-color:rgba(134,212,255,.60)!important;
  color:#cbd8e8!important;
}

/* Primary actions regain a premium CI gradient, secondary actions stay calm. */
.btn-primary{
  background:linear-gradient(118deg,#dff6ff 0%,#ffffff 46%,#dbeaff 72%,#ccd2ff 100%)!important;
  color:#07101b!important;
  border-color:rgba(134,212,255,.38)!important;
  box-shadow:0 18px 48px rgba(8,31,68,.24),0 10px 28px rgba(37,140,255,.13),inset 0 1px 0 rgba(255,255,255,.96)!important;
}
.btn-primary:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 24px 66px rgba(8,31,68,.30),0 12px 36px rgba(37,140,255,.19),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
.btn-secondary,.btn-ghost{
  background:linear-gradient(145deg,rgba(12,22,35,.82),rgba(8,13,21,.76))!important;
  border-color:rgba(104,167,239,.22)!important;
}
.btn-secondary:hover,.btn-ghost:hover{border-color:rgba(134,212,255,.40)!important;background:rgba(18,31,48,.88)!important}

/* Kicker / pill language: recognizable but restrained. */
.eyebrow,.kicker,
[class$="-kicker"],[class*="-kicker "]{
  border-color:rgba(111,174,244,.22)!important;
  background:linear-gradient(145deg,rgba(16,28,44,.80),rgba(9,15,24,.78))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 12px 34px rgba(0,0,0,.14)!important;
}
.eyebrow:before,.kicker:before{
  background:linear-gradient(135deg,var(--gi-tech-blue-soft),var(--gi-tech-blue),var(--gi-blue-violet))!important;
  box-shadow:0 0 20px rgba(37,140,255,.22)!important;
}

/* Stronger but generic hero treatment for all subpage families. */
body.gi-subpage main#top::before{
  background:
    radial-gradient(ellipse 70% 30% at 7% 3%,rgba(37,140,255,.20) 0%,rgba(37,140,255,.07) 35%,transparent 72%),
    radial-gradient(ellipse 66% 28% at 94% 3%,rgba(134,212,255,.13) 0%,rgba(134,212,255,.05) 38%,transparent 75%),
    radial-gradient(ellipse 56% 24% at 82% 42%,rgba(138,156,255,.075),transparent 77%),
    linear-gradient(180deg,#0a1422 0%,#09111c 28%,#080e17 62%,#070c14 100%)!important;
}
body.gi-subpage main#top::after{
  background-image:url('/assets/gi-infinity-hex-grid.svg')!important;
  background-size:300px 260px!important;
  opacity:.040!important;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,.40) 48%,rgba(0,0,0,.12) 78%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,.40) 48%,rgba(0,0,0,.12) 78%,transparent 100%)!important;
}
body.gi-subpage :is(.hero-conversion h1,.gi-product-overview-hero h1,.gi-product-detail-hero h1,.data-hero h1,.data-detail-hero h1,.gi-corp-hero h1,.gi-reference-page h1){
  background:linear-gradient(112deg,#fff 0%,#edf7ff 54%,#91d1ff 83%,#6e9eff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
  text-shadow:0 18px 50px rgba(0,0,0,.14);
}
body.gi-subpage :is(.lead,.section-text,.gi-project-description,.gi-corp-intro p,.data-main p){max-width:76ch}

/* Generic section rhythm: clearer starts and stronger hierarchy on every page. */
.section-head{position:relative;padding-top:4px}
.section-head:after{
  content:"";
  display:block;
  width:72px;
  height:2px;
  margin-top:20px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(37,140,255,.95),rgba(134,212,255,.62),transparent);
  opacity:.72;
}
.section-head h2{letter-spacing:-.058em!important}
section{scroll-margin-top:94px}

/* Featured surfaces: stronger top light, deeper body, consistent across home/product/data/corporate/service cards. */
:is(.card,.panel,.product,.step,.trust-item,.contact-box,.system-card,.ai-usecase-card,.ai-decision-card,.cta-panel,
.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-focus-visual,.gi-presence-callout-inner,
.gi-project-card,.gi-security-suite-card,.gi-corp-card,.gi-corp-intro,.data-card,.data-flow-card,.data-main,.data-side,
.wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.company-system-visual){
  border-color:rgba(101,165,236,.18)!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(64,145,238,.12),transparent 31%),
    radial-gradient(circle at 92% 100%,rgba(134,212,255,.055),transparent 34%),
    linear-gradient(152deg,rgba(18,25,36,.96),rgba(8,12,19,.94))!important;
  box-shadow:0 28px 84px rgba(0,0,0,.27),inset 0 1px 0 rgba(255,255,255,.055)!important;
}
:is(.card,.panel,.product,.step,.trust-item,.contact-box,.system-card,.ai-usecase-card,.ai-decision-card,.cta-panel,
.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-project-card,.gi-security-suite-card,.gi-corp-card,.data-card){position:relative;overflow:hidden}
:is(.card,.panel,.product,.step,.trust-item,.contact-box,.system-card,.ai-usecase-card,.ai-decision-card,.cta-panel,
.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-project-card,.gi-security-suite-card,.gi-corp-card,.data-card):after{
  content:"";
  position:absolute;
  left:7%;right:7%;top:-1px;height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(134,212,255,.42),rgba(255,255,255,.22),transparent);
  opacity:.72;
}

/* Featured home/product surfaces get an extra degree of priority. */
:is(.gi-product-card-featured,.gi-focus-card--growth,.gi-product-hero-card,.gi-presence-callout-inner){
  border-color:rgba(104,175,250,.26)!important;
  box-shadow:0 34px 105px rgba(0,0,0,.32),0 0 54px rgba(37,140,255,.055),inset 0 1px 0 rgba(255,255,255,.07)!important;
}

/* Icon surfaces echo the metallic/technical mark rather than plain grey. */
:is(.icon,.step-icon,.trust-icon,.gi-presence-icon,.gi-security-suite-icon,.gi-product-card-icon,.gi-product-hero-icon,.module-icon,.data-card-icon,.gi-corp-intro-icon,.gi-corp-card>span){
  color:#bfe4ff!important;
  border-color:rgba(112,178,248,.28)!important;
  background:linear-gradient(145deg,rgba(36,75,125,.34),rgba(10,22,39,.46))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 12px 30px rgba(4,20,44,.24)!important;
}

/* Call-to-action copy and arrows should feel deliberate and remain inline. */
:is(.gi-project-open,.gi-portfolio-card b,.wp-rocketboot-action,.text-link,.inline-cta,.gi-hero-mini-action,.data-card b){
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  width:fit-content!important;
  color:#e4f3ff!important;
}
:is(.gi-project-open,.gi-portfolio-card b,.wp-rocketboot-action,.text-link,.inline-cta,.gi-hero-mini-action,.data-card b):hover{color:#8fd8ff!important}

/* Footer stays quieter than the hero but visibly part of the same brand system. */
.gi-footer-shell{
  background:
    radial-gradient(circle at 12% 14%,rgba(37,140,255,.085),transparent 28%),
    radial-gradient(circle at 88% 82%,rgba(134,212,255,.04),transparent 32%),
    linear-gradient(145deg,rgba(12,18,28,.975),rgba(6,10,16,.96))!important;
  border-color:rgba(100,162,234,.17)!important;
}
.gi-footer-brandmark{color:#fff!important}
.gi-footer .footer-links a:hover,.gi-footer-mail:hover{color:#cceaff!important}

/* Mobile keeps the stronger presence without overwhelming the viewport. */
@media(max-width:680px){
  .gi-home-page .gi-conversion-hero{padding-top:58px!important;padding-bottom:40px!important}
  .gi-home-page .gi-conversion-hero:before{height:560px;background:radial-gradient(ellipse 74% 42% at 16% 20%,rgba(37,140,255,.17),transparent 67%),radial-gradient(ellipse 58% 30% at 88% 28%,rgba(134,212,255,.08),transparent 72%)}
  .gi-home-page .gi-conversion-hero .hero-copy:after{width:72px;margin-top:24px}
  .section-head:after{width:54px;margin-top:16px}
  :is(.card,.panel,.product,.step,.trust-item,.contact-box,.system-card,.ai-usecase-card,.ai-decision-card,.cta-panel,.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-project-card,.gi-security-suite-card,.gi-corp-card,.data-card){box-shadow:0 22px 62px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.05)!important}
}


/* 1.4.2 — stronger GI presence, visible lattice and subtle AI divider motion */
@keyframes giGridDrift{
  0%{background-position:50% -10px,calc(50% + 120px) 92px;transform:translate3d(0,0,0) scale(1)}
  50%{background-position:53% 10px,calc(47% + 120px) 110px;transform:translate3d(0,-4px,0) scale(1.01)}
  100%{background-position:50% -10px,calc(50% + 120px) 92px;transform:translate3d(0,0,0) scale(1)}
}
@keyframes giLineFlow{
  0%{background-position:0% 50%;filter:brightness(.95)}
  45%{background-position:100% 50%;filter:brightness(1.15)}
  55%{background-position:100% 50%;filter:brightness(1.18)}
  100%{background-position:0% 50%;filter:brightness(.95)}
}
@keyframes giGlowPulse{
  0%,100%{opacity:.70;transform:scale(1)}
  50%{opacity:1;transform:scale(1.035)}
}

.gi-infinity-grid{
  background-image:url('/assets/gi-infinity-hex-grid.svg'),url('/assets/gi-infinity-hex-grid.svg')!important;
  background-size:236px 204px,392px 339px!important;
  background-position:50% -10px,calc(50% + 120px) 92px!important;
  background-repeat:repeat,repeat!important;
  opacity:.108!important;
  mix-blend-mode:screen;
  -webkit-mask-image:radial-gradient(ellipse 122% 92% at 50% 10%,#000 0%,rgba(0,0,0,.96) 34%,rgba(0,0,0,.74) 58%,rgba(0,0,0,.42) 76%,transparent 100%)!important;
  mask-image:radial-gradient(ellipse 122% 92% at 50% 10%,#000 0%,rgba(0,0,0,.96) 34%,rgba(0,0,0,.74) 58%,rgba(0,0,0,.42) 76%,transparent 100%)!important;
  animation:giGridDrift 30s ease-in-out infinite;
}
.gi-infinity-grid:before{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 14% 18%,rgba(37,140,255,.09),transparent 26%),
    radial-gradient(circle at 84% 16%,rgba(143,216,255,.07),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.02),transparent 55%);
  opacity:.92;
}
body:before{
  background:
    radial-gradient(circle at 10% 9%,rgba(37,140,255,.26),transparent 30%),
    radial-gradient(circle at 83% 9%,rgba(134,212,255,.14),transparent 28%),
    radial-gradient(circle at 76% 72%,rgba(138,156,255,.08),transparent 33%),
    radial-gradient(circle at 18% 84%,rgba(37,140,255,.10),transparent 31%),
    linear-gradient(135deg,#040812 0%,#07111f 32%,#0a1526 64%,#070d17 100%)!important;
}
.gi-home-page .gi-conversion-hero{padding-top:96px!important;padding-bottom:68px!important}
.gi-home-page .gi-conversion-hero:before{
  height:min(760px,82vh)!important;
  background:
    radial-gradient(ellipse 58% 52% at 13% 23%,rgba(37,140,255,.26),transparent 68%),
    radial-gradient(ellipse 48% 42% at 80% 22%,rgba(134,212,255,.14),transparent 70%),
    radial-gradient(ellipse 44% 40% at 44% 6%,rgba(138,156,255,.06),transparent 65%),
    linear-gradient(115deg,rgba(255,255,255,.028),transparent 42%)!important;
  filter:saturate(1.14);
}
.gi-home-page .gi-conversion-hero .hero-copy{max-width:840px!important}
.gi-home-page .gi-conversion-hero h1{
  font-size:clamp(3.85rem,8vw,6.85rem)!important;
  line-height:.94!important;
  letter-spacing:-.065em!important;
  text-wrap:balance;
  text-shadow:0 16px 48px rgba(0,0,0,.24);
  margin-bottom:24px!important;
}
.gi-home-page .gi-conversion-hero .lead{
  font-size:clamp(1.26rem,2.2vw,1.7rem)!important;
  line-height:1.38!important;
  color:#f3f8ff!important;
  max-width:19.5ch!important;
}
.gi-home-page .gi-conversion-hero .hero-copy:after,
.section-head:after{
  background:linear-gradient(90deg,rgba(37,140,255,.05) 0%,rgba(37,140,255,.95) 18%,rgba(143,216,255,1) 42%,rgba(255,255,255,.82) 50%,rgba(143,216,255,1) 58%,rgba(37,140,255,.95) 82%,rgba(37,140,255,.05) 100%)!important;
  background-size:220% 100%!important;
  animation:giLineFlow 5.6s ease-in-out infinite;
  box-shadow:0 0 24px rgba(37,140,255,.24),0 0 42px rgba(143,216,255,.10)!important;
}
.btn-primary{
  background:linear-gradient(120deg,#ebf8ff 0%,#ffffff 32%,#e0efff 68%,#d2d9ff 100%)!important;
  border-color:rgba(147,218,255,.44)!important;
  box-shadow:0 22px 58px rgba(8,31,68,.28),0 12px 32px rgba(37,140,255,.17),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
.btn-primary:hover{box-shadow:0 30px 74px rgba(8,31,68,.34),0 14px 38px rgba(37,140,255,.24),inset 0 1px 0 rgba(255,255,255,1)!important}
:is(.gi-product-card-featured,.gi-focus-card--growth,.gi-product-hero-card,.gi-presence-callout-inner,.gi-project-card--featured,.gi-security-suite-card){
  border-color:rgba(118,190,255,.34)!important;
  box-shadow:0 38px 110px rgba(0,0,0,.34),0 0 72px rgba(37,140,255,.08),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
:is(.card,.panel,.product,.step,.trust-item,.contact-box,.system-card,.ai-usecase-card,.ai-decision-card,.cta-panel,.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-project-card,.gi-security-suite-card,.gi-corp-card,.data-card):after{
  left:5%!important;right:5%!important;
  background:linear-gradient(90deg,transparent,rgba(134,212,255,.54),rgba(255,255,255,.32),rgba(134,212,255,.54),transparent)!important;
  opacity:.9!important;
}
body.gi-subpage main#top::before{
  background:
    radial-gradient(ellipse 76% 32% at 8% 2%,rgba(37,140,255,.24) 0%,rgba(37,140,255,.08) 36%,transparent 72%),
    radial-gradient(ellipse 70% 28% at 94% 3%,rgba(134,212,255,.15) 0%,rgba(134,212,255,.06) 38%,transparent 75%),
    radial-gradient(ellipse 58% 26% at 82% 42%,rgba(138,156,255,.085),transparent 77%),
    linear-gradient(180deg,#0a1422 0%,#09111c 28%,#080e17 62%,#070c14 100%)!important;
}
body.gi-subpage main#top::after{
  background-size:252px 218px,400px 346px!important;
  background-position:50% -16px,calc(50% + 118px) 96px!important;
  opacity:.064!important;
}
.gi-footer-shell{
  background:
    radial-gradient(circle at 12% 14%,rgba(37,140,255,.11),transparent 28%),
    radial-gradient(circle at 88% 82%,rgba(134,212,255,.055),transparent 32%),
    linear-gradient(145deg,rgba(12,18,28,.985),rgba(6,10,16,.97))!important;
}
@media(max-width:680px){
  .gi-infinity-grid{background-size:184px 159px,304px 263px!important;background-position:50% -4px,calc(50% + 88px) 64px!important;opacity:.092!important}
  .gi-home-page .gi-conversion-hero{padding-top:64px!important;padding-bottom:48px!important}
  .gi-home-page .gi-conversion-hero:before{height:590px!important;background:radial-gradient(ellipse 82% 50% at 16% 18%,rgba(37,140,255,.22),transparent 68%),radial-gradient(ellipse 62% 34% at 90% 24%,rgba(134,212,255,.11),transparent 72%),radial-gradient(ellipse 54% 28% at 50% 0%,rgba(138,156,255,.05),transparent 66%)!important}
  .gi-home-page .gi-conversion-hero h1{font-size:clamp(3.15rem,12vw,4.75rem)!important;line-height:.95!important;margin-bottom:18px!important}
  .gi-home-page .gi-conversion-hero .lead{font-size:1.17rem!important;max-width:16ch!important}
  .gi-home-page .gi-conversion-hero .hero-copy:after,.section-head:after{width:84px!important;height:2px!important}
}
@media(prefers-reduced-motion:reduce){
  .gi-infinity-grid,.gi-home-page .gi-conversion-hero .hero-copy:after,.section-head:after{animation:none!important}
}


/* 1.4.3 — bolder flagship presence, mobile hero repair, stronger lattice */
.gi-home-page .gi-conversion-hero{padding-top:108px!important;padding-bottom:84px!important;overflow:hidden}
.gi-home-page .gi-conversion-hero .wrap{position:relative}
.gi-home-page .gi-conversion-hero .wrap::after{
  content:"";
  position:absolute;left:0;right:0;top:-4px;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(37,140,255,.25) 14%,rgba(134,212,255,.9) 36%,rgba(255,255,255,.95) 50%,rgba(134,212,255,.9) 64%,rgba(37,140,255,.25) 86%,transparent 100%);
  background-size:220% 100%;opacity:.88;box-shadow:0 0 18px rgba(37,140,255,.20),0 0 32px rgba(134,212,255,.08);
  animation:giLineFlow 5.2s ease-in-out infinite;
}
.gi-infinity-grid{
  background-size:208px 180px,344px 297px!important;
  background-position:50% -8px,calc(50% + 96px) 74px!important;
  opacity:.158!important;
  filter:drop-shadow(0 0 8px rgba(37,140,255,.06));
  -webkit-mask-image:radial-gradient(ellipse 128% 98% at 50% 8%,#000 0%,rgba(0,0,0,.98) 34%,rgba(0,0,0,.84) 59%,rgba(0,0,0,.54) 80%,transparent 100%)!important;
  mask-image:radial-gradient(ellipse 128% 98% at 50% 8%,#000 0%,rgba(0,0,0,.98) 34%,rgba(0,0,0,.84) 59%,rgba(0,0,0,.54) 80%,transparent 100%)!important;
}
.gi-infinity-grid::before{
  background:
    radial-gradient(circle at 16% 16%,rgba(37,140,255,.12),transparent 26%),
    radial-gradient(circle at 82% 18%,rgba(134,212,255,.09),transparent 30%),
    linear-gradient(180deg,rgba(255,255,255,.028),transparent 56%)!important;
  opacity:1!important;
}
body::before{
  background:
    radial-gradient(circle at 8% 10%,rgba(37,140,255,.34),transparent 32%),
    radial-gradient(circle at 82% 12%,rgba(134,212,255,.16),transparent 28%),
    radial-gradient(circle at 76% 72%,rgba(138,156,255,.10),transparent 34%),
    radial-gradient(circle at 15% 88%,rgba(37,140,255,.12),transparent 30%),
    linear-gradient(135deg,#030712 0%,#081223 28%,#0a1730 58%,#07101d 100%)!important;
}
.gi-home-page .gi-conversion-hero:before{
  height:min(820px,88vh)!important;
  background:
    radial-gradient(ellipse 64% 56% at 12% 22%,rgba(37,140,255,.32),transparent 70%),
    radial-gradient(ellipse 58% 44% at 84% 16%,rgba(134,212,255,.16),transparent 72%),
    radial-gradient(ellipse 42% 34% at 48% 2%,rgba(138,156,255,.08),transparent 68%),
    linear-gradient(112deg,rgba(255,255,255,.042),transparent 42%)!important;
  filter:saturate(1.18);
}
.gi-home-page .gi-conversion-hero .gi-conversion-hero-grid{align-items:start!important;gap:40px!important}
.gi-home-page .gi-conversion-hero .hero-copy{max-width:880px!important}
.gi-home-page .gi-conversion-hero h1{font-size:clamp(4.25rem,8.6vw,7.3rem)!important;line-height:.92!important;letter-spacing:-.072em!important;margin-bottom:22px!important;text-shadow:0 20px 58px rgba(0,0,0,.28)}
.gi-home-page .gi-conversion-hero .lead{max-width:min(100%,34ch)!important;font-size:clamp(1.34rem,2.25vw,1.78rem)!important;line-height:1.42!important;color:#f4f9ff!important;text-wrap:pretty;hyphens:none}
.gi-home-page .gi-conversion-hero .hero-note{max-width:min(100%,62ch)!important;font-size:1.03rem!important;line-height:1.7!important;color:#cddcf0!important}
.gi-home-page .gi-conversion-hero .hero-copy:after,.section-head:after{width:118px!important;height:3px!important;margin-top:24px!important;border-radius:999px!important;background:linear-gradient(90deg,rgba(37,140,255,.08) 0%,rgba(37,140,255,.92) 16%,rgba(134,212,255,1) 44%,rgba(255,255,255,.9) 50%,rgba(134,212,255,1) 56%,rgba(37,140,255,.92) 84%,rgba(37,140,255,.08) 100%)!important;background-size:220% 100%!important;animation:giLineFlow 5s ease-in-out infinite;box-shadow:0 0 28px rgba(37,140,255,.26),0 0 42px rgba(143,216,255,.12)!important}
.gi-home-page .gi-conversion-hero .hero-actions{margin-top:30px!important}
.gi-home-page .gi-conversion-hero .hero-actions .btn{min-height:60px!important}
.gi-home-page .gi-conversion-hero .hero-actions .btn-primary{box-shadow:0 28px 78px rgba(8,31,68,.36),0 14px 40px rgba(37,140,255,.23),inset 0 1px 0 rgba(255,255,255,.98)!important}
.gi-home-page .gi-conversion-proof{margin-top:36px!important;gap:12px!important}
.gi-home-page .gi-conversion-proof>span{min-height:66px!important;background:linear-gradient(152deg,rgba(15,23,36,.82),rgba(8,12,20,.88))!important;border-color:rgba(102,172,246,.18)!important;box-shadow:0 18px 52px rgba(0,0,0,.18)!important}
.gi-home-page .gi-focus-card,.gi-home-page .gi-presence-callout-inner{padding:38px!important;border-radius:34px!important}
.gi-home-page .gi-focus-card{gap:34px!important}
.gi-home-page .gi-focus-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:1!important;background:radial-gradient(circle at 14% 14%,rgba(84,167,255,.18),transparent 36%),radial-gradient(circle at 84% 10%,rgba(134,212,255,.08),transparent 30%),linear-gradient(120deg,rgba(255,255,255,.035),transparent 34%)!important}
.gi-home-page .gi-focus-card .gi-focus-copy h2{font-size:clamp(3rem,5vw,4.7rem)!important;letter-spacing:-.065em!important;margin-bottom:6px!important}
.gi-home-page .gi-focus-card .gi-focus-copy h3{font-size:clamp(1.28rem,2vw,1.7rem)!important;line-height:1.4!important;color:#eef6ff!important;margin-bottom:16px!important}
.gi-home-page .gi-focus-card .gi-focus-copy .section-text{font-size:1.08rem!important;line-height:1.72!important;color:#d4e4f8!important;max-width:60ch!important}
.gi-home-page .gi-value-grid article,.gi-home-page .gi-cashflow-module,.gi-home-page .gi-portfolio-card{background:linear-gradient(154deg,rgba(20,29,42,.9),rgba(9,13,21,.94))!important;border-color:rgba(104,174,247,.16)!important;box-shadow:0 20px 56px rgba(0,0,0,.18)!important}
.gi-home-page .gi-portfolio-card p,.gi-home-page .gi-value-grid p,.gi-home-page .gi-cashflow-module p{color:#d1deef!important}
body.gi-subpage main#top::before{
  background:
    radial-gradient(ellipse 82% 34% at 8% 2%,rgba(37,140,255,.28) 0%,rgba(37,140,255,.10) 38%,transparent 74%),
    radial-gradient(ellipse 72% 30% at 94% 4%,rgba(134,212,255,.18) 0%,rgba(134,212,255,.07) 38%,transparent 76%),
    radial-gradient(ellipse 58% 26% at 82% 44%,rgba(138,156,255,.10),transparent 77%),
    linear-gradient(180deg,#091321 0%,#09111d 28%,#080f18 62%,#070c14 100%)!important;
}
body.gi-subpage main#top::after{background-size:220px 190px,356px 308px!important;background-position:50% -8px,calc(50% + 98px) 82px!important;opacity:.082!important}
@media (max-width:900px){
  .gi-home-page .gi-conversion-hero .gi-conversion-hero-grid{grid-template-columns:1fr!important;gap:26px!important}
  .gi-home-page .gi-conversion-hero .lead{max-width:100%!important}
  .gi-home-page .gi-focus-card{grid-template-columns:1fr!important}
}
@media (max-width:680px){
  .gi-home-page .gi-conversion-hero{padding-top:70px!important;padding-bottom:56px!important}
  .gi-home-page .gi-conversion-hero .wrap::after{top:-2px!important;opacity:.78!important}
  .gi-infinity-grid{background-size:164px 142px,264px 229px!important;background-position:50% -2px,calc(50% + 64px) 48px!important;opacity:.134!important}
  .gi-home-page .gi-conversion-hero:before{height:620px!important;background:radial-gradient(ellipse 86% 54% at 14% 18%,rgba(37,140,255,.28),transparent 70%),radial-gradient(ellipse 64% 36% at 90% 20%,rgba(134,212,255,.13),transparent 72%),radial-gradient(ellipse 54% 28% at 54% 0%,rgba(138,156,255,.06),transparent 66%)!important}
  .gi-home-page .gi-conversion-hero h1{font-size:clamp(3.2rem,13vw,4.9rem)!important;line-height:.94!important;margin-bottom:18px!important}
  .gi-home-page .gi-conversion-hero .lead{max-width:100%!important;font-size:1.18rem!important;line-height:1.5!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
  .gi-home-page .gi-conversion-hero .hero-note{max-width:100%!important;font-size:.98rem!important}
  .gi-home-page .gi-conversion-hero .hero-copy:after,.section-head:after{width:92px!important;height:2px!important}
  .gi-home-page .gi-conversion-proof{grid-template-columns:1fr!important}
  .gi-home-page .gi-focus-card,.gi-home-page .gi-presence-callout-inner{padding:24px!important;border-radius:28px!important}
  .gi-home-page .gi-focus-card .gi-focus-copy h2{font-size:clamp(2.45rem,11vw,3.5rem)!important}
  .gi-home-page .gi-focus-card .gi-focus-copy h3{font-size:1.15rem!important}
}
@media (prefers-reduced-motion:reduce){
  .gi-home-page .gi-conversion-hero .wrap::after,.gi-infinity-grid,.gi-home-page .gi-conversion-hero .hero-copy:after,.section-head:after{animation:none!important}
}


/* 1.4.4 — global lattice overlay, relocated motion dividers, tap highlight cleanup */
html,body,a,button,input,textarea,select,label,summary,[role="button"],.btn{
  -webkit-tap-highlight-color:transparent!important;
}
body{overflow-x:hidden}
.gi-home-page .gi-conversion-hero .wrap::after,
.gi-home-page .gi-conversion-hero .hero-copy::after{display:none!important;content:none!important}
main#top, .gi-footer{position:relative;isolation:isolate}
main#top > *, .gi-footer > *{position:relative;z-index:1}
.gi-infinity-grid{display:none!important}
main#top::after{
  content:"";
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:url('/assets/gi-infinity-hex-grid.svg'),url('/assets/gi-infinity-hex-grid.svg');
  background-repeat:repeat,repeat;
  background-size:228px 198px,372px 323px;
  background-position:50% -8px,calc(50% + 108px) 74px;
  opacity:.148;
  mix-blend-mode:screen;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.96),rgba(0,0,0,.92) 16%,rgba(0,0,0,.76) 48%,rgba(0,0,0,.48) 78%,rgba(0,0,0,.20) 92%,transparent 100%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.96),rgba(0,0,0,.92) 16%,rgba(0,0,0,.76) 48%,rgba(0,0,0,.48) 78%,rgba(0,0,0,.20) 92%,transparent 100%);
}
.gi-footer::before{
  content:"";
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:url('/assets/gi-infinity-hex-grid.svg');
  background-repeat:repeat;
  background-size:220px 191px;
  background-position:50% 0;
  opacity:.108;
  mix-blend-mode:screen;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),rgba(0,0,0,.90));
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),rgba(0,0,0,.90));
}
body.gi-subpage main#top::after{
  background-image:url('/assets/gi-infinity-hex-grid.svg'),url('/assets/gi-infinity-hex-grid.svg')!important;
  background-size:232px 201px,382px 331px!important;
  background-position:50% -6px,calc(50% + 110px) 78px!important;
  opacity:.132!important;
}
main#top > section + section{position:relative}
main#top > section + section::before{
  content:"";
  position:absolute;left:clamp(26px,4vw,42px);right:clamp(26px,4vw,42px);top:-24px;height:2px;
  border-radius:999px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(37,140,255,.12) 12%,rgba(37,140,255,.92) 26%,rgba(134,212,255,1) 44%,rgba(255,255,255,.94) 50%,rgba(134,212,255,1) 56%,rgba(37,140,255,.92) 74%,rgba(37,140,255,.12) 88%,transparent 100%);
  background-size:220% 100%;
  box-shadow:0 0 22px rgba(37,140,255,.18),0 0 38px rgba(134,212,255,.08);
  opacity:.74;
  animation:giLineFlow 5.2s ease-in-out infinite;
}
.gi-home-page .gi-conversion-hero + section::before{top:-10px!important}
@media (max-width:680px){
  main#top::after{
    background-size:178px 154px,292px 253px;
    background-position:50% 2px,calc(50% + 76px) 54px;
    opacity:.165;
  }
  body.gi-subpage main#top::after{
    background-size:178px 154px,292px 253px!important;
    background-position:50% 2px,calc(50% + 76px) 54px!important;
    opacity:.155!important;
  }
  .gi-footer::before{background-size:176px 152px;opacity:.118}
  main#top > section + section::before{left:20px;right:20px;top:-18px;height:2px;opacity:.70}
}
@media (prefers-reduced-motion:reduce){
  main#top > section + section::before{animation:none!important}
}


/* 1.4.5 — flagship visual pass, refined subpage topbars and drifting micro lattice */
:root{
  --gi-grid-a-size:146px 126px;
  --gi-grid-b-size:236px 204px;
  --gi-grid-a-pos:50% 0;
  --gi-grid-b-pos:calc(50% + 68px) 46px;
}
@keyframes giHexDrift{
  0%{background-position:50% 0,calc(50% + 68px) 46px}
  50%{background-position:calc(50% - 18px) 0,calc(50% + 44px) 46px}
  100%{background-position:calc(50% - 36px) 0,calc(50% + 20px) 46px}
}
.gi-subhero-topbar{
  display:flex;align-items:center;gap:16px 14px;flex-wrap:wrap;
  margin:0 0 22px 0;
}
.gi-subhero-topbar .gi-back-link{margin:0!important}
.gi-product-detail-hero .gi-back-link{margin:0 0 18px 0}
.gi-corp-hero .lead,.gi-reference-hero .lead,.gi-product-overview-hero .lead,.gi-product-detail-hero .lead{max-width:30ch}
main#top::after{
  background-size:var(--gi-grid-a-size),var(--gi-grid-b-size)!important;
  background-position:var(--gi-grid-a-pos),var(--gi-grid-b-pos)!important;
  opacity:.19!important;
  animation:giHexDrift 42s linear infinite alternate;
}
body.gi-subpage main#top::after{
  background-size:152px 132px,248px 214px!important;
  background-position:50% 4px,calc(50% + 70px) 48px!important;
  opacity:.17!important;
  animation:giHexDrift 46s linear infinite alternate!important;
}
.gi-footer::before{
  background-size:150px 130px!important;
  background-position:50% 0!important;
  opacity:.135!important;
  animation:giHexDrift 58s linear infinite alternate;
}
/* stronger premium surfaces across the public site */
:is(.gi-panel,.service-card,.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-presence-callout-inner,.gi-value-grid article,.gi-cashflow-module,.gi-portfolio-card,.service-ai-intents .wrap,.company-system-visual,.wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.ai-intent-summary,.ai-intent-columns .gi-panel,.data-main article,.data-main aside,.gi-corp-card,.gi-ref-card){
  border-color:rgba(118,182,248,.18)!important;
  box-shadow:0 24px 74px rgba(0,0,0,.24),0 10px 34px rgba(37,140,255,.08),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
:is(.gi-panel,.service-card,.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-presence-callout-inner,.gi-value-grid article,.gi-cashflow-module,.gi-portfolio-card,.service-ai-intents .wrap,.company-system-visual,.wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.ai-intent-summary,.ai-intent-columns .gi-panel,.data-main article,.data-main aside,.gi-corp-card,.gi-ref-card)::after{
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background:radial-gradient(circle at 14% 10%,rgba(134,212,255,.11),transparent 28%),linear-gradient(118deg,rgba(255,255,255,.045),transparent 32%);
  opacity:.92;
}
.gi-home-page .gi-conversion-hero h1{font-size:clamp(4.5rem,9.1vw,7.7rem)!important;text-shadow:0 24px 72px rgba(0,0,0,.30),0 0 34px rgba(37,140,255,.08)!important}
.gi-home-page .gi-conversion-hero .hero-copy{max-width:940px!important}
.gi-home-page .gi-conversion-hero .lead{font-size:clamp(1.38rem,2.35vw,1.84rem)!important;max-width:min(100%,33ch)!important}
.gi-home-page .gi-focus-card .gi-focus-copy h2,.gi-home-page .gi-product-showcase h2,.gi-home-page .gi-value-section h2,.gi-home-page .gi-process h2{letter-spacing:-.066em!important}
.gi-home-page .gi-focus-card .gi-focus-copy .section-text,.gi-home-page .gi-portfolio-card p,.gi-home-page .gi-value-grid p,.gi-home-page .gi-cashflow-module p{color:#d9e6f5!important}
.btn-primary{box-shadow:0 22px 58px rgba(8,31,68,.28),0 12px 36px rgba(37,140,255,.18),inset 0 1px 0 rgba(255,255,255,.98)!important}
.btn-secondary:hover,.btn-ghost:hover{box-shadow:0 14px 34px rgba(0,0,0,.18),0 0 18px rgba(37,140,255,.12)!important}
@media (max-width:680px){
  .gi-subhero-topbar{gap:12px 10px;margin-bottom:18px}
  .gi-corp-hero .lead,.gi-reference-hero .lead,.gi-product-overview-hero .lead,.gi-product-detail-hero .lead{max-width:100%}
  main#top::after{
    background-size:118px 102px,190px 164px!important;
    background-position:50% 2px,calc(50% + 54px) 34px!important;
    opacity:.205!important;
  }
  body.gi-subpage main#top::after{
    background-size:118px 102px,190px 164px!important;
    background-position:50% 2px,calc(50% + 54px) 34px!important;
    opacity:.19!important;
  }
  .gi-footer::before{background-size:116px 100px!important;opacity:.145!important}
  .gi-home-page .gi-conversion-hero h1{font-size:clamp(3.36rem,13.4vw,5.12rem)!important}
  .gi-home-page .gi-conversion-hero .lead{font-size:1.21rem!important;max-width:100%!important}
}
@media (prefers-reduced-motion:reduce){
  main#top::after,body.gi-subpage main#top::after,.gi-footer::before{animation:none!important}
}


/* 1.4.6 — env-driven mathematical hex lattice and animated mobile menu */
@keyframes giHexDriftEnv{
  0%{background-position:50% -4px,calc(50% + 72px) 38px;transform:translate3d(0,0,0)}
  50%{background-position:calc(50% - 18px) -4px,calc(50% + 46px) 38px;transform:translate3d(0,0,0)}
  100%{background-position:calc(50% - 34px) -4px,calc(50% + 24px) 38px;transform:translate3d(0,0,0)}
}
.gi-infinity-grid{
  display:block!important;position:fixed!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background-image:var(--gi-hex-grid-uri),var(--gi-hex-grid-uri)!important;
  background-repeat:repeat,repeat!important;
  background-size:var(--gi-hex-grid-w) var(--gi-hex-grid-h),var(--gi-hex-grid-w-secondary) var(--gi-hex-grid-h-secondary)!important;
  background-position:50% -4px,calc(50% + 72px) 38px!important;
  opacity:.165!important;mix-blend-mode:screen;filter:drop-shadow(0 0 7px rgba(37,140,255,.045));
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.98) 0%,rgba(0,0,0,.92) 18%,rgba(0,0,0,.82) 54%,rgba(0,0,0,.60) 82%,rgba(0,0,0,.24) 100%)!important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.98) 0%,rgba(0,0,0,.92) 18%,rgba(0,0,0,.82) 54%,rgba(0,0,0,.60) 82%,rgba(0,0,0,.24) 100%)!important;
  animation:giHexDriftEnv var(--gi-hex-grid-speed) linear infinite alternate!important;
}
.gi-infinity-grid::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 12% 12%,rgba(37,140,255,.12),transparent 24%),radial-gradient(circle at 86% 16%,rgba(134,212,255,.08),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.016),transparent 55%);
  opacity:1;
}
main#top::after,.gi-footer::before{content:none!important;background:none!important;animation:none!important}
main#top,.gi-footer,header{position:relative}
main#top,.gi-footer{z-index:1}
header{z-index:1000!important}
/* stronger flagship tone without harming readability */
.gi-home-page .gi-conversion-hero{padding-top:102px!important;padding-bottom:72px!important}
.gi-home-page .gi-conversion-hero h1{font-size:clamp(4.4rem,8.8vw,7.5rem)!important;letter-spacing:-.074em!important;text-shadow:0 22px 64px rgba(0,0,0,.30),0 0 28px rgba(37,140,255,.08)!important}
.gi-home-page .gi-conversion-hero .lead{max-width:min(100%,35ch)!important;color:#f7fbff!important}
.gi-home-page .gi-conversion-proof>span,.gi-home-page .gi-value-grid article,.gi-home-page .gi-cashflow-module,.gi-home-page .gi-portfolio-card,.gi-panel,.service-card,.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,.gi-presence-callout-inner,.gi-value-grid article,.gi-corp-card,.gi-ref-card{
  box-shadow:0 28px 82px rgba(0,0,0,.26),0 12px 36px rgba(37,140,255,.10),inset 0 1px 0 rgba(255,255,255,.07)!important;
  border-color:rgba(126,188,249,.20)!important;
}
.gi-home-page .gi-focus-card::before,.gi-product-card-featured::before,.gi-corp-card::before,.gi-ref-card::before{opacity:1!important}
/* animated hamburger */
.menu-toggle{display:grid;place-items:center;overflow:hidden}
.menu-toggle .menu-open-icon,.menu-toggle .menu-close-icon{display:none!important}
.menu-toggle .menu-lines{position:relative;display:block;width:26px;height:18px}
.menu-toggle .menu-line{position:absolute;left:0;right:0;height:2px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(134,212,255,.96));box-shadow:0 0 10px rgba(37,140,255,.16);transform-origin:50% 50%;transition:transform .32s ease,opacity .24s ease,top .32s ease,bottom .32s ease,filter .24s ease}
.menu-toggle .menu-line:nth-child(1){top:0}
.menu-toggle .menu-line:nth-child(2){top:8px}
.menu-toggle .menu-line:nth-child(3){top:16px}
.menu-toggle:hover .menu-line{filter:brightness(1.12)}
.menu-toggle.open .menu-line:nth-child(1){top:8px;transform:rotate(45deg)}
.menu-toggle.open .menu-line:nth-child(2){opacity:0;transform:scaleX(.35)}
.menu-toggle.open .menu-line:nth-child(3){top:8px;transform:rotate(-45deg)}
.menu-toggle:focus-visible{outline:1px solid rgba(134,212,255,.52);outline-offset:4px}
@media (max-width:680px){
  .gi-infinity-grid{
    background-position:50% 0,calc(50% + 44px) 22px!important;
    opacity:.19!important;
  }
  .gi-home-page .gi-conversion-hero{padding-top:74px!important;padding-bottom:58px!important}
  .gi-home-page .gi-conversion-hero h1{font-size:clamp(3.28rem,12.8vw,5rem)!important}
  .gi-home-page .gi-conversion-hero .lead{max-width:100%!important;font-size:1.17rem!important}
}
@media (prefers-reduced-motion:reduce){
  .gi-infinity-grid{animation:none!important}
  .menu-toggle .menu-line{transition:none!important}
}


/* 1.4.7 — seamless honeycomb, fixed header repair and background motion cleanup */
@keyframes giHoneycombPan{
  from{background-position:0 0}
  to{background-position:var(--gi-hex-grid-shift) 0}
}
/* Critical regression repair: header must remain fixed, never relative. */
header{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:1000!important;transform:translateY(0);will-change:transform}
header.header-hidden{transform:translateY(calc(-100% - 2px))!important}
header:focus-within,header:hover{transform:translateY(0)!important}
/* Keep atmospheric gradient static; only the honeycomb itself moves. */
body::before{animation:none!important;background-position:center!important}
.gi-infinity-grid{
  display:block!important;position:fixed!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background-image:var(--gi-hex-grid-uri)!important;
  background-repeat:repeat!important;
  background-size:var(--gi-hex-grid-w) var(--gi-hex-grid-h)!important;
  background-position:0 0!important;
  opacity:var(--gi-hex-grid-opacity,.12)!important;
  mix-blend-mode:screen!important;
  filter:drop-shadow(0 0 5px rgba(37,140,255,.035));
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.94),rgba(0,0,0,.88) 24%,rgba(0,0,0,.74) 62%,rgba(0,0,0,.48) 88%,rgba(0,0,0,.26) 100%)!important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.94),rgba(0,0,0,.88) 24%,rgba(0,0,0,.74) 62%,rgba(0,0,0,.48) 88%,rgba(0,0,0,.26) 100%)!important;
  animation:giHoneycombPan var(--gi-hex-grid-speed,72s) linear infinite!important;
}
.gi-infinity-grid::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 14% 12%,rgba(37,140,255,.09),transparent 24%),radial-gradient(circle at 84% 16%,rgba(134,212,255,.055),transparent 28%);
  opacity:1;
}
main#top,.gi-footer{position:relative!important;z-index:1!important}
main#top::after,.gi-footer::before{content:none!important;display:none!important}
/* Menu surface remains attached to the fixed header. */
header .nav{position:relative!important}
.mobile-menu{z-index:1200!important}
@media(max-width:680px){
  .gi-infinity-grid{opacity:var(--gi-hex-grid-opacity,.12)!important}
}
@media(prefers-reduced-motion:reduce){
  .gi-infinity-grid{animation:none!important}
}

/* 1.4.9 project identity + mobile paint stability --------------------------------
   Project marks use one restrained dark-grey icon card everywhere. This prevents
   white logo tiles from breaking the visual system and keeps RocketBoot in scale. */
:root{
  --gi-project-icon-bg:linear-gradient(145deg,rgba(58,66,77,.96),rgba(27,32,40,.98));
  --gi-project-icon-border:rgba(184,205,226,.20);
  --gi-project-icon-shadow:0 12px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);
}
.gi-project-logo,
.gi-portfolio-logo,
.gi-reference-page .wp-rocketboot-logo,
.wp-rocketboot-logo{
  display:grid!important;
  place-items:center!important;
  background:var(--gi-project-icon-bg)!important;
  border:1px solid var(--gi-project-icon-border)!important;
  box-shadow:var(--gi-project-icon-shadow)!important;
  overflow:hidden!important;
}
.gi-project-logo{
  flex:0 0 72px!important;
  width:72px!important;
  height:72px!important;
  padding:10px!important;
  border-radius:21px!important;
}
.gi-project-logo img,
.gi-project-logo.product-logo-rocket img,
.gi-project-logo.product-logo-quoapi img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:0!important;
}
.gi-project-logo.product-logo-rocket,
.product-logo-rocket,
.gi-project-logo.product-logo-quoapi{
  background:var(--gi-project-icon-bg)!important;
  border-color:var(--gi-project-icon-border)!important;
  color:#eef6ff!important;
  padding:10px!important;
}

/* Compact portfolio cards: every external project gets the same icon surface. */
.gi-portfolio-logo{
  flex:0 0 64px!important;
  width:64px!important;
  height:64px!important;
  margin:0 0 16px!important;
  padding:9px!important;
  border-radius:19px!important;
}
.gi-portfolio-logo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
}
.gi-portfolio-logo--quoapi{padding:8px!important}
.gi-portfolio-logo--icon{color:#dceeff!important}
.gi-portfolio-logo--icon .svg-icon{width:28px!important;height:28px!important}

/* Engineering proof cards no longer place product marks on white tiles. */
.gi-engineering-case-top img{
  width:60px!important;
  height:60px!important;
  padding:9px!important;
  object-fit:contain!important;
  border:1px solid var(--gi-project-icon-border)!important;
  border-radius:18px!important;
  background:var(--gi-project-icon-bg)!important;
  box-shadow:var(--gi-project-icon-shadow)!important;
}

/* RocketBoot uses the same symbol scale as every other project. */
.wp-rocketboot-link{
  grid-template-columns:72px minmax(0,1fr) auto!important;
  gap:18px!important;
}
.wp-rocketboot-logo,
.gi-reference-page .wp-rocketboot-logo{
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  padding:10px!important;
  border-radius:20px!important;
}
.wp-rocketboot-logo img,
.gi-reference-page .wp-rocketboot-logo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.gi-reference-page .wp-rocketboot-link{
  grid-template-columns:72px minmax(0,1fr)!important;
  grid-template-areas:"logo copy" "action action"!important;
}

/* Avoid excessive compositor layers. `will-change` on every reveal node can
   exhaust mobile GPU tile memory and manifest as blank content during flings. */
.reveal,.reveal.in{will-change:auto!important}

@media(max-width:900px),(hover:none),(pointer:coarse){
  /* Mobile/touch: content is always paintable. Motion stays in the background/
     controls, but primary page content is never opacity-hidden while scrolling. */
  .reveal{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }
  .gi-project-logo{
    flex-basis:60px!important;
    width:60px!important;
    height:60px!important;
    padding:8px!important;
    border-radius:18px!important;
  }
  .gi-engineering-case-top img{width:56px!important;height:56px!important;padding:8px!important}
  .wp-rocketboot-link,
  .gi-reference-page .wp-rocketboot-link{
    grid-template-columns:60px minmax(0,1fr)!important;
    grid-template-areas:"logo copy" "action action"!important;
  }
  .wp-rocketboot-logo,
  .gi-reference-page .wp-rocketboot-logo{
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    padding:8px!important;
    border-radius:18px!important;
  }
}
@media(max-width:460px){
  .gi-project-card-head{gap:14px!important}
  .gi-portfolio-logo{width:60px!important;height:60px!important;border-radius:18px!important}
}


/* 1.5.3 — balanced brand lockup spacing: midpoint between the original airy header and 1.5.2 compact lock. */
header .brand{
  gap:6px!important;
  margin-left:-4px!important;
  min-width:0!important;
}
header .brand>.gi-brand-mark{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  padding:0!important;
}
header .brand>.gi-brand-mark img{
  width:50px!important;
  height:50px!important;
}
header .brand>span:last-child{
  display:inline-block!important;
  visibility:visible!important;
  opacity:1!important;
  white-space:nowrap!important;
  font-size:15px!important;
  line-height:1!important;
}
@media(max-width:680px){
  header .brand{gap:5px!important;margin-left:-4px!important}
  header .brand>.gi-brand-mark{width:56px!important;height:56px!important;flex-basis:56px!important}
  header .brand>.gi-brand-mark img{width:48px!important;height:48px!important}
  header .brand>span:last-child{display:inline-block!important;font-size:14px!important}
}
@media(max-width:420px){
  header .brand{gap:4px!important;margin-left:-5px!important}
  header .brand>.gi-brand-mark{width:55px!important;height:55px!important;flex-basis:55px!important}
  header .brand>.gi-brand-mark img{width:47px!important;height:47px!important}
  header .brand>span:last-child{display:inline-block!important;font-size:13px!important;letter-spacing:-.04em!important}
}

/* 1.5.5 — perceptible seamless honeycomb motion + relaxed homepage hero tracking.
   The grid is painted on an oversized pseudo-element and translated by exactly
   one mathematical tile, so the loop is seamless and does not trigger layout. */
@keyframes giHoneycombTranslate{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(var(--gi-hex-grid-shift),0,0)}
}
.gi-infinity-grid{
  overflow:hidden!important;
  background-image:none!important;
  background:none!important;
  animation:none!important;
  will-change:auto!important;
}
.gi-infinity-grid::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:calc(-1 * var(--gi-hex-grid-w));
  right:calc(-1 * var(--gi-hex-grid-w));
  z-index:0;
  pointer-events:none;
  background-image:var(--gi-hex-grid-uri);
  background-repeat:repeat;
  background-size:var(--gi-hex-grid-w) var(--gi-hex-grid-h);
  background-position:0 0;
  animation:giHoneycombTranslate var(--gi-hex-grid-motion-speed,40s) linear infinite;
  will-change:transform;
}
.gi-infinity-grid::before{z-index:1}

/* The previous -0.074em hero tracking was visually too compressed on mobile.
   Keep the strong condensed display style, but restore readable glyph spacing. */
.gi-home-page .gi-conversion-hero h1{
  letter-spacing:-.045em!important;
}
@media(max-width:680px){
  .gi-home-page .gi-conversion-hero h1{
    letter-spacing:-.025em!important;
    line-height:.98!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .gi-infinity-grid::after{animation:none!important;will-change:auto!important}
}

/* 1.5.7 — compact footer regression fix + press brand asset */
.gi-footer-main{align-items:start!important}
.gi-footer-navgrid{
  grid-template-columns:repeat(auto-fit,minmax(126px,1fr))!important;
  gap:24px 26px!important;
  align-items:start!important;
  align-content:start!important;
}
.gi-footer-group{align-self:start!important;min-height:0!important}
.gi-footer-bottom{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px 24px!important;
  margin-top:26px!important;
  padding-top:18px!important;
}
.gi-footer-legal{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:7px 18px;
  min-width:0;
}
.gi-footer-legal a{
  color:#9fb0c6;
  font-size:11.5px;
  line-height:1.25;
  text-decoration:none;
  transition:color .18s ease;
}
.gi-footer-legal a:hover,.gi-footer-legal a:focus-visible{color:#d9ecff}
.gi-press-brand-assets{padding:0 0 54px}
.gi-press-brand-assets .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,390px);gap:28px;align-items:center}
.gi-press-brand-copy p{max-width:680px;color:var(--muted);line-height:1.65}
.gi-press-brand-card{display:grid;place-items:center;gap:16px;padding:28px;border:1px solid rgba(90,110,135,.18);border-radius:22px;background:#f5f7fa;color:#24303d;box-shadow:0 18px 52px rgba(0,0,0,.14)}
.gi-press-brand-card img{display:block;width:min(210px,66vw);height:auto;object-fit:contain}
.gi-press-brand-card .btn{background:#25303c!important;color:#fff!important;border-color:#25303c!important}
@media(max-width:900px){
  .gi-footer-navgrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .gi-press-brand-assets .wrap{grid-template-columns:1fr}
}
@media(max-width:680px){
  .gi-footer-navgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 14px!important}
  .gi-footer-bottom{grid-template-columns:minmax(0,1fr) auto!important;gap:10px 12px!important;margin-top:16px!important;padding-top:13px!important}
  .gi-footer-bottom>p{grid-column:1;grid-row:1}
  .gi-footer-bottom>.footer-language{grid-column:2;grid-row:1}
  .gi-footer-legal{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:6px 14px}
  .gi-footer-legal a{font-size:10.5px}
  .gi-press-brand-assets{padding-bottom:38px}
  .gi-press-brand-card{padding:22px;border-radius:18px}
}
@media(max-width:390px){
  .gi-footer-bottom{grid-template-columns:1fr!important}
  .gi-footer-bottom>p,.gi-footer-bottom>.footer-language,.gi-footer-legal{grid-column:1!important;grid-row:auto!important}
  .gi-footer-legal{justify-content:flex-start}
}


/* 1.5.8 — exact footer utility alignment + RocketBoot light identity surface */
.gi-footer-utility{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:18px 24px;
  margin-top:26px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.09);
}
.gi-footer-utility>.gi-footer-legal{
  grid-column:2;
  grid-row:1;
  justify-self:center;
}
.gi-footer-utility>.gi-footer-bottom{
  display:contents!important;
}
.gi-footer-utility>.gi-footer-bottom>p{
  grid-column:1;
  grid-row:1;
  justify-self:start;
  margin:0;
  color:#a0a0a0;
  font-size:12px;
}
.gi-footer-utility>.gi-footer-bottom>.footer-language{
  grid-column:3;
  grid-row:1;
  justify-self:end;
}
/* RocketBoot's supplied purple/black mark needs a light neutral field for legibility.
   Other project marks deliberately retain the graphite icon-card system. */
.wp-rocketboot-logo,
.gi-reference-page .wp-rocketboot-logo,
.gi-project-logo.product-logo-rocket,
.product-logo-rocket{
  background:linear-gradient(145deg,#f7f9fc,#e9eef4)!important;
  border-color:rgba(174,190,207,.72)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.96)!important;
  color:#17202b!important;
}
@media(max-width:680px){
  .gi-footer-utility{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:11px;
    margin-top:16px;
    padding-top:13px;
  }
  .gi-footer-utility>.gi-footer-legal{
    order:1;
    width:100%;
    justify-content:flex-start;
    padding:0 0 11px;
    border-bottom:1px solid rgba(255,255,255,.07);
    gap:6px 14px;
  }
  .gi-footer-utility>.gi-footer-legal a{font-size:10.5px}
  .gi-footer-utility>.gi-footer-bottom{
    order:2;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  .gi-footer-utility>.gi-footer-bottom>p{font-size:10.5px;white-space:nowrap}
  .gi-footer-utility>.gi-footer-bottom>.footer-language{margin-left:auto}
}
@media(max-width:390px){
  .gi-footer-utility>.gi-footer-bottom{align-items:center!important}
  .gi-footer-utility>.gi-footer-bottom>p{white-space:normal;line-height:1.3}
  .gi-footer-utility>.gi-footer-bottom>.footer-language{flex:0 1 auto;min-width:0}
}

/* 1.5.9 — softer atmospheric fades and slightly calmer desktop hero scale */
body::before{
  background:
    radial-gradient(ellipse 38% 34% at 9% 8%,rgba(37,140,255,.24) 0%,rgba(37,140,255,.16) 24%,rgba(37,140,255,.08) 46%,transparent 76%),
    radial-gradient(ellipse 30% 26% at 84% 10%,rgba(134,212,255,.13) 0%,rgba(134,212,255,.08) 26%,rgba(134,212,255,.04) 48%,transparent 74%),
    radial-gradient(ellipse 28% 26% at 76% 72%,rgba(138,156,255,.08) 0%,rgba(138,156,255,.04) 34%,transparent 70%),
    radial-gradient(ellipse 24% 22% at 15% 86%,rgba(37,140,255,.09) 0%,rgba(37,140,255,.04) 36%,transparent 72%),
    linear-gradient(135deg,#030712 0%,#081223 28%,#0a1730 58%,#07101d 100%)!important;
}

.gi-home-page .gi-conversion-hero:before{
  height:min(900px,92vh)!important;
  background:
    radial-gradient(ellipse 72% 62% at 10% 19%,rgba(37,140,255,.28) 0%,rgba(37,140,255,.18) 28%,rgba(37,140,255,.08) 52%,transparent 80%),
    radial-gradient(ellipse 56% 42% at 82% 16%,rgba(134,212,255,.13) 0%,rgba(134,212,255,.08) 28%,rgba(134,212,255,.03) 52%,transparent 78%),
    radial-gradient(ellipse 44% 34% at 48% 2%,rgba(138,156,255,.06) 0%,rgba(138,156,255,.03) 30%,transparent 68%),
    linear-gradient(112deg,rgba(255,255,255,.034),transparent 44%)!important;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 0%,rgba(0,0,0,.98) 42%,rgba(0,0,0,.86) 62%,rgba(0,0,0,.58) 78%,rgba(0,0,0,.22) 90%,transparent 100%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 0%,rgba(0,0,0,.98) 42%,rgba(0,0,0,.86) 62%,rgba(0,0,0,.58) 78%,rgba(0,0,0,.22) 90%,transparent 100%);
  filter:saturate(1.10)!important;
}

@media (min-width:901px){
  .gi-home-page .gi-conversion-hero h1{
    font-size:clamp(3.8rem,7.7vw,6.6rem)!important;
    line-height:.93!important;
  }
  .gi-home-page .gi-conversion-hero .lead{
    font-size:clamp(1.24rem,2.05vw,1.62rem)!important;
  }
}

@media (max-width:680px){
  .gi-home-page .gi-conversion-hero:before{
    height:640px!important;
    background:
      radial-gradient(ellipse 88% 56% at 13% 18%,rgba(37,140,255,.26) 0%,rgba(37,140,255,.16) 30%,rgba(37,140,255,.07) 54%,transparent 78%),
      radial-gradient(ellipse 64% 36% at 90% 20%,rgba(134,212,255,.12) 0%,rgba(134,212,255,.06) 28%,transparent 72%),
      radial-gradient(ellipse 54% 28% at 54% 0%,rgba(138,156,255,.05),transparent 66%)!important;
  }
}

/* 1.5.10 — exact section divider alignment and hover paint stability */
:root{
  --gi-wrap-width-desktop:min(1240px,calc(100% - 40px));
  --gi-wrap-width-mobile:calc(100% - 28px);
}

/* Align inter-section divider lines exactly with the shared widget/wrap borders. */
main#top > section + section::before{
  left:50%!important;
  right:auto!important;
  width:var(--gi-wrap-width-desktop)!important;
  transform:translateX(-50%)!important;
}

@media (max-width:680px){
  main#top > section + section::before{
    width:var(--gi-wrap-width-mobile)!important;
  }
}

/* Stabilize fixed background layers and interactive surfaces to prevent hover flicker. */
body::before,
.gi-infinity-grid,
.gi-infinity-grid::before{
  will-change:transform,opacity,background-position;
  transform:translateZ(0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

:is(
  .card,.panel,.product,.step,.trust-item,.contact-box,.system-card,.ai-usecase-card,.ai-decision-card,.cta-panel,
  .gi-panel,.service-card,.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,
  .gi-presence-callout-inner,.gi-value-grid article,.gi-cashflow-module,.gi-portfolio-card,.company-system-visual,
  .wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.ai-intent-summary,.ai-intent-columns .gi-panel,
  .data-main article,.data-main aside,.gi-corp-card,.gi-ref-card,.gi-engineering-case,.gi-needs-grid a,
  .gi-audience-link,.gi-budget-panel,.gi-agency-eval-shell,.gi-why-grid article,.gi-security-suite-card,
  .data-card,.product-row,.visual-pillar,.btn,.menu-toggle
){
  isolation:isolate;
  will-change:transform,box-shadow,border-color;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform-style:preserve-3d;
}

:is(
  .card,.panel,.product,.step,.trust-item,.system-card,.ai-usecase-card,.ai-decision-card,.cta-panel,
  .gi-panel,.service-card,.gi-product-card,.gi-product-card-featured,.gi-product-hero-card,.gi-focus-card,
  .gi-presence-callout-inner,.gi-value-grid article,.gi-cashflow-module,.gi-portfolio-card,.company-system-visual,
  .wp-engineering-copy,.wp-product-ladder,.wp-rocketboot-link,.ai-intent-summary,.ai-intent-columns .gi-panel,
  .data-main article,.data-main aside,.gi-corp-card,.gi-ref-card,.gi-engineering-case,.gi-needs-grid a,
  .gi-audience-link,.gi-budget-panel,.gi-agency-eval-shell,.gi-why-grid article,.gi-security-suite-card,
  .data-card,.product-row,.visual-pillar
){
  transition-property:transform,border-color,box-shadow,opacity,color!important;
}

/* 1.5.11 — centered divider refinement */
:root{
  --gi-divider-width-desktop:min(1240px,calc(100% - 40px));
  --gi-divider-width-mobile:calc(100% - 28px);
}

/* Keep every divider exactly on the shared shell width and vertically centered
   between consecutive content sections/cards. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  left:50%!important;
  right:auto!important;
  top:0!important;
  width:var(--gi-divider-width-desktop)!important;
  height:2px!important;
  transform:translate(-50%,-50%)!important;
  border-radius:999px!important;
  opacity:.62!important;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(37,140,255,.08) 10%,
    rgba(37,140,255,.54) 24%,
    rgba(134,212,255,.88) 40%,
    rgba(255,255,255,.86) 50%,
    rgba(134,212,255,.88) 60%,
    rgba(37,140,255,.54) 76%,
    rgba(37,140,255,.08) 90%,
    transparent 100%)!important;
  background-size:180% 100%!important;
  box-shadow:0 0 12px rgba(37,140,255,.12),0 0 24px rgba(134,212,255,.05)!important;
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{
    width:var(--gi-divider-width-mobile)!important;
    opacity:.58!important;
  }
}

/* 1.5.12 — complex CI divider animation */
@keyframes giDividerSweepComplex{
  0%{
    background-position:0% 50%, -18% 50%, 8% 50%, 0% 50%;
    filter:brightness(.96) saturate(1);
  }
  22%{
    background-position:38% 50%, 32% 50%, 54% 50%, 22% 50%;
    filter:brightness(1.03) saturate(1.06);
  }
  46%{
    background-position:100% 50%, 118% 50%, 92% 50%, 100% 50%;
    filter:brightness(1.12) saturate(1.14);
  }
  54%{
    background-position:100% 50%, 118% 50%, 92% 50%, 100% 50%;
    filter:brightness(1.14) saturate(1.16);
  }
  78%{
    background-position:42% 50%, 48% 50%, 24% 50%, 40% 50%;
    filter:brightness(1.03) saturate(1.07);
  }
  100%{
    background-position:0% 50%, -18% 50%, 8% 50%, 0% 50%;
    filter:brightness(.96) saturate(1);
  }
}

@keyframes giMiniDividerFlow{
  0%{
    background-position:0% 50%, 18% 50%, 0% 50%;
    filter:brightness(.97) saturate(1);
  }
  50%{
    background-position:100% 50%, 78% 50%, 100% 50%;
    filter:brightness(1.08) saturate(1.08);
  }
  100%{
    background-position:0% 50%, 18% 50%, 0% 50%;
    filter:brightness(.97) saturate(1);
  }
}

/* Large inter-section dividers: richer CI motion with split light sweeps. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  height:2px!important;
  opacity:.72!important;
  background-image:
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.06) 8%,
      rgba(37,140,255,.38) 20%,
      rgba(134,212,255,.82) 36%,
      rgba(255,255,255,.94) 50%,
      rgba(134,212,255,.82) 64%,
      rgba(37,140,255,.38) 80%,
      rgba(37,140,255,.06) 92%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      transparent 34%,
      rgba(37,140,255,0) 42%,
      rgba(37,140,255,.60) 46%,
      rgba(134,212,255,1) 49%,
      rgba(255,255,255,.98) 50%,
      rgba(134,212,255,1) 51%,
      rgba(37,140,255,.60) 54%,
      rgba(37,140,255,0) 58%,
      transparent 66%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      transparent 26%,
      rgba(138,156,255,0) 35%,
      rgba(138,156,255,.44) 40%,
      rgba(134,212,255,.92) 47%,
      rgba(255,255,255,.94) 50%,
      rgba(134,212,255,.92) 53%,
      rgba(138,156,255,.44) 60%,
      rgba(138,156,255,0) 66%,
      transparent 74%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.02) 18%,
      rgba(255,255,255,.08) 50%,
      rgba(255,255,255,.02) 82%,
      transparent 100%)!important;
  background-size:100% 100%, 36% 100%, 26% 100%, 140% 100%!important;
  background-repeat:no-repeat!important;
  box-shadow:0 0 10px rgba(37,140,255,.10),0 0 22px rgba(134,212,255,.07)!important;
  animation:giDividerSweepComplex 11s cubic-bezier(.45,.06,.32,.98) infinite!important;
}

/* Small section dividers: subtle motion only. */
.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  background-image:
    linear-gradient(90deg,
      rgba(37,140,255,.10) 0%,
      rgba(37,140,255,.88) 18%,
      rgba(134,212,255,1) 42%,
      rgba(255,255,255,.92) 50%,
      rgba(134,212,255,1) 58%,
      rgba(138,156,255,.72) 76%,
      rgba(37,140,255,.10) 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 36%,
      rgba(255,255,255,.76) 50%,
      rgba(255,255,255,0) 64%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(134,212,255,.05) 20%,
      rgba(255,255,255,.10) 50%,
      rgba(134,212,255,.05) 80%,
      transparent 100%)!important;
  background-size:200% 100%, 40% 100%, 100% 100%!important;
  background-repeat:no-repeat!important;
  animation:giMiniDividerFlow 7.2s ease-in-out infinite!important;
  box-shadow:0 0 20px rgba(37,140,255,.18),0 0 30px rgba(134,212,255,.08)!important;
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{
    animation-duration:12.5s!important;
    opacity:.66!important;
  }
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{
    animation-duration:8.2s!important;
    box-shadow:0 0 14px rgba(37,140,255,.14),0 0 22px rgba(134,212,255,.06)!important;
  }
}

@media (prefers-reduced-motion:reduce){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before,
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{
    animation:none!important;
  }
}

/* 1.5.13 — full-width dynamic split/beam divider motion */
@keyframes giDividerBeamSweep {
  0% {
    background-position:
      0% 50%,
      -140% 50%,
      -112% 50%,
      -160% 50%,
      0% 50%;
    filter:brightness(.96) saturate(1);
  }
  18% {
    background-position:
      0% 50%,
      -54% 50%,
      -26% 50%,
      -72% 50%,
      12% 50%;
    filter:brightness(1.02) saturate(1.05);
  }
  42% {
    background-position:
      0% 50%,
      48% 50%,
      62% 50%,
      34% 50%,
      50% 50%;
    filter:brightness(1.12) saturate(1.12);
  }
  50% {
    background-position:
      0% 50%,
      98% 50%,
      116% 50%,
      86% 50%,
      100% 50%;
    filter:brightness(1.16) saturate(1.16);
  }
  58% {
    background-position:
      0% 50%,
      98% 50%,
      116% 50%,
      86% 50%,
      100% 50%;
    filter:brightness(1.15) saturate(1.14);
  }
  82% {
    background-position:
      0% 50%,
      32% 50%,
      22% 50%,
      46% 50%,
      44% 50%;
    filter:brightness(1.03) saturate(1.05);
  }
  100% {
    background-position:
      0% 50%,
      -140% 50%,
      -112% 50%,
      -160% 50%,
      0% 50%;
    filter:brightness(.96) saturate(1);
  }
}

@keyframes giMiniBeamSweep {
  0% {
    background-position:0% 50%, -120% 50%, -90% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
  45% {
    background-position:0% 50%, 102% 50%, 92% 50%, 100% 50%;
    filter:brightness(1.09) saturate(1.08);
  }
  55% {
    background-position:0% 50%, 102% 50%, 92% 50%, 100% 50%;
    filter:brightness(1.1) saturate(1.09);
  }
  100% {
    background-position:0% 50%, -120% 50%, -90% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
}

/* Replace the more static divider feel with full-width traveling split beams. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  background-image:
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.07) 9%,
      rgba(37,140,255,.34) 21%,
      rgba(134,212,255,.78) 37%,
      rgba(255,255,255,.92) 50%,
      rgba(134,212,255,.78) 63%,
      rgba(138,156,255,.34) 79%,
      rgba(37,140,255,.07) 91%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,0) 28%,
      rgba(37,140,255,.40) 40%,
      rgba(134,212,255,.94) 47%,
      rgba(255,255,255,1) 50%,
      rgba(134,212,255,.94) 53%,
      rgba(37,140,255,.40) 60%,
      rgba(37,140,255,0) 72%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 22%,
      rgba(138,156,255,.34) 36%,
      rgba(134,212,255,.88) 46%,
      rgba(255,255,255,.98) 50%,
      rgba(134,212,255,.88) 54%,
      rgba(37,140,255,.34) 64%,
      rgba(37,140,255,0) 78%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 43%,
      rgba(255,255,255,.92) 50%,
      rgba(255,255,255,0) 57%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.015) 14%,
      rgba(255,255,255,.07) 50%,
      rgba(255,255,255,.015) 86%,
      transparent 100%)!important;
  background-size:100% 100%, 42% 100%, 34% 100%, 16% 100%, 165% 100%!important;
  background-repeat:no-repeat!important;
  box-shadow:0 0 10px rgba(37,140,255,.11),0 0 24px rgba(134,212,255,.09),0 0 34px rgba(138,156,255,.05)!important;
  animation:giDividerBeamSweep 8.8s cubic-bezier(.47,.04,.32,.98) infinite!important;
}

/* Small divider bars also get gentle traveling beams across the full width. */
.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  background-image:
    linear-gradient(90deg,
      rgba(37,140,255,.10) 0%,
      rgba(37,140,255,.78) 18%,
      rgba(134,212,255,1) 42%,
      rgba(255,255,255,.94) 50%,
      rgba(134,212,255,1) 58%,
      rgba(138,156,255,.74) 76%,
      rgba(37,140,255,.10) 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 38%,
      rgba(255,255,255,.88) 50%,
      rgba(255,255,255,0) 62%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 34%,
      rgba(138,156,255,.44) 50%,
      rgba(138,156,255,0) 66%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.04) 20%,
      rgba(255,255,255,.10) 50%,
      rgba(255,255,255,.04) 80%,
      transparent 100%)!important;
  background-size:200% 100%, 34% 100%, 28% 100%, 100% 100%!important;
  background-repeat:no-repeat!important;
  animation:giMiniBeamSweep 6.4s ease-in-out infinite!important;
  box-shadow:0 0 20px rgba(37,140,255,.18),0 0 30px rgba(134,212,255,.09)!important;
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{
    animation-duration:10.4s!important;
  }
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{
    animation-duration:7.3s!important;
  }
}

/* 1.5.14 — stronger traveling divider beams + animated CTA borders */
@keyframes giDividerBeamTravelStrong {
  0% {
    background-position:
      0% 50%,
      -170% 50%,
      -136% 50%,
      -205% 50%,
      -88% 50%,
      0% 50%;
    filter:brightness(.96) saturate(1);
  }
  16% {
    background-position:
      0% 50%,
      -76% 50%,
      -42% 50%,
      -110% 50%,
      -18% 50%,
      20% 50%;
    filter:brightness(1.03) saturate(1.08);
  }
  34% {
    background-position:
      0% 50%,
      16% 50%,
      28% 50%,
      -8% 50%,
      38% 50%,
      42% 50%;
    filter:brightness(1.13) saturate(1.16);
  }
  50% {
    background-position:
      0% 50%,
      94% 50%,
      122% 50%,
      78% 50%,
      110% 50%,
      100% 50%;
    filter:brightness(1.18) saturate(1.2);
  }
  60% {
    background-position:
      0% 50%,
      94% 50%,
      122% 50%,
      78% 50%,
      110% 50%,
      100% 50%;
    filter:brightness(1.16) saturate(1.18);
  }
  76% {
    background-position:
      0% 50%,
      28% 50%,
      10% 50%,
      44% 50%,
      34% 50%,
      54% 50%;
    filter:brightness(1.05) saturate(1.08);
  }
  100% {
    background-position:
      0% 50%,
      -170% 50%,
      -136% 50%,
      -205% 50%,
      -88% 50%,
      0% 50%;
    filter:brightness(.96) saturate(1);
  }
}

@keyframes giMiniBeamTravelStrong {
  0% {
    background-position:0% 50%, -145% 50%, -112% 50%, -78% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
  45% {
    background-position:0% 50%, 92% 50%, 108% 50%, 82% 50%, 100% 50%;
    filter:brightness(1.1) saturate(1.1);
  }
  55% {
    background-position:0% 50%, 92% 50%, 108% 50%, 82% 50%, 100% 50%;
    filter:brightness(1.11) saturate(1.11);
  }
  100% {
    background-position:0% 50%, -145% 50%, -112% 50%, -78% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
}

@keyframes giCtaBorderFlow {
  0% { background-position:0% 50%, -120% 50%, -70% 50%, 0% 50%; filter:brightness(.98) saturate(1); }
  50% { background-position:100% 50%, 116% 50%, 92% 50%, 100% 50%; filter:brightness(1.12) saturate(1.14); }
  100% { background-position:0% 50%, -120% 50%, -70% 50%, 0% 50%; filter:brightness(.98) saturate(1); }
}

/* Large dividers: visibly traveling split beams across the full width. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  height:2px!important;
  opacity:.82!important;
  background-image:
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.08) 9%,
      rgba(37,140,255,.36) 21%,
      rgba(134,212,255,.82) 36%,
      rgba(255,255,255,.96) 50%,
      rgba(134,212,255,.82) 64%,
      rgba(138,156,255,.40) 79%,
      rgba(37,140,255,.08) 91%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,0) 22%,
      rgba(37,140,255,.42) 37%,
      rgba(134,212,255,.98) 46%,
      rgba(255,255,255,1) 50%,
      rgba(134,212,255,.98) 54%,
      rgba(37,140,255,.42) 63%,
      rgba(37,140,255,0) 78%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 18%,
      rgba(138,156,255,.38) 34%,
      rgba(134,212,255,.9) 46%,
      rgba(255,255,255,.98) 50%,
      rgba(134,212,255,.9) 54%,
      rgba(37,140,255,.36) 66%,
      rgba(37,140,255,0) 82%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(134,212,255,0) 24%,
      rgba(134,212,255,.46) 46%,
      rgba(255,255,255,.9) 50%,
      rgba(134,212,255,.46) 54%,
      rgba(134,212,255,0) 76%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 42%,
      rgba(255,255,255,.98) 50%,
      rgba(255,255,255,0) 58%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.015) 14%,
      rgba(255,255,255,.07) 50%,
      rgba(255,255,255,.015) 86%,
      transparent 100%)!important;
  background-size:100% 100%, 36% 100%, 28% 100%, 22% 100%, 14% 100%, 190% 100%!important;
  background-repeat:no-repeat!important;
  box-shadow:0 0 12px rgba(37,140,255,.13),0 0 28px rgba(134,212,255,.10),0 0 42px rgba(138,156,255,.06)!important;
  animation:giDividerBeamTravelStrong 6.2s cubic-bezier(.5,.04,.32,.98) infinite!important;
}

/* Small divider bars: faster but still restrained. */
.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  background-image:
    linear-gradient(90deg,
      rgba(37,140,255,.10) 0%,
      rgba(37,140,255,.82) 18%,
      rgba(134,212,255,1) 42%,
      rgba(255,255,255,.96) 50%,
      rgba(134,212,255,1) 58%,
      rgba(138,156,255,.74) 76%,
      rgba(37,140,255,.10) 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 38%,
      rgba(255,255,255,.96) 50%,
      rgba(255,255,255,0) 62%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 34%,
      rgba(138,156,255,.48) 50%,
      rgba(138,156,255,0) 66%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,0) 30%,
      rgba(134,212,255,.42) 50%,
      rgba(37,140,255,0) 70%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.04) 20%,
      rgba(255,255,255,.10) 50%,
      rgba(255,255,255,.04) 80%,
      transparent 100%)!important;
  background-size:200% 100%, 28% 100%, 24% 100%, 20% 100%, 100% 100%!important;
  background-repeat:no-repeat!important;
  animation:giMiniBeamTravelStrong 4.9s ease-in-out infinite!important;
  box-shadow:0 0 22px rgba(37,140,255,.20),0 0 32px rgba(134,212,255,.10)!important;
}

/* CTA buttons: animated complex border matching the divider system. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn){
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1.15px;
  pointer-events:none;
  background-image:
    linear-gradient(90deg,
      rgba(37,140,255,.44) 0%,
      rgba(134,212,255,.94) 26%,
      rgba(255,255,255,.98) 50%,
      rgba(138,156,255,.82) 74%,
      rgba(37,140,255,.44) 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 38%,
      rgba(255,255,255,.96) 50%,
      rgba(255,255,255,0) 62%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 34%,
      rgba(138,156,255,.54) 50%,
      rgba(138,156,255,0) 66%,
      transparent 100%),
    linear-gradient(90deg,
      rgba(255,255,255,.03) 0%,
      rgba(255,255,255,.09) 50%,
      rgba(255,255,255,.03) 100%);
  background-size:200% 100%, 32% 100%, 24% 100%, 100% 100%;
  background-repeat:no-repeat;
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  mask-composite:exclude;
  animation:giCtaBorderFlow 4.6s cubic-bezier(.47,.06,.32,.98) infinite;
  opacity:.98;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::before{
  animation-duration:3.4s;
  filter:brightness(1.14) saturate(1.16);
}

:is(.btn-primary)::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(120deg,rgba(255,255,255,.18),transparent 24%,transparent 74%,rgba(143,216,255,.10));
  mix-blend-mode:screen;
  opacity:.9;
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{
    animation-duration:7.1s!important;
  }
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{
    animation-duration:5.6s!important;
  }
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
    animation-duration:5.1s;
  }
}

/* 1.5.15 — clockwise CTA border motion + differentiated emphasis + faster dividers */
@keyframes giDividerRightBiasTravel {
  0% {
    background-position:
      0% 50%,
      -165% 50%,
      -132% 50%,
      -198% 50%,
      -102% 50%,
      0% 50%;
    filter:brightness(.96) saturate(1);
  }
  28% {
    background-position:
      0% 50%,
      -28% 50%,
      -6% 50%,
      -42% 50%,
      4% 50%,
      36% 50%;
    filter:brightness(1.08) saturate(1.12);
  }
  54% {
    background-position:
      0% 50%,
      118% 50%,
      146% 50%,
      96% 50%,
      124% 50%,
      100% 50%;
    filter:brightness(1.18) saturate(1.22);
  }
  66% {
    background-position:
      0% 50%,
      84% 50%,
      102% 50%,
      72% 50%,
      96% 50%,
      80% 50%;
    filter:brightness(1.13) saturate(1.16);
  }
  78% {
    background-position:
      0% 50%,
      102% 50%,
      128% 50%,
      88% 50%,
      112% 50%,
      94% 50%;
    filter:brightness(1.16) saturate(1.18);
  }
  100% {
    background-position:
      0% 50%,
      -165% 50%,
      -132% 50%,
      -198% 50%,
      -102% 50%,
      0% 50%;
    filter:brightness(.96) saturate(1);
  }
}

@keyframes giMiniDividerRightBiasTravel {
  0% {
    background-position:0% 50%, -138% 50%, -106% 50%, -72% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
  42% {
    background-position:0% 50%, 92% 50%, 104% 50%, 82% 50%, 100% 50%;
    filter:brightness(1.10) saturate(1.10);
  }
  58% {
    background-position:0% 50%, 74% 50%, 82% 50%, 62% 50%, 72% 50%;
    filter:brightness(1.05) saturate(1.05);
  }
  74% {
    background-position:0% 50%, 98% 50%, 110% 50%, 86% 50%, 100% 50%;
    filter:brightness(1.11) saturate(1.11);
  }
  100% {
    background-position:0% 50%, -138% 50%, -106% 50%, -72% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
}

@keyframes giBorderSpinClockwise {
  0%{transform:rotate(0deg);filter:brightness(.98) saturate(1)}
  50%{transform:rotate(180deg);filter:brightness(1.12) saturate(1.14)}
  100%{transform:rotate(360deg);filter:brightness(.98) saturate(1)}
}

/* Divider motion: faster overall, but still slower than CTA borders; mostly rightward with brief reverse. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  animation:giDividerRightBiasTravel 4.95s cubic-bezier(.5,.04,.32,.98) infinite!important;
}

.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  animation:giMiniDividerRightBiasTravel 4.15s ease-in-out infinite!important;
}

/* CTA border base: clockwise animated border rather than left-right sweep. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
  inset:-1px!important;
  padding:1.15px!important;
  background-image:
    conic-gradient(from 0deg,
      rgba(37,140,255,.42) 0deg,
      rgba(134,212,255,.95) 70deg,
      rgba(255,255,255,.98) 118deg,
      rgba(138,156,255,.82) 176deg,
      rgba(37,140,255,.38) 252deg,
      rgba(134,212,255,.92) 310deg,
      rgba(37,140,255,.42) 360deg),
    radial-gradient(circle at 50% 50%,rgba(255,255,255,.14),rgba(255,255,255,0) 58%);
  background-size:100% 100%,100% 100%!important;
  animation:giBorderSpinClockwise 3.2s linear infinite!important;
  transform-origin:50% 50%!important;
}

/* Important buttons: more premium, slightly richer accent color. */
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn){
  box-shadow:0 18px 48px rgba(8,31,68,.24),0 10px 28px rgba(37,140,255,.13),0 0 0 1px rgba(138,156,255,.10),inset 0 1px 0 rgba(255,255,255,.96)!important;
}
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before{
  background-image:
    conic-gradient(from 0deg,
      rgba(37,140,255,.50) 0deg,
      rgba(134,212,255,.98) 58deg,
      rgba(255,255,255,1) 112deg,
      rgba(138,156,255,.94) 176deg,
      rgba(124,168,255,.72) 220deg,
      rgba(134,212,255,.96) 296deg,
      rgba(37,140,255,.50) 360deg),
    radial-gradient(circle at 50% 50%,rgba(138,156,255,.18),rgba(138,156,255,0) 58%)!important;
  animation-duration:2.65s!important;
}

/* Secondary buttons: calmer and more technical. */
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost)::before{
  background-image:
    conic-gradient(from 0deg,
      rgba(37,140,255,.28) 0deg,
      rgba(134,212,255,.78) 84deg,
      rgba(255,255,255,.92) 132deg,
      rgba(107,141,196,.54) 210deg,
      rgba(37,140,255,.24) 286deg,
      rgba(134,212,255,.76) 334deg,
      rgba(37,140,255,.28) 360deg),
    radial-gradient(circle at 50% 50%,rgba(134,212,255,.10),rgba(134,212,255,0) 58%)!important;
  animation-duration:3.7s!important;
  opacity:.92!important;
}

/* Hover/active states: keep clockwise motion, accelerate subtly. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::before{
  animation-duration:2.45s!important;
  filter:brightness(1.15) saturate(1.18);
}
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost):hover::before{
  animation-duration:3.05s!important;
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{
    animation-duration:5.55s!important;
  }
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{
    animation-duration:4.7s!important;
  }
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
    animation-duration:3.55s!important;
  }
  :is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
    a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before{
    animation-duration:2.95s!important;
  }
}

@media (prefers-reduced-motion:reduce){
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
    animation:none!important;
  }
}

/* 1.5.16 — border-only CTA scanners + fast edge-faded dividers */
@property --gi-cta-ring-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@keyframes giCtaRingClockwise {
  from { --gi-cta-ring-angle: 0deg; }
  to   { --gi-cta-ring-angle: 360deg; }
}

@keyframes giDividerFastRightBias {
  0% {
    background-position:0% 50%, -150% 50%, -112% 50%, -182% 50%, -82% 50%;
    filter:brightness(.98) saturate(1);
  }
  30% {
    background-position:0% 50%, -12% 50%, 12% 50%, -26% 50%, 24% 50%;
    filter:brightness(1.08) saturate(1.10);
  }
  58% {
    background-position:0% 50%, 116% 50%, 142% 50%, 98% 50%, 122% 50%;
    filter:brightness(1.16) saturate(1.18);
  }
  70% {
    background-position:0% 50%, 86% 50%, 98% 50%, 76% 50%, 92% 50%;
    filter:brightness(1.10) saturate(1.12);
  }
  82% {
    background-position:0% 50%, 108% 50%, 130% 50%, 94% 50%, 116% 50%;
    filter:brightness(1.14) saturate(1.16);
  }
  100% {
    background-position:0% 50%, -150% 50%, -112% 50%, -182% 50%, -82% 50%;
    filter:brightness(.98) saturate(1);
  }
}

@keyframes giMiniDividerFastRightBias {
  0%   { background-position:0% 50%, -128% 50%, -92% 50%, -58% 50%; }
  48%  { background-position:0% 50%, 106% 50%, 118% 50%, 96% 50%; }
  62%  { background-position:0% 50%, 82% 50%, 92% 50%, 74% 50%; }
  78%  { background-position:0% 50%, 104% 50%, 114% 50%, 96% 50%; }
  100% { background-position:0% 50%, -128% 50%, -92% 50%, -58% 50%; }
}

/* Large dividers: fade both ends, move fast, mostly rightward with short reversals. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  opacity:.84!important;
  background-image:
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.015) 5%,
      rgba(37,140,255,.16) 13%,
      rgba(134,212,255,.44) 26%,
      rgba(255,255,255,.74) 50%,
      rgba(134,212,255,.44) 74%,
      rgba(37,140,255,.16) 87%,
      rgba(37,140,255,.015) 95%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,0) 26%,
      rgba(37,140,255,.46) 40%,
      rgba(134,212,255,.98) 47%,
      rgba(255,255,255,1) 50%,
      rgba(134,212,255,.98) 53%,
      rgba(37,140,255,.46) 60%,
      rgba(37,140,255,0) 74%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 22%,
      rgba(138,156,255,.42) 38%,
      rgba(134,212,255,.90) 47%,
      rgba(255,255,255,.96) 50%,
      rgba(134,212,255,.90) 53%,
      rgba(138,156,255,.42) 62%,
      rgba(138,156,255,0) 78%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(134,212,255,0) 28%,
      rgba(134,212,255,.56) 47%,
      rgba(255,255,255,.96) 50%,
      rgba(134,212,255,.56) 53%,
      rgba(134,212,255,0) 72%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 43%,
      rgba(255,255,255,.98) 50%,
      rgba(255,255,255,0) 57%,
      transparent 100%)!important;
  background-size:100% 100%, 34% 100%, 27% 100%, 20% 100%, 12% 100%!important;
  background-repeat:no-repeat!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
  box-shadow:0 0 10px rgba(37,140,255,.10),0 0 22px rgba(134,212,255,.08)!important;
  animation:giDividerFastRightBias 2.75s cubic-bezier(.48,.04,.30,.98) infinite!important;
}

/* Small dividers: same direction language, faster but lower amplitude. */
.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  animation:giMiniDividerFastRightBias 2.35s ease-in-out infinite!important;
}

/* -------------------------------------------------------------------------
   CTA scanner rings: the moving effect is clipped to the border only.
   No animated light is allowed to cross the button interior.
   ------------------------------------------------------------------------- */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn){
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}

/* Reset earlier interior overlays on CTA buttons. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{
  content:none!important;
  display:none!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  z-index:2!important;
  border-radius:inherit!important;
  padding:1.35px!important;
  pointer-events:none!important;
  background:
    conic-gradient(from var(--gi-cta-ring-angle),
      transparent 0deg,
      transparent 214deg,
      rgba(37,140,255,.08) 224deg,
      rgba(37,140,255,.60) 238deg,
      rgba(134,212,255,.98) 252deg,
      rgba(255,255,255,1) 264deg,
      rgba(134,212,255,.94) 276deg,
      rgba(138,156,255,.70) 290deg,
      rgba(37,140,255,.18) 306deg,
      transparent 322deg,
      transparent 360deg)!important;
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0)!important;
  mask-composite:exclude!important;
  transform:none!important;
  transform-origin:50% 50%!important;
  opacity:1!important;
  animation:giCtaRingClockwise 1.75s linear infinite!important;
  filter:drop-shadow(0 0 4px rgba(134,212,255,.22));
}

/* Primary/high-priority CTAs: brighter dual scanner segment + subtle violet accent. */
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before{
  background:
    conic-gradient(from var(--gi-cta-ring-angle),
      transparent 0deg,
      rgba(138,156,255,.00) 48deg,
      rgba(138,156,255,.20) 60deg,
      rgba(134,212,255,.72) 70deg,
      rgba(255,255,255,.92) 78deg,
      rgba(134,212,255,.56) 88deg,
      rgba(138,156,255,.08) 100deg,
      transparent 112deg,
      transparent 204deg,
      rgba(37,140,255,.08) 216deg,
      rgba(37,140,255,.70) 232deg,
      rgba(134,212,255,1) 248deg,
      rgba(255,255,255,1) 260deg,
      rgba(134,212,255,.98) 272deg,
      rgba(138,156,255,.78) 286deg,
      rgba(37,140,255,.18) 304deg,
      transparent 322deg,
      transparent 360deg)!important;
  animation-duration:1.48s!important;
  filter:drop-shadow(0 0 5px rgba(134,212,255,.25)) drop-shadow(0 0 7px rgba(138,156,255,.12));
}

/* Secondary/ghost CTAs: single calmer scanner segment. */
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost)::before{
  background:
    conic-gradient(from var(--gi-cta-ring-angle),
      transparent 0deg,
      transparent 226deg,
      rgba(37,140,255,.06) 238deg,
      rgba(134,212,255,.70) 254deg,
      rgba(255,255,255,.84) 266deg,
      rgba(134,212,255,.56) 278deg,
      rgba(37,140,255,.08) 294deg,
      transparent 310deg,
      transparent 360deg)!important;
  animation-duration:2.05s!important;
  opacity:.88!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::before{
  animation-duration:1.25s!important;
  filter:drop-shadow(0 0 6px rgba(134,212,255,.28)) brightness(1.12) saturate(1.14);
}
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost):hover::before{
  animation-duration:1.65s!important;
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{
    animation-duration:3.15s!important;
  }
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{
    animation-duration:2.7s!important;
  }
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
    animation-duration:2.05s!important;
  }
  :is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
    a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before{
    animation-duration:1.72s!important;
  }
}

@media (prefers-reduced-motion:reduce){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before,
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
    animation:none!important;
  }
}

/* 1.5.17 — clear scanner divider travel + smoother synchronized CTA ring scanners */
@property --gi-cta-ring-angle-sync {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@keyframes giCtaRingSync {
  from { --gi-cta-ring-angle-sync: 0deg; }
  to   { --gi-cta-ring-angle-sync: 360deg; }
}

@keyframes giDividerScannerTravel {
  0% {
    background-position:0% 50%, -220% 50%, -170% 50%, -120% 50%, -85% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
  38% {
    background-position:0% 50%, 8% 50%, 22% 50%, 34% 50%, 46% 50%, 26% 50%;
    filter:brightness(1.10) saturate(1.12);
  }
  56% {
    background-position:0% 50%, 120% 50%, 138% 50%, 154% 50%, 168% 50%, 100% 50%;
    filter:brightness(1.18) saturate(1.20);
  }
  68% {
    background-position:0% 50%, 86% 50%, 98% 50%, 108% 50%, 118% 50%, 78% 50%;
    filter:brightness(1.10) saturate(1.12);
  }
  100% {
    background-position:0% 50%, -220% 50%, -170% 50%, -120% 50%, -85% 50%, 0% 50%;
    filter:brightness(.98) saturate(1);
  }
}

@keyframes giMiniDividerScannerTravel {
  0%   { background-position:0% 50%, -170% 50%, -128% 50%, -86% 50%, 0% 50%; filter:brightness(.99) saturate(1); }
  44%  { background-position:0% 50%, 38% 50%, 52% 50%, 64% 50%, 48% 50%; filter:brightness(1.08) saturate(1.08); }
  58%  { background-position:0% 50%, 104% 50%, 118% 50%, 134% 50%, 100% 50%; filter:brightness(1.12) saturate(1.10); }
  72%  { background-position:0% 50%, 74% 50%, 86% 50%, 94% 50%, 70% 50%; filter:brightness(1.05) saturate(1.05); }
  100% { background-position:0% 50%, -170% 50%, -128% 50%, -86% 50%, 0% 50%; filter:brightness(.99) saturate(1); }
}

/* Dividers: obvious scanner-line travel, faster, edge-faded, mostly rightward with brief reverse. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  opacity:.88!important;
  background-image:
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.015) 6%,
      rgba(37,140,255,.14) 14%,
      rgba(134,212,255,.42) 28%,
      rgba(255,255,255,.74) 50%,
      rgba(134,212,255,.42) 72%,
      rgba(37,140,255,.14) 86%,
      rgba(37,140,255,.015) 94%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,0) 18%,
      rgba(37,140,255,.18) 34%,
      rgba(37,140,255,.62) 44%,
      rgba(134,212,255,.98) 48%,
      rgba(255,255,255,1) 50%,
      rgba(134,212,255,.98) 52%,
      rgba(37,140,255,.62) 56%,
      rgba(37,140,255,.18) 66%,
      rgba(37,140,255,0) 82%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 18%,
      rgba(138,156,255,.28) 34%,
      rgba(138,156,255,.74) 45%,
      rgba(255,255,255,.94) 50%,
      rgba(134,212,255,.84) 55%,
      rgba(37,140,255,.18) 68%,
      rgba(37,140,255,0) 82%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(134,212,255,0) 22%,
      rgba(134,212,255,.34) 46%,
      rgba(255,255,255,.88) 50%,
      rgba(134,212,255,.34) 54%,
      rgba(134,212,255,0) 78%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,0) 34%,
      rgba(255,255,255,.96) 50%,
      rgba(255,255,255,0) 66%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.014) 16%,
      rgba(255,255,255,.06) 50%,
      rgba(255,255,255,.014) 84%,
      transparent 100%)!important;
  background-size:100% 100%, 18% 100%, 13% 100%, 9% 100%, 6% 100%, 160% 100%!important;
  background-repeat:no-repeat!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  box-shadow:0 0 10px rgba(37,140,255,.10),0 0 22px rgba(134,212,255,.09)!important;
  animation:giDividerScannerTravel 1.7s linear infinite!important;
}

.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  background-image:
    linear-gradient(90deg,
      rgba(37,140,255,.08) 0%,
      rgba(37,140,255,.44) 22%,
      rgba(134,212,255,.86) 42%,
      rgba(255,255,255,.88) 50%,
      rgba(134,212,255,.86) 58%,
      rgba(138,156,255,.44) 78%,
      rgba(37,140,255,.08) 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,0) 24%,
      rgba(37,140,255,.48) 44%,
      rgba(255,255,255,.96) 50%,
      rgba(37,140,255,.48) 56%,
      rgba(37,140,255,0) 76%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(138,156,255,0) 26%,
      rgba(138,156,255,.36) 50%,
      rgba(138,156,255,0) 74%,
      transparent 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.04) 20%,
      rgba(255,255,255,.10) 50%,
      rgba(255,255,255,.04) 80%,
      transparent 100%)!important;
  background-size:100% 100%, 16% 100%, 12% 100%, 100% 100%!important;
  background-repeat:no-repeat!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  animation:giMiniDividerScannerTravel 1.42s linear infinite!important;
}

/* CTA buttons: remove old ring definitions and use only synchronized clockwise border scanners. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn){
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before,
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  border-radius:inherit!important;
  padding:1.2px!important;
  pointer-events:none!important;
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0)!important;
  mask-composite:exclude!important;
  transform:none!important;
  transform-origin:50% 50%!important;
}

/* Base ring: smooth clockwise scan only in border. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
  z-index:2!important;
  background:
    conic-gradient(from var(--gi-cta-ring-angle-sync),
      transparent 0deg,
      transparent 210deg,
      rgba(37,140,255,.10) 224deg,
      rgba(37,140,255,.56) 238deg,
      rgba(134,212,255,.92) 252deg,
      rgba(255,255,255,.98) 264deg,
      rgba(134,212,255,.86) 276deg,
      rgba(138,156,255,.58) 290deg,
      rgba(37,140,255,.16) 306deg,
      transparent 322deg,
      transparent 360deg)!important;
  animation:giCtaRingSync 1.45s linear infinite!important;
  filter:drop-shadow(0 0 4px rgba(134,212,255,.18));
  opacity:.96!important;
}

/* Secondary subtle ring for depth; same clockwise motion, phase-shifted by start angle via gradient design. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{
  z-index:1!important;
  opacity:.72!important;
  background:
    conic-gradient(from calc(var(--gi-cta-ring-angle-sync) + 140deg),
      transparent 0deg,
      transparent 250deg,
      rgba(255,255,255,.00) 258deg,
      rgba(255,255,255,.54) 270deg,
      rgba(134,212,255,.42) 282deg,
      rgba(37,140,255,.08) 294deg,
      transparent 308deg,
      transparent 360deg)!important;
  animation:giCtaRingSync 1.45s linear infinite!important;
}

/* Primary / important CTAs: richer gradients and extra subtle accent color. */
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before{
  background:
    conic-gradient(from var(--gi-cta-ring-angle-sync),
      transparent 0deg,
      rgba(138,156,255,.00) 34deg,
      rgba(138,156,255,.20) 50deg,
      rgba(134,212,255,.74) 62deg,
      rgba(255,255,255,.96) 74deg,
      rgba(134,212,255,.64) 86deg,
      rgba(138,156,255,.10) 98deg,
      transparent 112deg,
      transparent 208deg,
      rgba(37,140,255,.12) 222deg,
      rgba(37,140,255,.74) 236deg,
      rgba(134,212,255,1) 248deg,
      rgba(255,255,255,1) 258deg,
      rgba(124,168,255,.86) 270deg,
      rgba(138,156,255,.68) 284deg,
      rgba(37,140,255,.18) 300deg,
      transparent 316deg,
      transparent 360deg)!important;
  animation-duration:1.34s!important;
  filter:drop-shadow(0 0 5px rgba(134,212,255,.22)) drop-shadow(0 0 7px rgba(138,156,255,.10));
}
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::after{
  opacity:.82!important;
  background:
    conic-gradient(from calc(var(--gi-cta-ring-angle-sync) + 155deg),
      transparent 0deg,
      transparent 252deg,
      rgba(255,255,255,.00) 260deg,
      rgba(255,255,255,.72) 270deg,
      rgba(138,156,255,.42) 280deg,
      rgba(124,168,255,.18) 292deg,
      transparent 306deg,
      transparent 360deg)!important;
  animation-duration:1.34s!important;
}

/* Secondary / ghost: same motion, calmer technical palette. */
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost)::before{
  background:
    conic-gradient(from var(--gi-cta-ring-angle-sync),
      transparent 0deg,
      transparent 224deg,
      rgba(37,140,255,.06) 236deg,
      rgba(134,212,255,.62) 252deg,
      rgba(255,255,255,.84) 264deg,
      rgba(134,212,255,.50) 276deg,
      rgba(37,140,255,.08) 292deg,
      transparent 308deg,
      transparent 360deg)!important;
  animation-duration:1.45s!important;
  opacity:.90!important;
}
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost)::after{
  opacity:.60!important;
  background:
    conic-gradient(from calc(var(--gi-cta-ring-angle-sync) + 150deg),
      transparent 0deg,
      transparent 260deg,
      rgba(255,255,255,.00) 268deg,
      rgba(255,255,255,.44) 278deg,
      rgba(134,212,255,.22) 290deg,
      transparent 304deg,
      transparent 360deg)!important;
  animation-duration:1.45s!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::before,
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::after{
  filter:drop-shadow(0 0 6px rgba(134,212,255,.24)) brightness(1.08) saturate(1.10);
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{animation-duration:1.92s!important;}
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{animation-duration:1.58s!important;}
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{animation-duration:1.62s!important;}
  :is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
    a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before,
  :is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
    a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::after{animation-duration:1.48s!important;}
}

@media (prefers-reduced-motion:reduce){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before,
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{animation:none!important;}
}

/* 1.5.18 — unmistakable traveling scanner dividers + smooth orbital CTA borders */
@property --gi-cta-orbit-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@keyframes giDividerScannerTravel {
  0%   { background-position:0 0,0 0,0 0; }
  70%  { background-position:1120px 0,1120px 0,0 0; }
  82%  { background-position:960px 0,960px 0,0 0; }
  100% { background-position:1600px 0,1600px 0,0 0; }
}

@keyframes giMiniScannerTravel {
  0%   { background-position:0 0,0 0,0 0; }
  70%  { background-position:420px 0,420px 0,0 0; }
  82%  { background-position:330px 0,330px 0,0 0; }
  100% { background-position:600px 0,600px 0,0 0; }
}

@keyframes giCtaOrbitClockwise {
  from { --gi-cta-orbit-angle: 0deg; }
  to   { --gi-cta-orbit-angle: 360deg; }
}

/* -------------------------------------------------------------------------
   SECTION DIVIDERS
   Two repeating scanner bands physically travel along the divider. The final
   frame lands on an exact repeat phase, so the loop does not visibly jump.
   ------------------------------------------------------------------------- */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  height:2px!important;
  opacity:.92!important;
  background-image:
    linear-gradient(90deg,
      transparent 0 34%,
      rgba(37,140,255,.08) 38%,
      rgba(37,140,255,.46) 43%,
      rgba(134,212,255,.96) 47%,
      rgba(255,255,255,.98) 50%,
      rgba(134,212,255,.90) 53%,
      rgba(138,156,255,.42) 57%,
      rgba(37,140,255,.08) 62%,
      transparent 66% 100%),
    linear-gradient(90deg,
      transparent 0 40%,
      rgba(138,156,255,.06) 43%,
      rgba(134,212,255,.48) 47%,
      rgba(255,255,255,.72) 50%,
      rgba(134,212,255,.42) 53%,
      rgba(37,140,255,.05) 57%,
      transparent 60% 100%),
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.07) 9%,
      rgba(37,140,255,.20) 22%,
      rgba(134,212,255,.44) 42%,
      rgba(255,255,255,.54) 50%,
      rgba(134,212,255,.44) 58%,
      rgba(37,140,255,.20) 78%,
      rgba(37,140,255,.07) 91%,
      transparent 100%)!important;
  background-size:400px 100%,320px 100%,100% 100%!important;
  background-repeat:repeat-x,repeat-x,no-repeat!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  box-shadow:0 0 11px rgba(37,140,255,.11),0 0 24px rgba(134,212,255,.08)!important;
  animation:giDividerScannerTravel 1.72s linear infinite!important;
}

/* Small divider accents use the same scanner logic at a smaller scale. */
.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  background-image:
    linear-gradient(90deg,
      transparent 0 32%,
      rgba(37,140,255,.12) 38%,
      rgba(37,140,255,.52) 44%,
      rgba(134,212,255,.92) 48%,
      rgba(255,255,255,.92) 50%,
      rgba(134,212,255,.78) 54%,
      rgba(138,156,255,.30) 60%,
      transparent 68% 100%),
    linear-gradient(90deg,
      transparent 0 40%,
      rgba(138,156,255,.12) 44%,
      rgba(134,212,255,.56) 48%,
      rgba(255,255,255,.66) 51%,
      rgba(37,140,255,.08) 58%,
      transparent 64% 100%),
    linear-gradient(90deg,
      rgba(37,140,255,.10) 0%,
      rgba(134,212,255,.46) 42%,
      rgba(255,255,255,.54) 50%,
      rgba(134,212,255,.46) 58%,
      rgba(37,140,255,.10) 100%)!important;
  background-size:150px 100%,100px 100%,100% 100%!important;
  background-repeat:repeat-x,repeat-x,no-repeat!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)!important;
  animation:giMiniScannerTravel 1.38s linear infinite!important;
}

/* -------------------------------------------------------------------------
   CTA BUTTONS
   One synchronized, smooth clockwise orbital gradient. Broad color transitions
   replace the former bright wedge, so the border reads as a premium orbit and
   never as a lightning flash. The animation stays strictly in the border ring.
   ------------------------------------------------------------------------- */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn){
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{
  content:none!important;
  display:none!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  z-index:2!important;
  border-radius:inherit!important;
  padding:1.35px!important;
  pointer-events:none!important;
  background:conic-gradient(
    from var(--gi-cta-orbit-angle),
    rgba(37,140,255,.34) 0deg,
    rgba(71,157,248,.48) 42deg,
    rgba(134,212,255,.72) 92deg,
    rgba(223,245,255,.82) 136deg,
    rgba(138,156,255,.66) 188deg,
    rgba(102,132,207,.44) 238deg,
    rgba(80,170,228,.58) 292deg,
    rgba(55,151,244,.44) 330deg,
    rgba(37,140,255,.34) 360deg
  )!important;
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0)!important;
  mask-composite:exclude!important;
  animation:giCtaOrbitClockwise 1.78s linear infinite!important;
  opacity:.96!important;
  filter:drop-shadow(0 0 4px rgba(134,212,255,.15));
}

/* Primary/high-priority CTAs: same synchronized motion, richer CI palette and
   one additional restrained violet note — not a separate moving flash. */
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before{
  background:conic-gradient(
    from var(--gi-cta-orbit-angle),
    rgba(37,140,255,.42) 0deg,
    rgba(73,162,255,.62) 40deg,
    rgba(134,212,255,.88) 88deg,
    rgba(238,249,255,.94) 132deg,
    rgba(138,156,255,.82) 178deg,
    rgba(159,132,226,.52) 220deg,
    rgba(111,143,220,.58) 260deg,
    rgba(84,188,235,.70) 310deg,
    rgba(55,151,244,.52) 338deg,
    rgba(37,140,255,.42) 360deg
  )!important;
  filter:drop-shadow(0 0 5px rgba(134,212,255,.18)) drop-shadow(0 0 7px rgba(138,156,255,.08));
}

/* Secondary/ghost: cooler and calmer, identical orbital speed for synchronization. */
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost)::before{
  background:conic-gradient(
    from var(--gi-cta-orbit-angle),
    rgba(37,140,255,.24) 0deg,
    rgba(71,157,232,.34) 52deg,
    rgba(134,212,255,.56) 106deg,
    rgba(211,236,250,.64) 152deg,
    rgba(107,141,196,.46) 210deg,
    rgba(78,119,174,.30) 264deg,
    rgba(91,177,218,.44) 316deg,
    rgba(37,140,255,.24) 360deg
  )!important;
  opacity:.88!important;
}

/* Hover changes intensity only — never the speed, so all CTA rings stay synchronized. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::before{
  filter:drop-shadow(0 0 6px rgba(134,212,255,.20)) saturate(1.08) brightness(1.05);
}

@media (max-width:680px){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before{animation-duration:1.95s!important;}
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{animation-duration:1.56s!important;}
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{animation-duration:2.05s!important;}
}

@media (prefers-reduced-motion:reduce){
  main#top > section + section::before,
  .gi-home-page .gi-conversion-hero + section::before,
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{animation:none!important;}
}

/* 1.5.19 — transform-based scanner dividers + richer smooth CTA orbit */
@property --gi-cta-orbit-angle-v2 {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@keyframes giCtaOrbitClockwiseV2 {
  from { --gi-cta-orbit-angle-v2: 0deg; }
  to   { --gi-cta-orbit-angle-v2: 360deg; }
}

@keyframes giSectionScannerRun {
  0%   { transform:translate3d(0,0,0) scaleX(.82); opacity:0; }
  6%   { opacity:.92; }
  64%  { transform:translate3d(510%,0,0) scaleX(1.06); opacity:1; }
  76%  { transform:translate3d(462%,0,0) scaleX(.94); opacity:.86; }
  100% { transform:translate3d(575%,0,0) scaleX(.78); opacity:0; }
}

@keyframes giSectionScannerRunSecondary {
  0%   { transform:translate3d(0,0,0) scaleX(.78); opacity:0; }
  10%  { opacity:.54; }
  62%  { transform:translate3d(860%,0,0) scaleX(1.04); opacity:.64; }
  74%  { transform:translate3d(808%,0,0) scaleX(.92); opacity:.48; }
  100% { transform:translate3d(930%,0,0) scaleX(.76); opacity:0; }
}

@keyframes giMiniScannerSweepV2 {
  0%   { background-position:-150px 0,0 0; }
  66%  { background-position:170px 0,0 0; }
  78%  { background-position:132px 0,0 0; }
  100% { background-position:220px 0,0 0; }
}

/* Disable the legacy section pseudo dividers: 1.5.19 uses physical scanner tracks. */
main#top > section + section::before,
.gi-home-page .gi-conversion-hero + section::before{
  content:none!important;
  display:none!important;
  animation:none!important;
}

.gi-section-divider{
  position:relative;
  z-index:3;
  width:min(1240px,calc(100% - 40px));
  height:0;
  margin:0 auto;
  pointer-events:none;
  overflow:visible;
}
.gi-section-divider__track{
  position:absolute;
  left:0;right:0;top:-1px;
  height:2px;
  overflow:hidden;
  pointer-events:none;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(37,140,255,.04) 8%,
    rgba(37,140,255,.18) 22%,
    rgba(134,212,255,.42) 42%,
    rgba(255,255,255,.54) 50%,
    rgba(134,212,255,.42) 58%,
    rgba(37,140,255,.18) 78%,
    rgba(37,140,255,.04) 92%,
    transparent 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
  box-shadow:0 0 10px rgba(37,140,255,.10),0 0 20px rgba(134,212,255,.06);
}
.gi-section-divider__track::before,
.gi-section-divider__track::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:-24%;
  border-radius:999px;
  will-change:transform,opacity;
  backface-visibility:hidden;
}
.gi-section-divider__track::before{
  width:24%;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(37,140,255,.08) 10%,
    rgba(37,140,255,.58) 30%,
    rgba(134,212,255,.98) 45%,
    rgba(255,255,255,1) 52%,
    rgba(134,212,255,.92) 60%,
    rgba(138,156,255,.54) 74%,
    rgba(37,140,255,.08) 90%,
    transparent 100%);
  filter:drop-shadow(0 0 4px rgba(134,212,255,.32)) drop-shadow(0 0 8px rgba(37,140,255,.18));
  animation:giSectionScannerRun 1.55s linear infinite;
}
.gi-section-divider__track::after{
  width:13%;
  left:-13%;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(138,156,255,.04) 10%,
    rgba(138,156,255,.42) 34%,
    rgba(134,212,255,.78) 48%,
    rgba(255,255,255,.74) 55%,
    rgba(37,140,255,.24) 72%,
    transparent 100%);
  filter:drop-shadow(0 0 4px rgba(138,156,255,.18));
  animation:giSectionScannerRunSecondary 1.55s linear infinite;
  animation-delay:-.38s;
}

/* Small dividers remain pseudo based, but use a sharply moving scanner stripe. */
.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  background-image:
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.08) 12%,
      rgba(37,140,255,.72) 34%,
      rgba(134,212,255,1) 46%,
      rgba(255,255,255,.96) 50%,
      rgba(138,156,255,.58) 62%,
      transparent 82%),
    linear-gradient(90deg,
      rgba(37,140,255,.10),
      rgba(134,212,255,.48) 42%,
      rgba(255,255,255,.52) 50%,
      rgba(134,212,255,.48) 58%,
      rgba(37,140,255,.10))!important;
  background-size:96px 100%,100% 100%!important;
  background-repeat:no-repeat,no-repeat!important;
  animation:giMiniScannerSweepV2 1.28s linear infinite!important;
}

/* CTA orbit: synchronized, continuous and more complex without bright lightning wedges. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn){
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before,
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-1px!important;
  border-radius:inherit!important;
  padding:1.2px!important;
  pointer-events:none!important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  mask-composite:exclude!important;
  transform:none!important;
  transform-origin:50% 50%!important;
  animation:giCtaOrbitClockwiseV2 1.22s linear infinite!important;
}
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
  z-index:2!important;
  opacity:.94!important;
  background:conic-gradient(
    from var(--gi-cta-orbit-angle-v2),
    rgba(37,140,255,.34) 0deg,
    rgba(73,162,255,.48) 34deg,
    rgba(134,212,255,.72) 82deg,
    rgba(224,246,255,.78) 126deg,
    rgba(167,196,255,.70) 166deg,
    rgba(138,156,255,.64) 206deg,
    rgba(111,143,220,.50) 246deg,
    rgba(84,188,235,.62) 294deg,
    rgba(55,151,244,.46) 334deg,
    rgba(37,140,255,.34) 360deg
  )!important;
  filter:drop-shadow(0 0 4px rgba(134,212,255,.13));
}
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{
  z-index:1!important;
  opacity:.42!important;
  background:conic-gradient(
    from calc(var(--gi-cta-orbit-angle-v2) + 72deg),
    rgba(134,212,255,.10) 0deg,
    rgba(255,255,255,.32) 58deg,
    rgba(138,156,255,.30) 116deg,
    rgba(102,132,207,.18) 180deg,
    rgba(37,140,255,.16) 238deg,
    rgba(134,212,255,.28) 304deg,
    rgba(134,212,255,.10) 360deg
  )!important;
  filter:blur(.15px);
}

/* Primary/high-priority CTAs: richer palette, same synchronized rotation. */
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::before{
  background:conic-gradient(
    from var(--gi-cta-orbit-angle-v2),
    rgba(37,140,255,.46) 0deg,
    rgba(63,170,255,.64) 34deg,
    rgba(134,212,255,.88) 78deg,
    rgba(236,250,255,.94) 122deg,
    rgba(171,205,255,.84) 160deg,
    rgba(138,156,255,.82) 202deg,
    rgba(160,132,226,.52) 238deg,
    rgba(115,145,222,.58) 274deg,
    rgba(84,188,235,.72) 314deg,
    rgba(55,151,244,.54) 342deg,
    rgba(37,140,255,.46) 360deg
  )!important;
  filter:drop-shadow(0 0 5px rgba(134,212,255,.17)) drop-shadow(0 0 7px rgba(138,156,255,.07));
}
:is(.btn-primary,.gi-home-page .hero-actions .btn-primary,.gi-cta-row .btn-primary,
  a[href*="#contact"].btn,.btn[href*="#contact"],a[href*="idee"].btn,a[href*="project"].btn)::after{
  opacity:.50!important;
  background:conic-gradient(
    from calc(var(--gi-cta-orbit-angle-v2) + 68deg),
    rgba(134,212,255,.12) 0deg,
    rgba(255,255,255,.38) 54deg,
    rgba(167,196,255,.34) 108deg,
    rgba(138,156,255,.36) 162deg,
    rgba(160,132,226,.22) 216deg,
    rgba(84,188,235,.30) 288deg,
    rgba(134,212,255,.12) 360deg
  )!important;
}

/* Secondary/ghost stay cooler and calmer but rotate in exact sync. */
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost)::before{
  opacity:.86!important;
  background:conic-gradient(
    from var(--gi-cta-orbit-angle-v2),
    rgba(37,140,255,.22) 0deg,
    rgba(71,157,232,.32) 48deg,
    rgba(134,212,255,.52) 98deg,
    rgba(211,236,250,.58) 148deg,
    rgba(120,154,205,.46) 202deg,
    rgba(78,119,174,.28) 252deg,
    rgba(91,177,218,.40) 306deg,
    rgba(37,140,255,.22) 360deg
  )!important;
}
:is(.btn-secondary,.btn-ghost,.gi-home-page .hero-actions .btn-secondary,.gi-home-page .hero-actions .btn-ghost)::after{
  opacity:.28!important;
}

/* Hover changes intensity only, not speed, so all buttons stay synchronized. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::before{
  filter:drop-shadow(0 0 6px rgba(134,212,255,.20)) saturate(1.08) brightness(1.05);
}
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn):hover::after{
  opacity:.50!important;
}

@media(max-width:680px){
  .gi-section-divider{width:calc(100% - 28px)}
  .gi-section-divider__track::before,.gi-section-divider__track::after{animation-duration:1.72s}
  .section-head:after,.gi-home-page .gi-conversion-hero .wrap::after{animation-duration:1.42s!important}
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{animation-duration:1.38s!important}
}

@media(prefers-reduced-motion:reduce){
  .gi-section-divider__track::before,.gi-section-divider__track::after,
  .section-head:after,.gi-home-page .gi-conversion-hero .wrap::after,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before,
  :is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{animation:none!important}
}

/* 1.5.20 — slower, larger scanner dividers with more visible mini-divider motion */
@keyframes giSectionScannerRun{
  0%   { transform:translate3d(0,0,0) scaleX(.88); opacity:0; }
  8%   { opacity:.96; }
  62%  { transform:translate3d(350%,0,0) scaleX(1.05); opacity:.98; }
  74%  { transform:translate3d(328%,0,0) scaleX(1.00); opacity:.92; }
  100% { transform:translate3d(392%,0,0) scaleX(.90); opacity:0; }
}

@keyframes giSectionScannerRunSecondary{
  0%   { transform:translate3d(0,0,0) scaleX(.82); opacity:0; }
  12%  { opacity:.68; }
  60%  { transform:translate3d(438%,0,0) scaleX(1.04); opacity:.76; }
  72%  { transform:translate3d(414%,0,0) scaleX(.98); opacity:.62; }
  100% { transform:translate3d(472%,0,0) scaleX(.84); opacity:0; }
}

@keyframes giMiniScannerSweepV2{
  0%   { background-position:-210px 0,0 0; opacity:.90; }
  62%  { background-position:126px 0,0 0; opacity:1; }
  74%  { background-position:98px 0,0 0; opacity:.94; }
  100% { background-position:188px 0,0 0; opacity:.90; }
}

.gi-section-divider__track{
  height:3px;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(37,140,255,.03) 6%,
    rgba(37,140,255,.14) 20%,
    rgba(134,212,255,.36) 40%,
    rgba(255,255,255,.58) 50%,
    rgba(134,212,255,.36) 60%,
    rgba(37,140,255,.14) 80%,
    rgba(37,140,255,.03) 94%,
    transparent 100%);
  box-shadow:0 0 11px rgba(37,140,255,.11),0 0 24px rgba(134,212,255,.07);
}

.gi-section-divider__track::before,
.gi-section-divider__track::after{
  top:-.5px;
  bottom:-.5px;
}

.gi-section-divider__track::before{
  left:-38%;
  width:38%;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(37,140,255,.04) 8%,
    rgba(37,140,255,.18) 18%,
    rgba(37,140,255,.52) 32%,
    rgba(134,212,255,.98) 45%,
    rgba(255,255,255,1) 52%,
    rgba(134,212,255,.96) 60%,
    rgba(138,156,255,.54) 72%,
    rgba(37,140,255,.16) 84%,
    rgba(37,140,255,.04) 92%,
    transparent 100%);
  filter:drop-shadow(0 0 6px rgba(134,212,255,.34)) drop-shadow(0 0 10px rgba(37,140,255,.18));
  animation-duration:15.5s;
}

.gi-section-divider__track::after{
  width:24%;
  left:-24%;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(138,156,255,.03) 10%,
    rgba(138,156,255,.24) 26%,
    rgba(138,156,255,.48) 40%,
    rgba(134,212,255,.80) 52%,
    rgba(255,255,255,.78) 60%,
    rgba(37,140,255,.26) 74%,
    rgba(37,140,255,.05) 88%,
    transparent 100%);
  filter:drop-shadow(0 0 5px rgba(138,156,255,.18));
  animation-duration:15.5s;
  animation-delay:-3.8s;
}

/* Small dividers: larger scanner gradients and clearly visible movement. */
.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  background-image:
    linear-gradient(90deg,
      transparent 0%,
      rgba(37,140,255,.05) 8%,
      rgba(37,140,255,.30) 24%,
      rgba(37,140,255,.82) 38%,
      rgba(134,212,255,1) 48%,
      rgba(255,255,255,.98) 50%,
      rgba(138,156,255,.66) 60%,
      rgba(37,140,255,.20) 74%,
      transparent 92%),
    linear-gradient(90deg,
      rgba(37,140,255,.08),
      rgba(134,212,255,.42) 42%,
      rgba(255,255,255,.48) 50%,
      rgba(134,212,255,.42) 58%,
      rgba(37,140,255,.08))!important;
  background-size:180px 100%,100% 100%!important;
  animation-duration:9.8s!important;
  box-shadow:0 0 18px rgba(37,140,255,.18),0 0 28px rgba(143,216,255,.08)!important;
}

/* CTA borders: keep behavior, slightly richer gradients only. */
:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::before{
  background:conic-gradient(
    from var(--gi-cta-orbit-angle-v2),
    rgba(37,140,255,.36) 0deg,
    rgba(73,162,255,.52) 30deg,
    rgba(134,212,255,.76) 76deg,
    rgba(236,249,255,.82) 120deg,
    rgba(171,205,255,.74) 156deg,
    rgba(138,156,255,.70) 198deg,
    rgba(160,132,226,.32) 232deg,
    rgba(111,143,220,.54) 266deg,
    rgba(84,188,235,.68) 308deg,
    rgba(55,151,244,.50) 338deg,
    rgba(37,140,255,.36) 360deg
  )!important;
}

:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.gi-home-page .hero-actions a,.gi-cta-row a,.wp-rocketboot-link .btn)::after{
  background:conic-gradient(
    from calc(var(--gi-cta-orbit-angle-v2) + 84deg),
    rgba(134,212,255,.10) 0deg,
    rgba(255,255,255,.34) 48deg,
    rgba(138,156,255,.34) 104deg,
    rgba(102,132,207,.20) 168deg,
    rgba(37,140,255,.18) 226deg,
    rgba(160,132,226,.14) 272deg,
    rgba(134,212,255,.30) 320deg,
    rgba(134,212,255,.10) 360deg
  )!important;
}

@media(max-width:680px){
  .gi-section-divider__track::before,.gi-section-divider__track::after{animation-duration:17.2s}
  .section-head:after,.gi-home-page .gi-conversion-hero .wrap::after{animation-duration:10.8s!important}
}

/* 1.5.21 — alternating left/right physical divider scanners */
@keyframes giSectionScannerRunRightward {
  0%   { transform:translate3d(0,0,0) scaleX(.88); opacity:0; }
  8%   { opacity:.98; }
  62%  { transform:translate3d(350%,0,0) scaleX(1.05); opacity:1; }
  74%  { transform:translate3d(328%,0,0) scaleX(1.00); opacity:.95; }
  100% { transform:translate3d(392%,0,0) scaleX(.90); opacity:0; }
}

@keyframes giSectionScannerRunLeftward {
  0%   { transform:translate3d(0,0,0) scaleX(.88); opacity:0; }
  8%   { opacity:.98; }
  62%  { transform:translate3d(-350%,0,0) scaleX(1.05); opacity:1; }
  74%  { transform:translate3d(-328%,0,0) scaleX(1.00); opacity:.95; }
  100% { transform:translate3d(-392%,0,0) scaleX(.90); opacity:0; }
}

@keyframes giSectionScannerRunSecondaryRightward {
  0%   { transform:translate3d(0,0,0) scaleX(.82); opacity:0; }
  12%  { opacity:.72; }
  60%  { transform:translate3d(438%,0,0) scaleX(1.04); opacity:.82; }
  72%  { transform:translate3d(414%,0,0) scaleX(.98); opacity:.68; }
  100% { transform:translate3d(472%,0,0) scaleX(.84); opacity:0; }
}

@keyframes giSectionScannerRunSecondaryLeftward {
  0%   { transform:translate3d(0,0,0) scaleX(.82); opacity:0; }
  12%  { opacity:.72; }
  60%  { transform:translate3d(-438%,0,0) scaleX(1.04); opacity:.82; }
  72%  { transform:translate3d(-414%,0,0) scaleX(.98); opacity:.68; }
  100% { transform:translate3d(-472%,0,0) scaleX(.84); opacity:0; }
}

/* Make the scanner tracks a touch more visible and let direction alternate by divider. */
.gi-section-divider__track{
  opacity:1;
}

.gi-section-divider--right .gi-section-divider__track::before{
  left:-38%;
  animation-name:giSectionScannerRunRightward!important;
  animation-duration:17.4s!important;
}
.gi-section-divider--right .gi-section-divider__track::after{
  left:-24%;
  animation-name:giSectionScannerRunSecondaryRightward!important;
  animation-duration:17.4s!important;
  animation-delay:-4.3s!important;
}

.gi-section-divider--left .gi-section-divider__track::before{
  left:100%;
  animation-name:giSectionScannerRunLeftward!important;
  animation-duration:17.4s!important;
}
.gi-section-divider--left .gi-section-divider__track::after{
  left:100%;
  animation-name:giSectionScannerRunSecondaryLeftward!important;
  animation-duration:17.4s!important;
  animation-delay:-4.3s!important;
}

/* Small dividers: alternate by section/card context where possible with subtle direction changes. */
.section-head:nth-of-type(odd):after,
.gi-home-page section:nth-of-type(odd) .section-head:after{
  animation-direction:normal!important;
}
.section-head:nth-of-type(even):after,
.gi-home-page section:nth-of-type(even) .section-head:after{
  animation-direction:reverse!important;
}

@media(max-width:680px){
  .gi-section-divider--right .gi-section-divider__track::before,
  .gi-section-divider--right .gi-section-divider__track::after,
  .gi-section-divider--left .gi-section-divider__track::before,
  .gi-section-divider--left .gi-section-divider__track::after{
    animation-duration:18.8s!important;
  }
}

/* 1.5.22 — slimmer divider geometry */
.gi-section-divider__track{
  height:1.5px!important;
  box-shadow:0 0 7px rgba(37,140,255,.09),0 0 16px rgba(134,212,255,.055)!important;
}

.gi-section-divider__track::before,
.gi-section-divider__track::after{
  top:0!important;
  bottom:0!important;
}

.section-head:after,
.gi-home-page .gi-conversion-hero .wrap::after{
  height:1.5px!important;
  box-shadow:0 0 12px rgba(37,140,255,.14),0 0 20px rgba(143,216,255,.06)!important;
}

@media(max-width:680px){
  .gi-section-divider__track,
  .section-head:after,
  .gi-home-page .gi-conversion-hero .wrap::after{
    height:1.25px!important;
  }
}
