﻿.orange-gradient-1 {
  background: radial-gradient(50% 50% at 50% 50%, #ff9831 0%, #fe330a 100%);
  filter: blur(55px);
}

.orange-gradient-2 {
  background: radial-gradient(50% 50% at 50% 50%, #fe330a 0%, #ff9831 100%);
  filter: blur(55px);
}


/* Custom CSS for accordion */
.accordion-item .accordion-header {
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

.accordion-header {
  column-gap: 20px;
}

.accordion-header h5 {
  flex: 1;
}

.accordion-header .accordion-icon {
  transition: all 0.3s ease;
}

.accordion-item.active .accordion-icon {
  transform: rotate(-45deg);
}

.accordion-item.active .accordion-icon.is-blue {
  background-color: #321ca4;
}

.accordion-icon.is-blue {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #eaedf0;
}

.accordion-icon.is-blue img:last-child {
  position: absolute;
  opacity: 0;
}

.accordion-item.active .accordion-icon.is-blue img:last-child {
  opacity: 1;
}

.accordion-icon.is-chevron {
  position: relative;
  width: 30px;
  height: 30px;
}

.accordion-icon.is-chevron img:first-child {
  opacity: 1;
}

.accordion-icon.is-chevron img:last-child {
  opacity: 0;
}

.accordion-header .accordion-icon.is-chevron {
  transform: rotate(0deg);
}

.accordion-item.active .accordion-icon.is-chevron img:first-child {
  opacity: 0;
}

.accordion-item.active .accordion-icon.is-chevron img:last-child {
  opacity: 1;
}

.accordion-icon.is-outline-green {
  position: relative;
  width: 40px;
  height: 40px;
  border: 1px solid #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.accordion-icon-plus {
  position: relative;
}

.accordion-icon-plus::before,
.accordion-icon-plus::after {
  position: absolute;
  content: "";
  background: #fff;
  transition: all 0.5s ease;
  width: 20px;
  height: 1px;
  top: 0px;
  left: -10px;
}

.accordion-icon-plus::after {
  transform: rotate(90deg);
}

.accordion-item.active .accordion-icon.is-outline-green {
  border-color: #39ff14;
  transform: rotate(0);
}

.accordion-item.active .accordion-icon.is-outline-green .accordion-icon-plus::before {
  background: #39ff14;
}

.accordion-item.active .accordion-icon.is-outline-green .accordion-icon-plus::after {
  transform: rotate(0deg);
  opacity: 0;
}

.accordion-content {
  height: 0px;
  overflow: hidden;
  opacity: 0;
  transform: translateY(30px);
}

.accordion-item.active .accordion-content {
  height: auto;
  transition: all 0.5s ease;
  opacity: 1;
  transform: translateY(0px);
  margin-top: 15px;

}

.accordion-item.is-2:has(.active),
.accordion-item.is-3:has(.active) {
  border: none;
  box-shadow: 0px 4px 60px 0px rgba(0, 0, 0, 0.1);
  transition: all 0.5s ease;
}

.footer-text-slider {
  animation: horizontal-slide-from-right-to-left 10s linear infinite normal forwards;
}

.horizontal-slide-from-right-to-left {
  animation: horizontal-slide-from-right-to-left linear 10s infinite;
}

.horizontal-slide-from-left-to-right {
  animation: horizontal-slide-from-left-to-right linear 10s infinite;
}

@keyframes horizontal-slide-from-right-to-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

@keyframes horizontal-slide-from-left-to-right {
  from {
    transform: translateX(-50%);
  }

  to {
    transform: translateX(0);
  }
}

.sticky-menu.nav-hidden {
  animation: fadeInDown 0.9s 1;
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    transform: translateZ(0);
  }
}

/* GEO service landing page */
.service-v2 { --geo-orange:#fe330a; --geo-ink:#101010; --geo-paper:#f7f5f0; --geo-line:#d9d5cd; color:var(--geo-ink); }
.service-v2 .geo-kicker { display:inline-block; margin-bottom:18px; color:var(--geo-orange); font-size:12px; font-weight:800; letter-spacing:.18em; }
.service-v2 .geo-section { padding:90px 0; }
.service-v2 .geo-section-heading { max-width:780px; margin-bottom:48px; }
.service-v2 .geo-section-heading h2 { margin-bottom:18px; font-size:clamp(36px,5vw,64px); line-height:1.03; letter-spacing:-.045em; }
.service-v2 .geo-section-heading p { max-width:660px; color:#55514b; font-size:18px; line-height:1.75; }
.service-v2 .geo-text-link { display:inline-flex; min-height:44px; align-items:center; gap:12px; color:var(--geo-ink); font-weight:800; text-decoration:none; }
.service-v2 .geo-text-link span { color:var(--geo-orange); font-size:22px; transition:transform .2s ease; }
.service-v2 .geo-text-link:hover span { transform:translateX(5px); }

.geo-hero { position:relative; padding:84px 0 110px; background:linear-gradient(125deg,#fff 0%,#f6f2ea 58%,#eee8dc 100%); }
.geo-hero:before { position:absolute; inset:0; content:""; opacity:.22; background-image:linear-gradient(#bbb6aa 1px,transparent 1px),linear-gradient(90deg,#bbb6aa 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(to right,transparent,black); }
.geo-hero-grid { position:relative; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:70px; }
.geo-hero-copy h2 { max-width:760px; margin-bottom:26px; font-size:clamp(48px,6.3vw,88px); line-height:.96; letter-spacing:-.055em; }
.geo-hero-copy h2 span { color:var(--geo-orange); }
.geo-hero-copy>p { max-width:690px; color:#49453f; font-size:19px; line-height:1.8; }
.geo-hero-actions { display:flex; align-items:center; gap:28px; margin:34px 0 40px; }
.geo-trust-list { display:grid; grid-template-columns:repeat(3,1fr); max-width:700px; border-top:1px solid #cfc9bd; }
.geo-trust-list li { padding:22px 18px 0 0; }
.geo-trust-list strong,.geo-trust-list span { display:block; }
.geo-trust-list strong { margin-bottom:4px; font-size:18px; }
.geo-trust-list span { color:#6a655e; font-size:13px; }
.geo-hero-panel { min-height:530px; padding:38px; border:2px solid var(--geo-ink); border-radius:12px; background:#151515; box-shadow:18px 18px 0 var(--geo-orange); }
.geo-orbit { position:relative; height:400px; border:1px solid #414141; border-radius:50%; }
.geo-orbit:before { position:absolute; inset:64px; border:1px dashed #595959; border-radius:50%; content:""; }
.geo-orbit-center { position:absolute; top:50%; left:50%; display:flex; width:145px; height:145px; flex-direction:column; align-items:center; justify-content:center; border-radius:50%; color:#fff; background:var(--geo-orange); transform:translate(-50%,-50%); box-shadow:0 0 0 18px rgba(254,51,10,.12); }
.geo-orbit-center small,.geo-orbit-center span { font-size:12px; letter-spacing:.12em; }
.geo-orbit-center strong { font-size:40px; line-height:1; }
.geo-orbit-item { position:absolute; min-width:92px; padding:9px 12px; border:1px solid #555; border-radius:30px; color:#fff; background:#242424; font-size:13px; text-align:center; }
.geo-orbit-item.item-1 { top:13px; left:50%; transform:translateX(-50%); }.geo-orbit-item.item-2 { top:50%; right:-28px; transform:translateY(-50%); }.geo-orbit-item.item-3 { bottom:13px; left:50%; transform:translateX(-50%); }.geo-orbit-item.item-4 { top:50%; left:-28px; transform:translateY(-50%); }
.geo-panel-note { display:flex; align-items:center; gap:10px; margin-top:32px; color:#d8d8d8; font-size:13px; }
.geo-panel-note span { width:8px; height:8px; border-radius:50%; background:#67dc86; box-shadow:0 0 0 5px rgba(103,220,134,.12); }

.geo-section-light { background:#fff; }
.geo-situation-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:2px solid var(--geo-ink); border-left:1px solid var(--geo-line); }
.geo-situation-card { min-height:290px; padding:30px; border-right:1px solid var(--geo-line); border-bottom:1px solid var(--geo-line); transition:background .25s ease,color .25s ease,transform .25s ease; }
.geo-situation-card>span { color:var(--geo-orange); font-weight:800; }
.geo-situation-card h3 { margin:54px 0 16px; font-size:25px; line-height:1.25; }
.geo-situation-card p { color:#69645d; line-height:1.7; }
.geo-situation-card:hover { color:#fff; background:var(--geo-ink); transform:translateY(-6px); }.geo-situation-card:hover p { color:#bbb; }

.geo-section-dark { color:#fff; background:#101010; }
.geo-heading-invert p { color:#aaa!important; }
.geo-deliver-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.geo-deliver-card { min-height:390px; padding:32px; border:1px solid #383838; border-radius:8px; background:#181818; transition:border-color .2s ease,transform .2s ease; }
.geo-deliver-card:hover { border-color:var(--geo-orange); transform:translateY(-5px); }
.geo-card-no { display:flex; width:46px; height:46px; align-items:center; justify-content:center; margin-bottom:54px; border:1px solid #555; border-radius:50%; color:var(--geo-orange); font-weight:800; }
.geo-deliver-card h3 { margin-bottom:16px; color:#fff; font-size:27px; }
.geo-deliver-card>p { min-height:82px; color:#aaa; line-height:1.7; }
.geo-deliver-card ul { margin-top:24px; padding-top:20px; border-top:1px solid #333; }
.geo-deliver-card li { position:relative; margin:8px 0; padding-left:17px; color:#ddd; font-size:14px; }.geo-deliver-card li:before { position:absolute; top:9px; left:0; width:5px; height:5px; border-radius:50%; content:""; background:var(--geo-orange); }

.geo-process-section { background:var(--geo-paper); }
.geo-process-list { display:grid; grid-template-columns:repeat(6,1fr); border-top:2px solid var(--geo-ink); }
.geo-process-list li { position:relative; padding:28px 20px 0 0; }
.geo-process-list li:before { position:absolute; top:-7px; left:0; width:13px; height:13px; border:3px solid var(--geo-paper); border-radius:50%; content:""; background:var(--geo-orange); box-shadow:0 0 0 1px var(--geo-orange); }
.geo-process-list span { color:var(--geo-orange); font-size:13px; font-weight:800; }.geo-process-list strong { display:block; margin:26px 0 10px; font-size:20px; }.geo-process-list p { color:#6d6860; font-size:14px; line-height:1.6; }

.geo-metrics-section { background:#fff; }
.geo-metrics-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:80px; align-items:center; }
.geo-metrics-layout .geo-section-heading { margin-bottom:0; }.geo-metrics-layout .geo-text-link { margin-top:22px; }
.geo-metrics-grid { display:grid; grid-template-columns:1fr 1fr; gap:2px; padding:2px; background:var(--geo-ink); }
.geo-metrics-grid article { min-height:210px; padding:30px; background:#fff; }.geo-metrics-grid article:nth-child(2),.geo-metrics-grid article:nth-child(3) { background:#f0ede7; }
.geo-metrics-grid strong { display:block; margin-bottom:50px; color:var(--geo-orange); font-size:27px; }.geo-metrics-grid p { color:#5e5952; line-height:1.7; }

.geo-platform-section { background:#e9ff5b; }
.geo-platform-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }.geo-platform-grid li { min-height:130px; padding:25px; border:1px solid rgba(0,0,0,.25); border-radius:6px; background:rgba(255,255,255,.35); }
.geo-platform-grid strong,.geo-platform-grid span { display:block; }.geo-platform-grid strong { margin-bottom:24px; font-size:23px; }.geo-platform-grid span { color:#514f31; font-size:14px; }
.geo-platform-note { margin-top:18px; color:#5d5a36; font-size:12px; }

.geo-plan-section { background:var(--geo-paper); }
.geo-plan-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; align-items:stretch; }
.geo-plan-card { display:flex; min-height:520px; flex-direction:column; padding:36px; border:2px solid var(--geo-ink); border-radius:8px; background:#fff; }
.geo-plan-card.is-featured { color:#fff; background:var(--geo-ink); box-shadow:12px 12px 0 var(--geo-orange); transform:translateY(-12px); }.geo-plan-card.is-featured h3 { color:#fff; }.geo-plan-card.is-featured p { color:#aaa; }.geo-plan-card.is-featured li { border-color:#373737; }.geo-plan-card.is-featured a { color:#fff; }
.geo-plan-tag { align-self:flex-start; padding:7px 12px; border-radius:30px; color:#fff; background:var(--geo-orange); font-size:12px; font-weight:800; }
.geo-plan-card h3 { margin:40px 0 16px; font-size:31px; }.geo-plan-card>p { min-height:82px; color:#666; line-height:1.7; }.geo-plan-card ul { margin:26px 0 30px; }.geo-plan-card li { padding:13px 0; border-bottom:1px solid #ddd; }.geo-plan-card li:before { margin-right:10px; color:var(--geo-orange); content:"✓"; font-weight:900; }.geo-plan-card a { margin-top:auto; color:var(--geo-ink); font-weight:800; }

.geo-faq-section { background:#fff; }.geo-faq-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; }.geo-faq-layout .geo-section-heading { position:sticky; top:120px; align-self:start; }.geo-faq-layout .geo-section-heading .button { margin-top:26px; }
.geo-faq-layout .accordion-item { padding:25px 0; border-bottom:1px solid var(--geo-line); }.geo-faq-layout .accordion-header { display:flex; align-items:center; justify-content:space-between; gap:20px; }.geo-faq-layout .accordion-header h3 { font-size:23px; line-height:1.35; }.geo-faq-layout .accordion-content p { max-width:700px; color:#625d56; line-height:1.8; }

.geo-final-cta { padding:0 0 100px; background:#fff; }.geo-final-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:55px 60px; border-radius:10px; background:#e9ff5b; }.geo-final-cta-inner h2 { margin-bottom:12px; font-size:clamp(32px,4vw,52px); }.geo-final-cta-inner p { color:#55512f; }

@media (max-width:1023px) {
  .geo-hero-grid,.geo-metrics-layout,.geo-faq-layout { grid-template-columns:1fr; }.geo-hero-panel { min-height:auto; }.geo-situation-grid { grid-template-columns:1fr 1fr; }.geo-deliver-grid,.geo-plan-grid { grid-template-columns:1fr 1fr; }.geo-plan-card.is-featured { transform:none; }.geo-process-list { grid-template-columns:repeat(3,1fr); row-gap:35px; }.geo-platform-grid { grid-template-columns:repeat(2,1fr); }.geo-faq-layout .geo-section-heading { position:static; }.geo-final-cta-inner { align-items:flex-start; flex-direction:column; }
}
@media (max-width:639px) {
  .service-v2 .geo-section { padding:68px 0; }.service-v2 .geo-section-heading { margin-bottom:34px; }.service-v2 .geo-section-heading h2 { font-size:38px; }.geo-hero { padding:60px 0 80px; }.geo-hero-grid { gap:48px; }.geo-hero-copy h2 { font-size:51px; }.geo-hero-copy>p { font-size:17px; }.geo-hero-actions { align-items:flex-start; flex-direction:column; }.geo-trust-list { grid-template-columns:1fr; }.geo-trust-list li { padding:16px 0; border-bottom:1px solid #d5d0c5; }.geo-hero-panel { min-height:410px; padding:22px; box-shadow:9px 9px 0 var(--geo-orange); }.geo-orbit { height:315px; }.geo-orbit:before { inset:48px; }.geo-orbit-center { width:115px; height:115px; }.geo-orbit-center strong { font-size:32px; }.geo-orbit-item.item-2 { right:-14px; }.geo-orbit-item.item-4 { left:-14px; }.geo-situation-grid,.geo-deliver-grid,.geo-process-list,.geo-metrics-grid,.geo-platform-grid,.geo-plan-grid { grid-template-columns:1fr; }.geo-situation-card { min-height:auto; }.geo-situation-card h3 { margin-top:32px; }.geo-deliver-card { min-height:auto; }.geo-deliver-card>p { min-height:auto; }.geo-metrics-layout,.geo-faq-layout { gap:48px; }.geo-platform-grid li { min-height:110px; }.geo-plan-card { min-height:auto; padding:28px; }.geo-plan-card>p { min-height:auto; }.geo-final-cta { padding-bottom:70px; }.geo-final-cta-inner { padding:38px 26px; }
}
@media (prefers-reduced-motion:reduce) { .service-v2 * { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; } }
