/* ==========================================================================
   Appsint brand theme — overrides Bexon's tokens + adds custom components.
   Brand: cyan #00ACCE (logo "apps") + charcoal #454044 (logo "int").
   Load AFTER main.css.
   ========================================================================== */

:root{
  /* Brand scale */
  --ap-brand-50:#ECFBFE; --ap-brand-100:#CDF3FA; --ap-brand-200:#9FE7F4;
  --ap-brand-300:#66D6EB; --ap-brand-400:#29C0DF; --ap-brand-500:#00ACCE;
  --ap-brand-600:#0090AE; --ap-brand-700:#00738C; --ap-brand-800:#0A5E71; --ap-brand-900:#0E4E5E;
  /* Ink / charcoal scale */
  --ap-ink-50:#F6F6F7; --ap-ink-100:#ECEBEC; --ap-ink-200:#D7D5D7; --ap-ink-300:#B6B3B5;
  --ap-ink-400:#8C888B; --ap-ink-500:#6B666A; --ap-ink-600:#524E51; --ap-ink-700:#454044;
  --ap-ink-800:#322E31; --ap-ink-900:#1E1B1D;
  --ap-canvas:#F4F7F8;

  /* Re-map Bexon tokens to our brand */
  --tj-color-theme-primary:#00ACCE;
  --tj-color-heading-primary:#1E1B1D;
  --tj-color-text-body:#454044;
  --tj-color-text-body-3:#67787a;
  --tj-color-theme-dark:#16191C;
  --tj-color-theme-dark-2:#202428;
  --tj-color-theme-dark-3:#454044;
  --tj-color-theme-bg:#EAF1F2;
  --tj-color-theme-bg-2:#E3ECEE;
  --tj-color-theme-bg-3:#202428;
  --tj-color-border-1:#D7DDDE;
  --tj-color-border-5:rgba(0,172,206,.18);

  /* Semantic (used by our components; theme-aware) */
  --ap-bg:#ffffff; --ap-surface:var(--ap-canvas); --ap-text:#2b2a2c; --ap-heading:#16191C;
  --ap-muted:#6B666A; --ap-border:#E4E8E9; --ap-accent:#00738C; --ap-dark:#16191C;
}

/* ---- Dark mode (toggle adds [data-theme="dark"] on <html>) ---- */
html[data-theme="dark"]{
  --ap-bg:#16191C; --ap-surface:#1F2327; --ap-text:#D7D5D7; --ap-heading:#F6F6F7;
  --ap-muted:#9aa0a2; --ap-border:#2c3236; --ap-accent:#29C0DF;
  --tj-color-common-white:#16191C;
  --tj-color-heading-primary:#F6F6F7;
  --tj-color-text-body:#cfd3d4;
  --tj-color-theme-bg:#1F2327; --tj-color-theme-bg-2:#23282c;
  --tj-color-border-1:#2c3236;
  background:var(--ap-bg);
}
html[data-theme="dark"] body{ background:var(--ap-bg); color:var(--ap-text); }
html[data-theme="dark"] .ap-section--light{ background:var(--ap-surface); }
html[data-theme="dark"] .ap-card,html[data-theme="dark"] .ap-ref{ background:var(--ap-surface); border-color:var(--ap-border); }

/* ---- Base ---- */
html{scroll-behavior:smooth;}
body{ color:var(--ap-text); }
h1,h2,h3,h4,h5,h6{ color:var(--ap-heading); letter-spacing:-.01em; }
a{ color:var(--ap-accent); }
.ap-accent{ color:var(--ap-brand-600); }
.container-wide{max-width:1240px;margin:0 auto;padding:0 20px;}

/* ---- Buttons (accessible: dark text on cyan) ---- */
.ap-btn{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:16px;
  padding:14px 26px;border-radius:12px;border:1px solid transparent;cursor:pointer;
  transition:.2s ease;text-decoration:none;line-height:1;white-space:nowrap;}
.ap-btn--primary{background:var(--ap-brand-500);color:#10262C;}
.ap-btn--primary:hover{background:var(--ap-brand-400);color:#0c1e21;transform:translateY(-1px);}
.ap-btn--dark{background:var(--ap-ink-900);color:#fff;}
.ap-btn--dark:hover{background:var(--ap-ink-800);color:#fff;}
.ap-btn--ghost{background:transparent;border-color:currentColor;color:inherit;}
.ap-btn--ghost:hover{background:rgba(0,172,206,.10);}
.on-dark .ap-btn--ghost{color:#fff;border-color:rgba(255,255,255,.5);}
.ap-btn i{font-size:.9em;}

/* override Bexon primary button colour just in case it's reused */
.tj-primary-btn{ --tj-color-theme-primary:#00ACCE; }

/* ---- Sections & headings ---- */
.ap-section{padding:84px 0;}
.ap-section--tight{padding:56px 0;}
.ap-section--light{background:var(--ap-surface);}
.ap-section--dark{background:var(--ap-dark);color:#cfd6d8;}
.ap-section--dark h1,.ap-section--dark h2,.ap-section--dark h3,.ap-section--dark h4{color:#fff;}
.ap-eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--ap-brand-600);margin-bottom:14px;}
.ap-section--dark .ap-eyebrow{color:var(--ap-brand-400);}
.ap-h2{font-size:clamp(28px,4vw,46px);font-weight:800;line-height:1.08;margin-bottom:16px;}
.ap-lead{font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:var(--ap-muted);max-width:46ch;}
.ap-section--dark .ap-lead{color:rgba(255,255,255,.78);}
.ap-prose{max-width:820px;font-size:18px;line-height:1.7;}
.ap-prose p{margin-bottom:1.1em;}

/* ---- Simple content table ---- */
.ap-table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:15px;}
.ap-table th,.ap-table td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--ap-border);vertical-align:top;}
.ap-table thead th{font-weight:700;color:var(--ap-heading);border-bottom:2px solid var(--ap-border);}
.ap-table tbody tr:last-child td{border-bottom:none;}
@media(max-width:560px){.ap-table{font-size:14px;}.ap-table th,.ap-table td{padding:8px 10px;}}

/* ---- Hero ---- */
.ap-hero{position:relative;background:var(--ap-dark);color:#fff;overflow:hidden;
  padding:130px 0 96px;}
.ap-hero:before{content:"";position:absolute;inset:0;
  background:radial-gradient(1200px 500px at 78% 12%,rgba(0,172,206,.20),transparent 60%);}
.ap-hero .container-wide{position:relative;z-index:2;}
.ap-hero h1{font-size:clamp(36px,5.4vw,68px);font-weight:800;line-height:1.04;color:#fff;margin-bottom:20px;}
.ap-hero p.sub{font-size:clamp(17px,1.5vw,21px);line-height:1.55;color:rgba(255,255,255,.82);max-width:52ch;margin-bottom:28px;}
.ap-hero .micro{font-size:14px;color:rgba(255,255,255,.6);margin-top:18px;}
.ap-hero-art{display:flex;align-items:center;justify-content:center;}
.ap-hero-art .ring{position:absolute;border:1px solid rgba(0,172,206,.25);border-radius:50%;}

/* page banner (inner pages) */
.ap-banner{background:var(--ap-dark);color:#fff;padding:120px 0 64px;position:relative;overflow:hidden;}
.ap-banner:before{content:"";position:absolute;inset:0;background:radial-gradient(900px 400px at 85% 0%,rgba(0,172,206,.18),transparent 60%);}
.ap-banner .container-wide{position:relative;z-index:2;}
.ap-banner h1{color:#fff;font-size:clamp(30px,4.4vw,52px);font-weight:800;margin-bottom:12px;}
.ap-crumb{font-size:14px;color:rgba(255,255,255,.65);}
.ap-crumb a{color:rgba(255,255,255,.85);}

/* ---- Trust / stat band ---- */
.ap-stats{display:flex;flex-wrap:wrap;gap:14px 34px;align-items:center;}
.ap-stat{display:flex;flex-direction:column;}
.ap-stat b{font-size:clamp(22px,2.4vw,30px);font-weight:800;color:var(--ap-heading);line-height:1;}
.ap-section--dark .ap-stat b,.ap-hero .ap-stat b{color:#fff;}
.ap-stat span{font-size:13px;color:var(--ap-muted);margin-top:6px;}
.ap-hero .ap-stat span{color:rgba(255,255,255,.6);}
.ap-stat-divider{width:1px;height:38px;background:var(--ap-border);}
.ap-hero .ap-stat-divider{background:rgba(255,255,255,.15);}

/* ---- Cards / grids ---- */
.ap-grid{display:grid;gap:22px;}
.ap-grid-2{grid-template-columns:repeat(2,1fr);}
.ap-grid-3{grid-template-columns:repeat(3,1fr);}
.ap-grid-4{grid-template-columns:repeat(4,1fr);}
.ap-card{background:#fff;border:1px solid var(--ap-border);border-radius:18px;padding:28px;
  transition:.2s ease;height:100%;}
.ap-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(16,25,28,.35);border-color:var(--ap-brand-200);}
.ap-card .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;
  background:var(--ap-brand-50);color:var(--ap-brand-700);font-size:20px;margin-bottom:16px;}
html[data-theme="dark"] .ap-card .ic{background:#13343c;color:var(--ap-brand-300);}
.ap-card h3{font-size:20px;font-weight:700;margin-bottom:8px;}
.ap-card p{color:var(--ap-muted);font-size:15.5px;line-height:1.6;margin:0;}
.ap-card a.more{display:inline-block;margin-top:14px;font-weight:600;color:var(--ap-brand-700);text-decoration:none;}

/* third-option compare */
.ap-third{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.ap-third .col{border:1px solid var(--ap-border);border-radius:18px;padding:26px;background:#fff;}
.ap-third .col h3{font-size:18px;margin-bottom:8px;}
.ap-third .col.win{border:2px solid var(--ap-brand-500);background:linear-gradient(180deg,var(--ap-brand-50),#fff);
  box-shadow:0 24px 50px -30px rgba(0,172,206,.6);transform:translateY(-4px);}
html[data-theme="dark"] .ap-third .col{background:var(--ap-surface);}
html[data-theme="dark"] .ap-third .col.win{background:linear-gradient(180deg,#0f343c,var(--ap-surface));}

/* generic 2-col compare (low-code vs wizard / wsf vs AI) */
.ap-vs{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.ap-vs .side{border:1px solid var(--ap-border);border-radius:18px;padding:26px;background:#fff;}
.ap-vs .side.good{border-color:var(--ap-brand-300);background:var(--ap-brand-50);}
html[data-theme="dark"] .ap-vs .side{background:var(--ap-surface);}
html[data-theme="dark"] .ap-vs .side.good{background:#0f343c;}

/* reference cards */
.ap-ref{border:1px solid var(--ap-border);border-radius:16px;padding:22px;background:#fff;height:100%;}
.ap-ref .sector{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ap-brand-700);}
.ap-ref h3{font-size:17px;margin:8px 0;}
.ap-ref .scale{font-size:13px;color:var(--ap-muted);}
.ap-ref .out{font-size:15px;margin-top:10px;color:var(--ap-text);}

/* lifecycle band */
.ap-life{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;}
.ap-life .step{flex:1;min-width:160px;border:1px solid var(--ap-border);border-radius:14px;padding:18px;background:#fff;position:relative;}
.ap-life .step .n{font-size:12px;font-weight:700;color:var(--ap-brand-600);}
.ap-life .step h4{font-size:16px;margin:6px 0 6px;}
.ap-life .step p{font-size:13.5px;color:var(--ap-muted);margin:0;}
html[data-theme="dark"] .ap-life .step{background:var(--ap-surface);}

/* founder cards */
.ap-founder{border:1px solid var(--ap-border);border-radius:20px;padding:28px;background:#fff;height:100%;position:relative;}
/* kis, kártyára részben rálógó kör-avatar */
.ap-avatar-wrap{position:absolute;top:-40px;right:26px;width:124px;height:124px;}
.ap-avatar{display:block;width:124px;height:124px;border-radius:28px;object-fit:cover;
  border:3px solid #fff;background:var(--ap-brand-50);
  box-shadow:0 0 0 2px var(--ap-brand-200), 0 16px 34px -16px rgba(16,25,28,.5);}
html[data-theme="dark"] .ap-avatar{border-color:var(--ap-surface);box-shadow:0 0 0 2px var(--ap-brand-700), 0 16px 34px -16px rgba(0,0,0,.55);}
.ap-avatar--ph{display:flex;align-items:center;justify-content:center;color:var(--ap-brand-300);font-size:52px;}
/* diszkrét LinkedIn-jelvény a portré sarkán */
.ap-avatar-li{position:absolute;right:-6px;bottom:-6px;width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:#fff;color:#0A66C2;font-size:16px;
  text-decoration:none;border:1px solid var(--ap-border);box-shadow:0 6px 16px -6px rgba(16,25,28,.5);
  transition:transform .15s ease, background .15s ease, color .15s ease;}
.ap-avatar-li:hover{background:#0A66C2;color:#fff;transform:translateY(-1px);}
html[data-theme="dark"] .ap-avatar-li{border-color:var(--ap-surface);}
/* a kék 'role' és a név ne fusson az avatar alá; a bio teljes szélességben alatta marad */
.ap-founder .role,.ap-founder h3{padding-right:132px;}
.ap-founder .role{color:var(--ap-brand-700);font-weight:700;font-size:14px;}
.ap-founder h3{font-size:22px;margin:4px 0 12px;}
.ap-founder .meta{font-size:14px;color:var(--ap-muted);}
.ap-founder .meta b{color:var(--ap-heading);}
html[data-theme="dark"] .ap-founder{background:var(--ap-surface);}

/* quote */
.ap-quote{border-left:4px solid var(--ap-brand-500);padding:8px 0 8px 22px;font-size:clamp(18px,2vw,24px);
  line-height:1.5;font-weight:500;color:var(--ap-heading);}
/* felülírja a template bexon-icons tofu-kockáját (blockquote::before) */
.ap-quote::before{content:none !important;}
.ap-quote .ap-quote-mark{display:block;font-size:30px;line-height:1;color:var(--ap-brand-500);margin-bottom:14px;}
/* lábléc: a CTA ne csúnyán törjön, az IBAN maradjon egy sorban */
.ap-footer .ap-btn--primary{white-space:normal;display:flex;width:100%;justify-content:center;text-align:center;}
.ap-footer .ap-iban{font-size:13px;letter-spacing:.2px;white-space:nowrap;}

/* ---- Client logo strip (monochrome marquee) ---- */
.ap-logos{padding:30px 0;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.ap-logos h6{text-align:center;font-size:13px;letter-spacing:.06em;color:var(--ap-muted);margin-bottom:18px;font-weight:600;}
.ap-logos-track{display:flex;gap:60px;width:max-content;animation:ap-marquee 38s linear infinite;align-items:center;}
.ap-logos:hover .ap-logos-track{animation-play-state:paused;}
/* logos sit on a white chip so any format (transparent PNG/WEBP or white-bg JPG, colour or mono) stays visible in both light and dark mode */
.ap-logos img{height:66px;width:168px;object-fit:contain;object-position:center;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:10px;padding:12px 18px;opacity:.7;filter:grayscale(1);transition:.25s ease;box-shadow:0 1px 4px rgba(0,0,0,.12);}
.ap-logos img:hover{filter:none;opacity:1;transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.18);}
html[data-theme="dark"] .ap-logos img{opacity:.96;box-shadow:0 1px 6px rgba(0,0,0,.4);}
/* opt-in inversion for individual mono/dark logos when needed in dark mode: add class="invert-dark" */
html[data-theme="dark"] .ap-logos img.invert-dark{background:transparent;border:none;box-shadow:none;filter:grayscale(1) brightness(0) invert(1);}
@keyframes ap-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .ap-logos-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto;gap:40px;}
}

/* ---- CTA band ---- */
.ap-cta{background:var(--ap-dark);color:#fff;border-radius:24px;padding:56px;text-align:center;
  position:relative;overflow:hidden;}
.ap-cta:before{content:"";position:absolute;inset:0;background:radial-gradient(700px 300px at 50% 0%,rgba(0,172,206,.22),transparent 60%);}
.ap-cta>*{position:relative;z-index:2;}
.ap-cta h2{color:#fff;font-size:clamp(26px,3.4vw,40px);font-weight:800;margin-bottom:12px;}
.ap-cta p{color:rgba(255,255,255,.8);max-width:60ch;margin:0 auto 24px;}

/* ---- Header / nav (trimmed, brand) ---- */
.ap-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid var(--ap-border);}
html[data-theme="dark"] .ap-header{background:rgba(22,25,28,.9);}
.ap-nav{display:flex;align-items:center;justify-content:space-between;height:72px;gap:20px;}
.ap-nav .brand{flex:0 0 auto;}
.ap-nav .brand img{height:30px;width:auto;max-width:none;}
html[data-theme="dark"] .ap-nav .brand img{filter:brightness(0) invert(1);}
.ap-nav ul.menu{display:flex;gap:24px;list-style:none;margin:0;padding:0;align-items:center;}
.ap-nav ul.menu a{color:var(--ap-heading);font-weight:600;font-size:15px;text-decoration:none;}
.ap-nav ul.menu a:hover{color:var(--ap-brand-700);}
.ap-nav .actions{display:flex;align-items:center;gap:12px;}
/* a fejléc CTA soha ne törjön és ne zsugorodjon */
.ap-nav .actions .ap-btn{white-space:nowrap;flex:0 0 auto;}
.ap-iconbtn{background:transparent;border:1px solid var(--ap-border);width:40px;height:40px;border-radius:10px;
  display:grid;place-items:center;color:var(--ap-heading);cursor:pointer;}
.ap-burger{display:none;}
@media(max-width:991px){
  .ap-nav ul.menu,.ap-nav .actions .desktop-only{display:none;}
  .ap-burger{display:grid;}
}
.ap-mobile{position:fixed;inset:0 0 0 auto;width:min(86vw,340px);background:var(--ap-bg);z-index:1100;
  transform:translateX(100%);transition:.25s ease;padding:80px 24px;border-left:1px solid var(--ap-border);overflow:auto;}
.ap-mobile.open{transform:none;}
.ap-mobile ul{list-style:none;margin:0;padding:0;display:grid;gap:14px;}
.ap-mobile a{color:var(--ap-heading);font-weight:600;text-decoration:none;font-size:18px;}
.ap-mobile .close{position:absolute;top:22px;right:22px;}
.ap-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1090;opacity:0;visibility:hidden;transition:.25s;}
.ap-overlay.open{opacity:1;visibility:visible;}
.lang-soon{opacity:.45;pointer-events:none;}

/* ---- Footer ---- */
.ap-footer{background:var(--ap-dark);color:rgba(255,255,255,.72);padding:64px 0 26px;}
.ap-footer h6{color:#fff;font-size:14px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px;}
.ap-footer a{color:rgba(255,255,255,.72);text-decoration:none;}
.ap-footer a:hover{color:#fff;}
.ap-footer .brand img{height:30px;filter:brightness(0) invert(1);margin-bottom:14px;}
.ap-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14px;}
.ap-footer .base{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:18px;
  display:flex;flex-wrap:wrap;gap:12px 22px;justify-content:space-between;font-size:13px;color:rgba(255,255,255,.55);}
.ap-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.2);border-radius:999px;
  padding:5px 12px;font-size:12px;color:#fff;margin-top:8px;}

/* screenshot showcase */
.ap-shot{border-radius:16px;border:1px solid rgba(255,255,255,.12);overflow:hidden;
  box-shadow:0 40px 90px -50px rgba(0,0,0,.7);background:#fff;max-width:980px;margin:0 auto;}
.ap-shot img{display:block;width:100%;height:auto;}
.ap-shot-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px;max-width:980px;margin-left:auto;margin-right:auto;}
.ap-shot-row img{width:100%;height:auto;border-radius:12px;border:1px solid rgba(255,255,255,.12);
  box-shadow:0 26px 60px -40px rgba(0,0,0,.7);background:#fff;}
@media(max-width:640px){.ap-shot-row{grid-template-columns:1fr;}}
/* vertical auto-scroll device frame (for the 3-in-1 tall screenshots) */
.ap-vframe{height:400px;overflow:hidden;border-radius:14px;border:1px solid rgba(255,255,255,.12);
  box-shadow:0 26px 60px -40px rgba(0,0,0,.7);background:#fff;}
.ap-vframe img{width:100%;display:block;animation:ap-vscroll 18s ease-in-out infinite alternate;}
.ap-vframe:hover img{animation-play-state:paused;}
@keyframes ap-vscroll{from{transform:translateY(0)}to{transform:translateY(calc(-100% + 400px))}}
@media (prefers-reduced-motion:reduce){.ap-vframe img{animation:none;}}

/* map */
.ap-map{border:0;width:100%;height:360px;border-radius:16px;}

/* consent banner */
.ap-consent{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;z-index:1200;background:var(--ap-bg);
  border:1px solid var(--ap-border);border-radius:14px;padding:16px 18px;box-shadow:0 24px 60px -20px rgba(0,0,0,.4);
  display:none;gap:14px;align-items:center;flex-wrap:wrap;width:calc(100% - 32px);max-width:680px;box-sizing:border-box;}
.ap-consent.show{display:flex;}
.ap-consent p{margin:0;font-size:14px;color:var(--ap-text);flex:1;min-width:200px;}
@media(max-width:560px){
  .ap-consent{flex-direction:column;align-items:stretch;text-align:center;}
  .ap-consent .ap-btn{width:100%;justify-content:center;}
}

/* responsive */
@media(max-width:991px){.ap-grid-3,.ap-grid-4{grid-template-columns:1fr 1fr;}.ap-third,.ap-vs{grid-template-columns:1fr;}}
@media(max-width:640px){
  .ap-grid-2,.ap-grid-3,.ap-grid-4{grid-template-columns:1fr;}
  .ap-section{padding:60px 0;}
  .ap-cta{padding:36px 22px;}
  /* stat band: clean 2-col grid on mobile, no stray dividers */
  .ap-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px;}
  .ap-stat-divider{display:none;}
  .ap-stat b{font-size:22px;}
}

/* focus visibility (a11y) */
a:focus-visible,button:focus-visible,.ap-btn:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:3px solid var(--ap-brand-500);outline-offset:2px;border-radius:6px;}
.ap-skip{position:absolute;left:-9999px;top:0;background:#fff;color:#000;padding:10px 16px;z-index:2000;}
.ap-skip:focus{left:12px;top:12px;}

/* ---- Mobile theme toggle (settings-row style, not a clunky button) ---- */
.ap-mobile-theme{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--ap-border);}
.ap-mobile-theme > span{font-size:15px;font-weight:600;color:var(--ap-heading);}
.ap-theme-switch{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ap-border);background:var(--ap-surface);border-radius:999px;padding:4px;cursor:pointer;}
.ap-theme-switch i{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;font-size:14px;color:var(--ap-muted);transition:.2s ease;}
html[data-theme="light"] .ap-theme-switch .fa-sun{background:var(--ap-accent);color:#fff;}
html[data-theme="dark"] .ap-theme-switch .fa-moon{background:var(--ap-accent);color:#fff;}
.ap-theme-switch:focus-visible{outline:3px solid var(--ap-brand-500);outline-offset:2px;}

/* ---- Team delivery pipeline (dark section) ---- */
.ap-pipe{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:28px;}
.ap-pipe .node{position:relative;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:22px 16px;text-align:center;}
.ap-pipe .node .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;margin:0 auto 12px;background:rgba(0,172,206,.16);color:#41C6E3;font-size:18px;}
.ap-pipe .node h4{font-size:15px;margin:0 0 6px;color:#fff;}
.ap-pipe .node p{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.72);margin:0;}
.ap-pipe .node:not(:last-child)::after{content:"\203A";position:absolute;right:-12px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.35);font-size:22px;font-weight:700;z-index:2;}
.ap-pipe-span{margin-top:20px;text-align:center;font-size:14.5px;color:rgba(255,255,255,.85);}
.ap-pipe-span b{color:#41C6E3;}
@media(max-width:860px){.ap-pipe{grid-template-columns:1fr 1fr;}.ap-pipe .node:not(:last-child)::after{display:none;}}
@media(max-width:480px){.ap-pipe{grid-template-columns:1fr;}}

/* ===== Visszajelzés-javítások (2026-06-26) ===== */
/* C: nagyobb, jól felismerhető (színes) ügyfél-logók */
.ap-logos img{height:84px;width:200px;opacity:1;filter:none;}
.ap-logos img:hover{filter:none;opacity:1;}
html[data-theme="dark"] .ap-logos img{opacity:1;}

/* E: szöveg olvashatósága képes bannereken/hero-n (mindkét témában) */
.ap-banner h1,.ap-banner .ap-lead,.ap-banner .ap-eyebrow,.ap-banner .ap-crumb,
.ap-hero h1,.ap-hero p.sub,.ap-hero .micro{text-shadow:0 1px 3px rgba(0,0,0,.5);}
.ap-banner .ap-crumb,.ap-banner .ap-crumb a{color:#fff;}

/* B: kép-lightbox */
.ap-zoomable{cursor:zoom-in;}
.ap-lightbox{position:fixed;inset:0;z-index:4000;display:none;align-items:center;justify-content:center;background:rgba(10,12,14,.93);padding:32px;}
.ap-lightbox.open{display:flex;}
.ap-lightbox img{max-width:95vw;max-height:92vh;border-radius:10px;box-shadow:0 30px 80px -20px rgba(0,0,0,.8);}
.ap-lightbox .ap-lb-close{position:absolute;top:18px;right:24px;width:44px;height:44px;border-radius:50%;border:none;background:rgba(255,255,255,.14);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.ap-lightbox .ap-lb-close:hover{background:rgba(255,255,255,.28);}
body.ap-noscroll{overflow:hidden;}

/* Rólunk összevont oldal — szakasz al-navigáció */
.ap-subnav{position:sticky;top:71px;z-index:50;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:12px 16px;background:var(--ap-bg);border-bottom:1px solid var(--ap-border);}
.ap-subnav a{font-size:14px;font-weight:700;color:var(--ap-heading);text-decoration:none;padding:8px 16px;border-radius:999px;border:1px solid var(--ap-border);transition:.15s ease;}
.ap-subnav a:hover{background:var(--ap-brand-50);color:var(--ap-brand-700);border-color:var(--ap-brand-200);}
.ap-anchor{display:block;height:0;scroll-margin-top:130px;}
