.elementor-kit-4{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================================
   ANYTECH SOLUTIONS — design system
   Paste into: Elementor → Site Settings → Custom CSS
   (or better: child theme style.css)

   Everything here is driven by CSS classes that you add to
   Elementor containers/widgets in the Advanced tab.
   Nothing here depends on Elementor's internal markup, so
   Elementor updates won't break it.
   ============================================================ */

:root{
  --atx-white:#ffffff;
  --atx-bg:#f4f8fb;
  --atx-bg2:#eaf2f8;
  --atx-ink:#102a44;
  --atx-ink2:#1c3d5c;
  --atx-muted:#5b7186;
  --atx-dim:#8aa0b3;
  --atx-line:#e0e9f1;
  --atx-line2:#d2e0ec;
  --atx-blue:#1b6aa8;
  --atx-blue-d:#114e80;
  --atx-navy:#102a44;
  --atx-green:#56b23a;
  --atx-green-d:#3f9e2c;
  --atx-grad:linear-gradient(120deg,#13507e 0%,#2a7fb0 45%,#56b23a 110%);
  --atx-grad-soft:linear-gradient(120deg,rgba(27,106,168,.08),rgba(86,178,58,.08));
  --atx-display:'Poppins',sans-serif;
  --atx-body:'Hanken Grotesk',sans-serif;
  --atx-shadow:0 18px 48px -22px rgba(16,42,68,.28);
  --atx-shadow-sm:0 8px 24px -14px rgba(16,42,68,.22);
  --atx-nav-h:76px;
  --atx-subnav-h:56px;
}

/* ---------- base ---------- */
body{ background:var(--atx-bg); color:var(--atx-ink); }
html{ scroll-behavior:smooth; scroll-padding-top:var(--atx-nav-h); }
body.atx-has-subnav{ scroll-padding-top:calc(var(--atx-nav-h) + var(--atx-subnav-h)); }
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }

/* visible keyboard focus — Hello Elementor strips this */
a:focus-visible, button:focus-visible, .atx-door:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline:2px solid var(--atx-blue); outline-offset:3px; border-radius:4px;
}

/* ---------- typography helpers ---------- */
.atx-eyebrow{
  font-family:var(--atx-display); font-weight:600; font-size:13px;
  letter-spacing:.16em; text-transform:uppercase;
  color:var(--atx-green-d) !important; margin-bottom:16px;
}
.atx-grad, .atx-grad span{
  background:var(--atx-grad);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.atx-h1{
  font-family:var(--atx-display); font-weight:800;
  font-size:clamp(38px,5.4vw,62px); line-height:1.04;
  letter-spacing:-.025em; color:var(--atx-navy);
}
.atx-h2{
  font-family:var(--atx-display); font-weight:700;
  font-size:clamp(28px,4vw,42px); line-height:1.08;
  letter-spacing:-.02em; color:var(--atx-navy);
}
.atx-lead{ font-size:clamp(16px,1.7vw,19px); color:var(--atx-muted); max-width:520px; }
.atx-body-text{ font-size:16.5px; color:var(--atx-muted); max-width:520px; }

/* ---------- section rhythm ---------- */
.atx-section{ padding:90px 0; scroll-margin-top:var(--atx-nav-h); }
body.atx-has-subnav .atx-section{ scroll-margin-top:calc(var(--atx-nav-h) + var(--atx-subnav-h)); }
.atx-alt{ background:#fff !important; }
.atx-sec-head{ max-width:660px; margin-bottom:46px; }
@media(min-width:1025px){ .atx-full{ min-height:100vh; justify-content:center; } }

/* ---------- buttons ---------- */
.atx-btn .elementor-button,
a.atx-btn{
  font-family:var(--atx-display) !important; font-weight:600 !important;
  font-size:15px !important; border-radius:10px !important;
  padding:13px 24px !important; transition:all .22s !important; border:none !important;
}
.atx-btn-primary .elementor-button, a.atx-btn-primary{
  background:var(--atx-grad) !important; color:#fff !important;
  box-shadow:0 10px 24px -10px rgba(27,106,168,.6);
}
.atx-btn-primary .elementor-button:hover, a.atx-btn-primary:hover{
  transform:translateY(-2px); box-shadow:0 16px 30px -12px rgba(27,106,168,.7);
}
.atx-btn-ghost .elementor-button, a.atx-btn-ghost{
  background:#fff !important; color:var(--atx-navy) !important;
  border:1.5px solid var(--atx-line2) !important;
}
.atx-btn-ghost .elementor-button:hover, a.atx-btn-ghost:hover{
  border-color:var(--atx-blue) !important; color:var(--atx-blue) !important;
}

/* ---------- header / nav ---------- */
.atx-nav{
  background:rgba(255,255,255,.86) !important;
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--atx-line) !important;
  min-height:var(--atx-nav-h);
}
.atx-nav .elementor-nav-menu a{
  font-family:var(--atx-display); font-weight:500; font-size:15px;
  color:var(--atx-ink2); transition:color .2s;
}
.atx-nav .elementor-nav-menu a:hover{ color:var(--atx-blue); }

/* ---------- sticky sub-nav (service pages) ---------- */
.atx-subnav{
  position:sticky; top:var(--atx-nav-h); z-index:90;
  background:rgba(255,255,255,.95) !important;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--atx-line) !important;
  min-height:var(--atx-subnav-h);
}
.atx-subnav .atx-subnav-label{
  font-family:var(--atx-display); font-weight:700; font-size:14px;
  color:var(--atx-navy); margin:0 18px 0 0; white-space:nowrap;
}
.atx-subnav .elementor-nav-menu{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
.atx-subnav .elementor-nav-menu::-webkit-scrollbar{ display:none; }
.atx-subnav .elementor-nav-menu a{
  font-family:var(--atx-display); font-weight:500; font-size:13.5px;
  color:var(--atx-muted) !important; padding:8px 14px !important;
  border-radius:8px; white-space:nowrap; transition:all .2s;
}
.atx-subnav .elementor-nav-menu a:hover{
  color:var(--atx-blue) !important; background:var(--atx-bg);
}
.atx-subnav .elementor-nav-menu a.atx-active{
  color:#fff !important; background:var(--atx-grad);
}

/* ---------- hero ---------- */
.atx-hero{ position:relative; overflow:hidden; }
.atx-hero::before,.atx-hero::after{
  content:""; position:absolute; border-radius:50%; pointer-events:none;
}
.atx-hero::before{
  top:-10%; right:-15%; width:760px; height:760px;
  background:radial-gradient(circle,rgba(86,178,58,.14),transparent 62%);
}
.atx-hero::after{
  bottom:-25%; left:-12%; width:680px; height:680px;
  background:radial-gradient(circle,rgba(27,106,168,.13),transparent 62%);
}
.atx-hero > .e-con-inner, .atx-hero > .elementor-widget-wrap{ position:relative; z-index:1; }
.atx-hero-img img{ border-radius:20px; box-shadow:var(--atx-shadow); }

/* service-page hero */
.atx-svc-hero{ position:relative; overflow:hidden; background:var(--atx-bg); }
.atx-svc-hero::before{
  content:""; position:absolute; top:-30%; right:-10%; width:620px; height:620px;
  border-radius:50%; background:radial-gradient(circle,rgba(86,178,58,.13),transparent 62%);
  pointer-events:none;
}
.atx-crumb{ font-family:var(--atx-display); font-weight:500; font-size:13px; color:var(--atx-dim); }
.atx-crumb a:hover{ color:var(--atx-blue); }

/* ---------- partners strip ---------- */
.atx-partners{
  border-top:1px solid var(--atx-line) !important;
  border-bottom:1px solid var(--atx-line) !important;
  background:#fff !important;
}
.atx-partners-label{
  font-family:var(--atx-display); font-weight:600; font-size:12px;
  letter-spacing:.12em; text-transform:uppercase; color:var(--atx-dim) !important;
}
.atx-partner{
  font-family:var(--atx-display); font-weight:600; font-size:17px;
  color:var(--atx-ink2) !important; opacity:.7;
}

/* ---------- service "doors" (home) ---------- */
.atx-door{
  position:relative; border:1px solid var(--atx-line) !important;
  border-radius:16px !important; background:#fff !important;
  transition:all .24s; cursor:pointer;
}
.atx-door::before{
  content:""; position:absolute; left:0; top:18px; bottom:18px; width:4px;
  border-radius:4px; background:var(--atx-grad);
  transform:scaleY(0); transition:transform .24s; transform-origin:center;
}
.atx-door:hover{
  border-color:var(--atx-line2) !important;
  box-shadow:var(--atx-shadow-sm); transform:translateX(4px);
}
.atx-door:hover::before{ transform:scaleY(1); }
.atx-door-num{
  font-family:var(--atx-display); font-weight:700; font-size:17px;
  background:var(--atx-grad); -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent;
}
.atx-door-ic .elementor-icon{
  width:52px; height:52px; border-radius:13px;
  background:var(--atx-grad-soft); color:var(--atx-blue);
  display:flex; align-items:center; justify-content:center;
}
.atx-door-title{ font-family:var(--atx-display); font-weight:600; font-size:20px; color:var(--atx-navy); }
.atx-door-desc{ font-size:14.5px; color:var(--atx-muted); }
.atx-door-tag{
  font-family:var(--atx-display); font-weight:600; font-size:12px;
  letter-spacing:.05em; text-transform:uppercase;
  color:var(--atx-dim) !important; white-space:nowrap;
}
.atx-door-arrow{ color:var(--atx-blue); transition:transform .24s; }
.atx-door:hover .atx-door-arrow{ transform:translateX(5px); }
@media(max-width:760px){ .atx-door-ic, .atx-door-tag{ display:none; } }

/* ---------- feature sections (service pages) ---------- */
.atx-fvisual{
  background:#fff !important; border:1px solid var(--atx-line) !important;
  border-radius:20px !important; box-shadow:var(--atx-shadow);
  aspect-ratio:4/3; position:relative; overflow:hidden;
}
.atx-fvisual::before{
  content:""; position:absolute; width:300px; height:300px; border-radius:50%;
  background:radial-gradient(circle,rgba(86,178,58,.14),transparent 65%);
  top:-40px; right:-40px;
}
.atx-fvisual .elementor-icon{
  width:120px; height:120px; border-radius:28px;
  background:var(--atx-grad-soft); color:var(--atx-blue);
  display:flex; align-items:center; justify-content:center; position:relative;
}

/* checklist (Elementor Icon List widget) */
.atx-checklist .elementor-icon-list-item{ align-items:flex-start !important; }
.atx-checklist .elementor-icon-list-text{ font-size:15px; color:var(--atx-ink2); }
.atx-checklist .elementor-icon-list-icon{
  width:24px; height:24px; border-radius:7px;
  background:var(--atx-grad-soft); color:var(--atx-green-d);
  display:flex !important; align-items:center; justify-content:center;
  flex-shrink:0; margin-top:1px;
}

/* ---------- about ---------- */
.atx-about-photo{ position:relative; border-radius:20px; overflow:hidden; box-shadow:var(--atx-shadow); }
.atx-about-photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.atx-badge{
  position:absolute !important; bottom:16px; left:16px; z-index:2;
  background:rgba(255,255,255,.94) !important; border-radius:13px !important;
  box-shadow:var(--atx-shadow-sm);
}
.atx-badge-title{ font-family:var(--atx-display); font-weight:700; color:var(--atx-navy); font-size:16px; }
.atx-badge-sub{ font-size:12px; color:var(--atx-muted); }
.atx-pillar-heading{
  font-family:var(--atx-display); font-weight:600; font-size:17px;
  color:var(--atx-navy); margin-top:8px;
}
.atx-pillar{
  background:#fff !important; border:1px solid var(--atx-line) !important;
  border-radius:14px !important;
}
.atx-pillar .elementor-icon{ color:var(--atx-green-d); }
.atx-pillar-title{ font-family:var(--atx-display); font-weight:600; font-size:15px; color:var(--atx-navy); }
.atx-pillar-desc{ font-size:12.5px; color:var(--atx-muted); }

/* ---------- catalogue ---------- */
.atx-cat-note{
  display:inline-flex; align-items:center; gap:9px;
  background:var(--atx-grad-soft); border:1px solid var(--atx-line2);
  border-radius:30px; padding:9px 18px; font-size:13.5px;
  color:var(--atx-ink2); font-weight:500;
}
.atx-prod{
  background:#fff !important; border:1px solid var(--atx-line) !important;
  border-radius:16px !important; overflow:hidden; transition:all .24s;
}
.atx-prod:hover{
  box-shadow:var(--atx-shadow); transform:translateY(-4px);
  border-color:var(--atx-line2) !important;
}
.atx-prod-img{
  min-height:140px; background:var(--atx-grad-soft) !important;
  border-bottom:1px solid var(--atx-line) !important;
}
.atx-prod-img .elementor-icon{ color:var(--atx-blue); }
.atx-prod-title{ font-family:var(--atx-display); font-weight:600; font-size:17px; color:var(--atx-navy); }
.atx-prod-desc{ font-size:13px; color:var(--atx-muted); }
.atx-prod-link .elementor-button{
  background:transparent !important; color:var(--atx-blue) !important;
  padding:0 !important; font-family:var(--atx-display); font-weight:600;
  font-size:13.5px; box-shadow:none !important;
}
.atx-prod-link .elementor-button:hover{ transform:none; letter-spacing:.2px; }

/* ---------- contact ---------- */
.atx-contact{ position:relative; overflow:hidden; background:var(--atx-bg) !important; }
.atx-contact::before{
  content:""; position:absolute; top:-20%; right:-10%; width:600px; height:600px;
  border-radius:50%; background:radial-gradient(circle,rgba(86,178,58,.12),transparent 62%);
  pointer-events:none;
}
.atx-contact > .e-con-inner{ position:relative; z-index:1; }
.atx-ci-icon .elementor-icon{
  width:46px; height:46px; border-radius:12px; background:#fff;
  border:1px solid var(--atx-line); color:var(--atx-blue);
  display:flex; align-items:center; justify-content:center;
}
.atx-ci-title{ font-family:var(--atx-display); font-weight:600; color:var(--atx-navy); font-size:15px; }
.atx-ci-sub{ font-size:13px; color:var(--atx-muted); }

/* ---------- Gravity Forms → match the approved form card ---------- */
.atx-form-card{
  background:#fff !important; border:1px solid var(--atx-line) !important;
  border-radius:20px !important; box-shadow:var(--atx-shadow);
}
.atx-form-card .gform_wrapper .gform_fields{ grid-row-gap:16px; }
.atx-form-card .gform_wrapper .gfield_label{
  font-family:var(--atx-display) !important; font-weight:500 !important;
  font-size:13px !important; color:var(--atx-ink2) !important; margin-bottom:7px !important;
}
.atx-form-card .gform_wrapper input[type=text],
.atx-form-card .gform_wrapper input[type=email],
.atx-form-card .gform_wrapper input[type=tel],
.atx-form-card .gform_wrapper select,
.atx-form-card .gform_wrapper textarea{
  width:100% !important; border:1px solid var(--atx-line2) !important;
  border-radius:10px !important; padding:12px 14px !important;
  font-family:var(--atx-body) !important; font-size:15px !important;
  color:var(--atx-ink) !important; background:#fcfdfe !important;
  transition:border .2s !important; box-shadow:none !important;
}
.atx-form-card .gform_wrapper input:focus,
.atx-form-card .gform_wrapper select:focus,
.atx-form-card .gform_wrapper textarea:focus{
  outline:none !important; border-color:var(--atx-blue) !important;
}
.atx-form-card .gform_wrapper textarea{ resize:vertical; min-height:96px !important; }
.atx-form-card .gform_wrapper .gform_footer{ margin-top:4px !important; padding:0 !important; }
.atx-form-card .gform_wrapper .gform_button{
  width:100% !important; justify-content:center; cursor:pointer;
  font-family:var(--atx-display) !important; font-weight:600 !important;
  font-size:15px !important; border-radius:10px !important;
  padding:14px 24px !important; border:none !important; color:#fff !important;
  background:var(--atx-grad) !important;
  box-shadow:0 10px 24px -10px rgba(27,106,168,.6) !important;
  transition:all .22s !important;
}
.atx-form-card .gform_wrapper .gform_button:hover{
  transform:translateY(-2px); box-shadow:0 16px 30px -12px rgba(27,106,168,.7) !important;
}
.atx-form-card .gform_wrapper .gfield_required{ color:var(--atx-green-d) !important; }
.atx-form-card .gform_wrapper .gfield_description.validation_message{
  background:transparent !important; border:none !important;
  color:#b3261e !important; padding:6px 0 0 !important; font-size:13px !important;
}
.atx-form-card .gform_wrapper .gform_validation_errors{
  background:#fff5f5 !important; border:1px solid #f5c2c0 !important;
  border-radius:10px !important; box-shadow:none !important;
}
.atx-form-card .gform_confirmation_message{
  font-family:var(--atx-display); font-weight:600; color:var(--atx-navy);
  font-size:17px; padding:20px 0;
}

/* ---------- footer ---------- */
.atx-footer{ background:var(--atx-navy) !important; color:#cdddea; }
.atx-footer h5, .atx-footer .atx-foot-head{
  font-family:var(--atx-display); font-weight:600; font-size:14px;
  color:#fff !important; letter-spacing:.04em; text-transform:uppercase;
}
.atx-footer .atx-foot-about{ font-size:14px; color:#9fb6c8 !important; max-width:300px; }
.atx-footer .elementor-icon-list-text,
.atx-footer a{ font-size:14px; color:#9fb6c8 !important; transition:color .2s; }
.atx-footer a:hover, .atx-footer .elementor-icon-list-item:hover a{ color:#fff !important; }
.atx-foot-bot{
  border-top:1px solid rgba(255,255,255,.1) !important;
  font-size:13px; color:#7d97aa !important;
}
.atx-foot-bot *{ color:#7d97aa !important; }

/* ---------- mobile ---------- */
@media(max-width:1024px){
  .atx-section{ padding:64px 0; }
  .atx-sec-head{ margin-bottom:32px; }
}
@media(max-width:767px){
  .atx-section{ padding:48px 0; }
  .atx-hero::before,.atx-hero::after,.atx-svc-hero::before{ display:none; }
  .atx-lead,.atx-body-text{ max-width:none; }
}/* End custom CSS */