.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 h3{font-family:"Noto Sans", Sans-serif;font-size:2.5rem;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-family:"Noto Serif", Sans-serif;font-weight:500;font-style:italic;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end: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:1366px){.elementor-kit-5 h3{font-size:2rem;}}@media(max-width:1024px){.elementor-kit-5 h3{font-size:1.6rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5 h3{font-size:1.3rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   AXONPEST – BASE THEME CSS (Hello + Elementor Pro)
   - Lightweight tokens, fluid typography, buttons, forms
   - Paste into Elementor > Site Settings > Custom CSS
   - Make sure your fonts are loaded in Site Settings > Typography
   ========================================================= */

/* =============== COLOR & DESIGN TOKENS =================== */
:root{
  /* Brand palette (final HEX) */
  --ax-primary: #0B3C5D;   /* Deep Blue */
  --ax-accent:  #328CC1;   /* Bright Blue */
  --ax-bg:      #F6F9FC;   /* Very light neutral background */
  --ax-surface: #FFFFFF;   /* Cards / panels */
  --ax-muted:   #DAE8FC;   /* Subtle tints, badges, chips */

  /* Buttons & states */
  --ax-primary-hover: #328CC1; /* lighter blue for hover */
  --ax-btn-text-light: #FFFFFF;
  --ax-btn-text-dark:  #0B3C5D;

  /* Neutrals & text */
  --ax-black:   #0E1113;
  --ax-ink:     #13202E;   /* default text on light bg */
  --ax-ink-2:   #314656;   /* secondary text */
  --ax-white:   #FFFFFF;

  /* Semantic helpers */
  --ax-success: #18A957;
  --ax-warning: #E6A700;
  --ax-danger:  #D64545;

  /* Elevation & radii */
  --ax-radius-sm: 8px;
  --ax-radius:    12px;
  --ax-radius-lg: 20px;
  --ax-shadow-1:  0 2px 10px rgba(0,0,0,.06);
  --ax-shadow-2:  0 8px 24px rgba(0,0,0,.10);

  /* Spacing scale (fluid) */
  --ax-space-1: clamp(.5rem, .8vw, .75rem);
  --ax-space-2: clamp(.75rem, 1.2vw, 1rem);
  --ax-space-3: clamp(1rem, 1.6vw, 1.25rem);
  --ax-space-4: clamp(1.25rem, 2.0vw, 1.75rem);
  --ax-space-5: clamp(1.75rem, 3vw, 2.5rem);
  --ax-space-6: clamp(2.25rem, 4vw, 3.25rem);

  /* Container width */
  --ax-container: 1200px;

/* Typography */
--ax-font-sans: "IBM Plex Sans", system-ui, -apple-system, Segoe UI, Arial, sans-serif;
--ax-font-head: "IBM Plex Sans", var(--ax-font-sans);


  /* Fluid type scale */
  --ax-fs-300: clamp(.92rem, .35vw + .8rem, 1rem);
  --ax-fs-400: clamp(1rem, .5vw + .9rem, 1.125rem);
  --ax-fs-500: clamp(1.125rem, .7vw + 1rem, 1.25rem);
  --ax-fs-600: clamp(1.35rem, 1.1vw + 1rem, 1.6rem);
  --ax-fs-700: clamp(1.65rem, 1.6vw + 1rem, 2rem);
  --ax-fs-800: clamp(2.1rem, 2.2vw + 1rem, 2.6rem);
  --ax-fs-900: clamp(2.6rem, 3vw + 1rem, 3.2rem);

  /* Motion & underline offset */
  --ax-trans-1: 180ms ease;
  --ax-trans-2: 280ms cubic-bezier(.2,.8,.2,1);
  --ax-ul-off: .12em;
}

/* =============== LIGHT NORMALIZE ========================= */
*,
*::before,
*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ax-ink);
  background: var(--ax-bg);
  font-family: var(--ax-font-sans);
  font-size: var(--ax-fs-400);
  line-height: 1.6;
  text-wrap: pretty;
}
img, svg, video { max-width: 100%; height: auto; display: block; }

a {
  color: var(--ax-accent);
  text-decoration-thickness: .08em;
  text-underline-offset: var(--ax-ul-off);
  text-decoration: underline;
}
a:hover { color: var(--ax-primary); }

/* Keyboard focus */
:where(a, button, .btn, [role="button"]):focus-visible{
  outline: 3px solid color-mix(in oklab, var(--ax-primary,#0B3C5D), #FFFFFF 25%);
  outline-offset: 2px;
  border-radius: 10px;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  *{ animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* =============== TYPOGRAPHY ============================== */
h1, h2, h3, h4, h5, h6 {
  margin: 0 0 var(--ax-space-3);
  color: var(--ax-primary);
  font-family: var(--ax-font-head);
  line-height: 1.2;
}
h1 { font-size: var(--ax-fs-900); font-weight: 800; }
h2 { font-size: var(--ax-fs-800); font-weight: 800; }
h3 { font-size: var(--ax-fs-700); font-weight: 700; }
h4 { font-size: var(--ax-fs-600); font-weight: 700; }
h5 { font-size: var(--ax-fs-500); font-weight: 700; }
h6 { font-size: var(--ax-fs-400); font-weight: 700; letter-spacing: .02em; text-transform: uppercase; }

p { margin: 0 0 var(--ax-space-3); color: var(--ax-ink); }
.lead { font-size: var(--ax-fs-500); color: var(--ax-ink-2); }

/* =============== LAYOUT HELPERS ========================== */
.container { max-width: var(--ax-container); margin: 0 auto; padding-inline: clamp(1rem, 3vw, 2rem); }
.section { padding-block: clamp(2rem, 6vw, 5rem); }
.section--alt { background: var(--ax-surface); box-shadow: var(--ax-shadow-1); border-radius: var(--ax-radius-lg); }

/* Utilities */
.text-center { text-align: center; }
.mt-0 { margin-top: 0 !important; }
.mb-0 { margin-bottom: 0 !important; }
.mt-2 { margin-top: var(--ax-space-2) !important; }
.mb-2 { margin-bottom: var(--ax-space-2) !important; }
.mt-4 { margin-top: var(--ax-space-4) !important; }
.mb-4 { margin-bottom: var(--ax-space-4) !important; }

/* =============== BUTTONS ================================= */
/* One system for links & buttons using custom properties */
.btn,
.button,
.wp-element-button,
.elementor-button {
  /* default (primary) */
  --_bg: var(--ax-primary);
  --_fg: var(--ax-btn-text-light);
  --_bd: transparent;

  display: inline-flex;
  align-items: center;
  gap: .6em;
  padding: .9em 1.15em;
  border: 1px solid var(--_bd);
  border-radius: var(--ax-radius);
  background: var(--_bg);
  color: var(--_fg);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition:
    transform var(--ax-trans-1),
    background var(--ax-trans-2),
    color var(--ax-trans-2),
    border-color var(--ax-trans-2),
    box-shadow var(--ax-trans-2);
  box-shadow: 0 1px 0 rgba(0,0,0,.04);
}
.btn:hover,
.button:hover,
.wp-element-button:hover,
.elementor-button:hover {
  transform: translateY(-1px);
  box-shadow: var(--ax-shadow-2);
  /* primary hover state */
  --_bg: var(--ax-primary-hover);
  --_fg: var(--ax-btn-text-light);
  --_bd: var(--ax-primary-hover);
}

/* Accent button (if needed) */
.btn--accent,
.elementor-button.elementor-size-sm.ax--accent {
  --_bg: var(--ax-accent);
}

/* Outline variant */
.btn--outline {
  --_bg: transparent;
  --_fg: var(--ax-primary);
  --_bd: color-mix(in oklab, var(--ax-primary), white 20%);
}
.btn--outline:hover,
.btn--outline:focus,
.elementor-button.btn--outline:hover,
.elementor-button.btn--outline:focus {
  --_bg: var(--ax-primary);
  --_fg: var(--ax-btn-text-light);
  --_bd: var(--ax-primary);
}

/* Ghost variant */
.btn--ghost {
  --_bg: transparent;
  --_fg: var(--ax-primary);
  --_bd: transparent;
}
.btn--ghost:hover,
.btn--ghost:focus {
  --_bg: color-mix(in oklab, var(--ax-primary), white 92%);
  --_fg: var(--ax-primary-hover);
}

/* Elementor-specific tightening */
.elementor-button .elementor-button-text{ letter-spacing:.02em; }
.elementor-button .elementor-button-icon{ transform: translateY(.5px); }

/* =============== CARDS & PANELS ========================== */
.card {
  background: var(--ax-surface);
  border: 1px solid color-mix(in oklab, var(--ax-primary), white 92%);
  border-radius: var(--ax-radius-lg);
  box-shadow: var(--ax-shadow-1);
  padding: var(--ax-space-4);
}
.card--muted { background: var(--ax-muted); border-color: transparent; }

/* =============== FORMS (Elementor Form widget) =========== */
.elementor-form .elementor-field-group{
  margin-bottom: var(--ax-space-3);
}
.elementor-form input[type="text"],
.elementor-form input[type="email"],
.elementor-form input[type="tel"],
.elementor-form input[type="url"],
.elementor-form input[type="number"],
.elementor-form textarea,
.elementor-form select{
  width: 100%;
  padding: 0.85em 1em;
  border-radius: var(--ax-radius);
  border: 1px solid color-mix(in oklab, var(--ax-primary), white 85%);
  background: var(--ax-white);
  color: var(--ax-ink);
  transition: border-color var(--ax-trans-2), box-shadow var(--ax-trans-2);
  box-shadow: 0 1px 0 rgba(0,0,0,.03) inset;
}
.elementor-form input:focus,
.elementor-form textarea:focus,
.elementor-form select:focus{
  border-color: color-mix(in oklab, var(--ax-accent), white 20%);
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--ax-accent), white 80%);
  outline: none;
}
.elementor-field-type-submit .elementor-button{
  --_bg: var(--ax-primary);
  --_fg: var(--ax-btn-text-light);
  --_bd: transparent;
}

/* =============== BADGES, LISTS, ICON LINES =============== */
.badge{
  display:inline-block;
  padding:.45em .7em;
  border-radius: 999px;
  font-weight:700;
  font-size: var(--ax-fs-300);
  background: var(--ax-muted);
  color: var(--ax-primary);
}

/* =============== IMAGES & MEDIA ========================== */
.elementor-widget-image img{
  border-radius: var(--ax-radius);
  box-shadow: var(--ax-shadow-1);
}

/* =============== SECTIONS & HEROES ======================= */
.hero{
  padding-block: clamp(3rem, 8vw, 7rem);
  background:
    radial-gradient(1200px 600px at 110% -10%, color-mix(in oklab, var(--ax-accent), white 85%), transparent 60%),
    linear-gradient(180deg, color-mix(in oklab, var(--ax-accent), white 90%), var(--ax-bg));
}
.hero .eyebrow{ text-transform: uppercase; letter-spacing: .14em; color: var(--ax-accent); font-weight: 800; }
.hero h1{ color: var(--ax-primary); }
.hero .lead{ max-width: 62ch; }

/* =============== FOOTER ================================ */
.site-footer{
  background: var(--ax-primary);
  color: var(--ax-white);
  padding-block: var(--ax-space-6);
}
.site-footer a{ color: var(--ax-muted); text-decoration: none; }
.site-footer a:hover{ color: var(--ax-white); text-decoration: underline; }

/* =============== QUICK THEME SWITCHERS (optional) ======= */
/* Use .ax--dark on body if you ever add dark mode */
body.ax--dark{
  --ax-bg:#0E141B;
  --ax-surface:#131A22;
  --ax-ink:#E9EEF3;
  --ax-ink-2:#C3D0DA;
  --ax-muted:#223041;
  --ax-primary:#66B3FF;
  --ax-accent:#8CD1FF;
}

/* Outline variant – καθαρό contrast hover */
.btn--outline {
  --_bg: transparent;
  --_fg: var(--ax-primary);
  --_bd: color-mix(in oklab, var(--ax-primary), white 20%);
}
.btn--outline:hover,
.btn--outline:focus,
.elementor-button.btn--outline:hover,
.elementor-button.btn--outline:focus {
  --_bg: var(--ax-primary);
  --_fg: var(--ax-btn-text-light); /* <— αυτό προστέθηκε */
  --_bd: var(--ax-primary);
  color: var(--ax-btn-text-light); /* για σιγουριά */
}

.ap-contact-page a:not(.btn){ text-decoration: none !important; text-underline-offset: 0 !important; }

/* ===== AXONPEST – SERVICES BLOCK (GLOBAL) ===== */

/* Container helper (αν δεν έχεις δικό σου) */
.ap-container{max-width:1100px;margin-inline:auto;padding-inline:clamp(16px,4vw,24px)}

/* Section */
.ap-services{
  padding-block: clamp(2rem, 6vw, 4rem);
  background: var(--ax-bg, #fff);
  color: var(--ax-ink, #13202E);
}
.ap-services__title{
  font-size: clamp(1.6rem, 3vw, 2.1rem);
  line-height: 1.2;
  margin: 0 0 .5rem;
  color: var(--ax-primary, #0B3C5D);
}
.ap-services__intro{
  color: var(--ax-ink-2, #526375);
  max-width: 70ch;
  margin: 0 0 1.4rem;
}

/* Grid */
.ap-services__grid{
  --_gap: clamp(1rem, 3vw, 1.5rem);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--_gap);
  list-style:none; padding:0; margin:0;
}

/* Card */
.ap-card{
  background: var(--ax-surface, #ffffff);
  border: 1px solid rgba(11,60,93,.08); /* fallback */
  border: 1px solid color-mix(in oklab, var(--ax-primary, #0B3C5D), white 92%);
  border-radius: var(--ax-radius-lg, 16px);
  box-shadow: var(--ax-shadow-1, 0 6px 18px rgba(10,31,68,.06));
  transition: transform var(--ax-trans-2, .25s), box-shadow var(--ax-trans-2, .25s), border-color var(--ax-trans-2, .25s);
  min-height: 100%;
}
.ap-card:hover{
  transform: translateY(-3px);
  box-shadow: var(--ax-shadow-2, 0 10px 28px rgba(10,31,68,.10));
  border-color: color-mix(in oklab, var(--ax-primary, #0B3C5D), white 84%);
}

/* Full-card link */
.ap-card__linkwrap{
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: .65rem;
  padding: clamp(1rem, 3vw, 1.25rem);
  text-decoration: none;
  color: inherit;
  min-height: 100%;
}

/* Icon */
.ap-card__iconwrap{
  width: 56px; height: 56px; border-radius: 12px;
  background: color-mix(in oklab, var(--ax-primary, #0B3C5D), white 92%);
  display: grid; place-items: center;
  box-shadow: 0 6px 16px rgba(11,60,93,.10);
}
.ap-card__iconwrap svg{
  width: 28px; height: 28px; display:block;
  fill: currentColor; color: var(--ax-primary, #0B3C5D);
  transition: color var(--ax-trans-2, .25s), transform var(--ax-trans-2, .25s);
}
.ap-card:hover .ap-card__iconwrap svg{
  color: var(--ax-primary-hover, #114f7a); transform: translateY(-2px);
}

/* Text */
.ap-card__title{
  font-weight: 800; font-size: 1.1rem; line-height: 1.2; margin: .2rem 0 0;
  color: var(--ax-primary, #0B3C5D);
}
.ap-card__text{
  color: var(--ax-ink-2, #526375); font-size: .98rem; line-height: 1.5; margin: 0 0 .2rem;
}

/* Button-like CTA (span) */
.ap-btn{ 
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.6rem .9rem; border-radius:12px; font-weight:600;
  border:1px solid rgba(11,60,93,.25); background:#fff; color:var(--ax-primary,#0B3C5D);
}
.ap-btn:hover{ border-color: rgba(11,60,93,.4) }

/* Section CTA */
.ap-services-cta{
  margin-top: clamp(1.2rem, 4vw, 2rem);
  padding: clamp(1rem, 3vw, 1.5rem);
  text-align: center;
  background: color-mix(in oklab, var(--ax-primary, #0B3C5D), white 94%);
  border: 1px solid color-mix(in oklab, var(--ax-primary, #0B3C5D), white 86%);
  border-radius: var(--ax-radius-lg, 16px);
}
.ap-services-cta__title{ font-weight: 800; color: var(--ax-primary, #0B3C5D); margin: 0 0 .5rem; }
.ap-services-cta__actions{ display: inline-flex; gap: .6rem; flex-wrap: wrap; margin-bottom: .35rem; }
.ap-services-cta__note{ font-size: .95rem; color: var(--ax-ink-2, #526375); margin: 0; }

/* Responsive */
@media (max-width: 980px){ .ap-services__grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 560px){ .ap-services__grid{ grid-template-columns: 1fr; } }

/* Hardening: αν κάποιο global CSS κάνει svg 100% width */
.ap-card svg{ max-width:none }

/* ===== INDUSTRIES SECTION ===== */
.ap-industries{
  padding-block: clamp(2rem, 6vw, 4rem);
  background: var(--ax-surface);
  color: var(--ax-ink);
}

.ap-industries__title{
  font-size: clamp(1.6rem, 3vw, 2rem);
  color: var(--ax-primary);
  font-weight: 800;
  margin-bottom: .5rem;
  text-align: center;
}

.ap-industries__intro{
  max-width: 70ch;
  margin-inline: auto;
  text-align: center;
  color: var(--ax-ink-2);
  margin-bottom: 2rem;
}

/* Grid */
.ap-industries__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 3vw, 1.5rem);
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
}

@media (max-width: 980px){ .ap-industries__grid{ grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px){ .ap-industries__grid{ grid-template-columns: 1fr; } }

/* Card */
.ap-industry{
  background: #fff;
  border: 1px solid color-mix(in oklab, var(--ax-primary), white 92%);
  border-radius: var(--ax-radius-lg);
  padding: clamp(1.2rem, 3vw, 1.6rem);
  box-shadow: var(--ax-shadow-1);
  transition: transform var(--ax-trans-2), box-shadow var(--ax-trans-2), border-color var(--ax-trans-2);
}
.ap-industry:hover{
  transform: translateY(-3px);
  box-shadow: var(--ax-shadow-2);
  border-color: color-mix(in oklab, var(--ax-primary), white 84%);
}

/* Icon */
.ap-industry__iconwrap{
  width: 64px; height: 64px;
  margin-inline: auto;
  margin-bottom: .8rem;
  border-radius: 50%;
  background: color-mix(in oklab, var(--ax-primary), white 92%);
  display: grid; place-items: center;
  box-shadow: 0 6px 16px rgba(11,60,93,.10);
}
.ap-industry__iconwrap svg{
  width: 30px; height: 30px;
  color: var(--ax-primary);
  fill: currentColor;
  transition: color var(--ax-trans-2), transform var(--ax-trans-2);
}
.ap-industry:hover .ap-industry__iconwrap svg{
  color: var(--ax-primary-hover);
  transform: scale(1.08);
}

/* Title */
.ap-industry__title{
  font-size: 1rem;
  font-weight: 700;
  color: var(--ax-primary);
  line-height: 1.3;
}


/* Σταθεροποιεί το μέγεθος ΜΟΝΟ στα SVG των κλάδων, όσες global δηλώσεις κι αν υπάρχουν */
.ap-industries .ap-industry__iconwrap svg{width:30px;height:30px;max-width:none;display:block;flex:none}

body:not(.elementor-editor-active) .your-content-class .elementor-widget-image img{
  border-radius: var(--ax-radius);
  box-shadow: var(--ax-shadow-1);
}

a {
    text-decoration: none!important;
}/* End custom CSS */