/*
Theme Name: R-Proces
Theme URI: https://r-proces.pl
Description: Motyw R-Proces - Automatyzacja Procesow. Industrialny design inspirowany Apple.
Version: 2.0.0
Author: R-Proces
Text Domain: r-proces
*/

/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root {
  --white: #fff;
  --gray-50: #fbfbfd;
  --gray-100: #f5f5f7;
  --gray-200: #e8e8ed;
  --gray-300: #d2d2d7;
  --gray-400: #86868b;
  --gray-500: #6e6e73;
  --gray-600: #424245;
  --gray-700: #333336;
  --gray-800: #1d1d1f;
  --black: #000;

  --blue-50: #f0f7ff;
  --blue-100: #e0efff;
  --blue-200: #b8dbff;
  --blue-500: #0071e3;
  --blue-600: #0064d2;
  --blue-700: #004ea2;
  --blue-900: #001d3d;

  --color-text: var(--gray-800);
  --color-text-secondary: var(--gray-500);
  --color-link: var(--blue-500);
  --color-bg: var(--white);
  --color-bg-alt: var(--gray-50);
  --color-border: var(--gray-200);
  --color-accent: var(--blue-500);

  --font: "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --text-xs: .75rem;
  --text-sm: .875rem;
  --text-base: 1.0625rem;
  --text-lg: 1.25rem;
  --text-xl: 1.5rem;
  --text-2xl: 2rem;
  --text-3xl: 2.5rem;
  --text-4xl: 3.5rem;
  --text-5xl: 4.5rem;

  --leading-tight: 1.08;
  --leading-snug: 1.25;
  --leading-normal: 1.5;
  --leading-relaxed: 1.7;

  --sp-1: .25rem; --sp-2: .5rem; --sp-3: .75rem; --sp-4: 1rem;
  --sp-5: 1.25rem; --sp-6: 1.5rem; --sp-8: 2rem; --sp-10: 2.5rem;
  --sp-12: 3rem; --sp-16: 4rem; --sp-20: 5rem; --sp-24: 6rem; --sp-32: 8rem;

  --container: 980px;
  --container-wide: 1200px;
  --container-narrow: 720px;
  --nav-h: 52px;
  --section-py: var(--sp-24);

  --radius-sm: 8px; --radius-md: 12px; --radius-lg: 18px; --radius-xl: 22px;
  --radius-full: 980px;

  --shadow-sm: 0 1px 3px rgba(0,0,0,.06);
  --shadow-md: 0 4px 12px rgba(0,0,0,.08);
  --shadow-lg: 0 8px 30px rgba(0,0,0,.1);
  --shadow-xl: 0 20px 60px rgba(0,0,0,.12);

  --ease: 250ms ease;
  --ease-slow: 400ms cubic-bezier(.25,.1,.25,1);
}

/* ============================================================
   RESET
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--nav-h) + 20px)}
body{font-family:var(--font);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-top:var(--nav-h)}
img,video,svg{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{cursor:pointer;border:none;background:none;font:inherit}
ul,ol{list-style:none}
.no-scroll{overflow:hidden}

/* ============================================================
   NAV
   ============================================================ */
.nav{position:fixed;top:0;left:0;right:0;z-index:9999;height:var(--nav-h);background:rgba(251,251,253,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.08);transition:background var(--ease)}
.nav--scrolled{background:rgba(251,251,253,.92)}
.nav__inner{max-width:var(--container-wide);margin:0 auto;padding:0 var(--sp-6);display:flex;align-items:center;height:100%;gap:var(--sp-8)}
.nav__logo{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-lg);font-weight:700;color:var(--gray-800);letter-spacing:-.02em;white-space:nowrap;flex-shrink:0}
.nav__logo span{color:var(--blue-500)}
.nav__links{display:flex;align-items:center;gap:var(--sp-8);flex:1;justify-content:center}
.nav__link{font-size:var(--text-xs);font-weight:400;color:var(--gray-800);opacity:.8;transition:opacity 150ms;white-space:nowrap;padding:0 var(--sp-1)}
.nav__link:hover{opacity:1}
.nav__item{position:relative;display:flex;align-items:center;height:100%}
.nav__item>.nav__link{cursor:pointer}
.nav__cta{flex-shrink:0;display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--text-xs);color:var(--white);background:var(--blue-500);padding:var(--sp-2) var(--sp-6);border-radius:var(--radius-full);transition:background 150ms}
.nav__cta svg{width:14px;height:14px}
.nav__cta:hover{background:var(--blue-600)}

/* Dropdown */
.nav__dropdown{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(4px);background:rgba(251,251,253,.98);backdrop-filter:saturate(180%) blur(20px);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius-lg);padding:var(--sp-8);min-width:580px;box-shadow:var(--shadow-xl);opacity:0;visibility:hidden;transition:opacity var(--ease),transform var(--ease),visibility var(--ease);pointer-events:none}
.nav__item:hover>.nav__dropdown,.nav__dropdown--open{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}
.nav__dropdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}
.nav__dropdown-item{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-sm);transition:background 150ms}
.nav__dropdown-item:hover{background:rgba(0,0,0,.04)}
.nav__dropdown-icon{width:36px;height:36px;background:var(--blue-50);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--blue-500);flex-shrink:0}
.nav__dropdown-icon svg{width:18px;height:18px}
.nav__dropdown-text h4{font-size:var(--text-sm);font-weight:600;color:var(--gray-800);margin-bottom:2px}
.nav__dropdown-text p{font-size:var(--text-xs);color:var(--gray-400);line-height:var(--leading-snug)}
.nav__dropdown-footer{margin-top:var(--sp-6);padding-top:var(--sp-4);border-top:1px solid var(--color-border);text-align:center}
.nav__dropdown-footer a{font-size:var(--text-sm);color:var(--blue-500);font-weight:500}
.nav__dropdown-footer a:hover{text-decoration:underline}

/* Mobile */
.nav__mobile-toggle{display:none;width:40px;height:40px;align-items:center;justify-content:center;margin-left:auto}
.nav__mobile-toggle svg{width:20px;height:20px}
.mobile-menu{display:none;position:fixed;inset:var(--nav-h) 0 0;background:rgba(251,251,253,.98);backdrop-filter:saturate(180%) blur(20px);z-index:9998;padding:var(--sp-8) var(--sp-6);overflow-y:auto;transform:translateX(100%);transition:transform var(--ease-slow)}
.mobile-menu--open{transform:translateX(0)}
.mobile-menu__link{display:block;padding:var(--sp-3) 0;font-size:var(--text-lg);font-weight:500;color:var(--gray-800);border-bottom:1px solid var(--color-border)}
.mobile-menu__sub{max-height:0;overflow:hidden;transition:max-height var(--ease-slow)}
.mobile-menu__sub a{display:block;padding:var(--sp-2) var(--sp-4);font-size:var(--text-base);color:var(--gray-500)}
.mobile-menu__sub a:hover{color:var(--blue-500)}
.mobile-menu__cta{display:inline-block;margin-top:var(--sp-8);padding:var(--sp-3) var(--sp-8);background:var(--blue-500);color:var(--white);border-radius:var(--radius-full);font-weight:500}

@media(max-width:768px){
  .nav__links,.nav__cta{display:none}
  .nav__mobile-toggle{display:flex}
  .mobile-menu{display:block}
}

/* ============================================================
   BUTTONS
   ============================================================ */
.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-6);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;transition:all 150ms;white-space:nowrap;line-height:1.4}
.btn svg{width:16px;height:16px}
.btn--primary{background:var(--blue-500);color:var(--white)}
.btn--primary:hover{background:var(--blue-600)}
.btn--secondary{background:transparent;color:var(--blue-500);border:1px solid var(--blue-500)}
.btn--secondary:hover{background:var(--blue-500);color:var(--white)}
.btn--ghost{background:transparent;color:var(--blue-500)}
.btn--ghost:hover{text-decoration:underline}
.btn--dark{background:var(--gray-800);color:var(--white)}
.btn--dark:hover{background:var(--black)}
.btn--white{background:var(--white);color:var(--gray-800)}
.btn--white:hover{background:var(--gray-100)}
.btn--lg{padding:var(--sp-4) var(--sp-8);font-size:var(--text-base)}
.btn--lg svg{width:18px;height:18px}

/* ============================================================
   HERO
   ============================================================ */
.hero{text-align:center;padding:var(--sp-32) 0 var(--sp-20);background:var(--gray-50);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-200px;left:50%;transform:translateX(-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(0,113,227,.06) 0%,transparent 70%);pointer-events:none}
.hero__eyebrow{display:inline-flex;align-items:center;gap:var(--sp-2);background:var(--blue-50);color:var(--blue-500);font-size:var(--text-xs);font-weight:600;padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-full);margin-bottom:var(--sp-6);letter-spacing:.03em;text-transform:uppercase}
.hero__eyebrow svg{width:14px;height:14px}
.hero__title{font-size:var(--text-5xl);font-weight:700;letter-spacing:-.04em;line-height:var(--leading-tight);max-width:800px;margin:0 auto var(--sp-6)}
.hero__title-accent{background:linear-gradient(135deg,var(--blue-500),#00b4d8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero__desc{font-size:var(--text-lg);color:var(--gray-500);max-width:600px;margin:0 auto var(--sp-10);line-height:var(--leading-relaxed)}
.hero__actions{display:flex;align-items:center;justify-content:center;gap:var(--sp-4);flex-wrap:wrap}
.hero__keywords{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hero__keyword{position:absolute;font-size:var(--text-xl);font-weight:600;color:var(--gray-300);opacity:0;user-select:none;letter-spacing:-.01em;white-space:nowrap}
.hero__keyword:nth-child(1){top:8%;left:5%}
.hero__keyword:nth-child(2){top:15%;right:8%}
.hero__keyword:nth-child(3){top:35%;left:2%}
.hero__keyword:nth-child(4){bottom:30%;right:3%}
.hero__keyword:nth-child(5){bottom:15%;left:8%}
.hero__keyword:nth-child(6){top:5%;left:30%}
.hero__keyword:nth-child(7){bottom:10%;right:15%}
.hero__keyword:nth-child(8){top:45%;right:5%}
.hero__keyword:nth-child(9){bottom:25%;left:15%}
.hero__keyword:nth-child(10){top:20%;left:12%}
.hero__keyword:nth-child(11){bottom:8%;right:25%}
.hero__keyword:nth-child(12){top:10%;right:20%}
.hero__keyword--visible{opacity:1;animation:keywordPulse 2.5s ease-in-out}
@keyframes keywordPulse{0%{opacity:0;transform:scale(.92)}15%{opacity:.6;transform:scale(1)}85%{opacity:.6;transform:scale(1)}100%{opacity:0;transform:scale(.92)}}

.placeholder-img{background:linear-gradient(135deg,var(--gray-100),var(--gray-200));display:flex;align-items:center;justify-content:center;color:var(--gray-300)}
.placeholder-img svg{width:48px;height:48px}

@media(max-width:768px){
  .hero{padding:var(--sp-20) 0 var(--sp-12)}
  .hero__title{font-size:var(--text-3xl)}
  .hero__desc{font-size:var(--text-lg)}
}

/* ============================================================
   MARQUEE
   ============================================================ */
.marquee{background:var(--gray-800);overflow:hidden;padding:var(--sp-3) 0}
.marquee__track{display:flex;gap:var(--sp-12);animation:marquee 30s linear infinite;width:max-content}
.marquee__item{font-size:var(--text-xs);color:rgba(255,255,255,.7);white-space:nowrap;display:flex;align-items:center;gap:var(--sp-2)}
.marquee__item svg{width:12px;height:12px;opacity:.5}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============================================================
   STATS BAR
   ============================================================ */
.stats-bar{background:var(--gray-800);padding:var(--sp-12) 0}
.stats-bar__inner{max-width:var(--container);margin:0 auto;padding:0 var(--sp-6);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-8);text-align:center}
.stats-bar__value{font-size:var(--text-4xl);font-weight:700;color:var(--white);letter-spacing:-.03em;line-height:1;margin-bottom:var(--sp-2)}
.stats-bar__label{font-size:var(--text-sm);color:rgba(255,255,255,.5)}
@media(max-width:640px){
  .stats-bar__inner{grid-template-columns:1fr;gap:var(--sp-6)}
  .stats-bar__value{font-size:var(--text-3xl)}
}

/* ============================================================
   SERVICES TABS
   ============================================================ */
.services{padding:var(--section-py) 0}
.services__header{text-align:center;margin-bottom:var(--sp-12);max-width:var(--container);margin-left:auto;margin-right:auto;padding:0 var(--sp-6)}
.services__title{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.03em;margin-bottom:var(--sp-3)}
.services__subtitle{font-size:var(--text-lg);color:var(--gray-500)}
.services__tabs{display:flex;justify-content:center;gap:var(--sp-2);flex-wrap:wrap;margin-bottom:var(--sp-10);max-width:var(--container);margin-left:auto;margin-right:auto;padding:0 var(--sp-6)}
.services__tab{padding:var(--sp-2) var(--sp-5);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;color:var(--gray-500);background:transparent;border:1px solid var(--color-border);transition:all 150ms;display:flex;align-items:center;gap:var(--sp-2)}
.services__tab:hover{border-color:var(--gray-300);color:var(--gray-800)}
.services__tab--active{background:var(--gray-800);color:var(--white);border-color:var(--gray-800)}
.services__tab svg{width:16px;height:16px}
.services__panel{display:none}
.services__panel--active{display:block}
.services__card{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-12);align-items:center;max-width:var(--container);margin:0 auto;padding:0 var(--sp-6)}
.services__card-title{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--sp-4)}
.services__card-desc{font-size:var(--text-base);color:var(--gray-500);line-height:var(--leading-relaxed);margin-bottom:var(--sp-6)}
.services__features{display:flex;flex-direction:column;gap:var(--sp-3)}
.services__feature{display:flex;align-items:center;gap:var(--sp-3);font-size:var(--text-sm);color:var(--gray-600)}
.services__feature-check{width:20px;height:20px;border-radius:50%;background:var(--blue-50);color:var(--blue-500);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.services__feature-check svg{width:12px;height:12px}
.services__card-visual .placeholder-img{aspect-ratio:4/3;border-radius:var(--radius-lg)}
.services__card-visual img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}
@media(max-width:768px){
  .services__card{grid-template-columns:1fr;gap:var(--sp-8)}
  .services__title{font-size:var(--text-2xl)}
}

/* ============================================================
   BENEFITS
   ============================================================ */
.benefits{padding:var(--section-py) 0;background:var(--gray-50)}
.benefits__header{text-align:center;margin-bottom:var(--sp-12)}
.benefits__title{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.03em;margin-bottom:var(--sp-3)}
.benefits__subtitle{font-size:var(--text-lg);color:var(--gray-500);max-width:600px;margin:0 auto}
.benefits__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-6);max-width:var(--container);margin:0 auto;padding:0 var(--sp-6)}
.benefit-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--sp-8);border:1px solid var(--color-border);transition:box-shadow var(--ease),transform var(--ease)}
.benefit-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.benefit-card__icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--blue-50);color:var(--blue-500);display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-5)}
.benefit-card__icon svg{width:24px;height:24px}
.benefit-card__title{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--sp-2)}
.benefit-card__desc{font-size:var(--text-sm);color:var(--gray-500);line-height:var(--leading-relaxed)}
@media(max-width:768px){.benefits__grid{grid-template-columns:1fr}}

/* ============================================================
   CTA SECTION
   ============================================================ */
.cta-section{padding:var(--section-py) 0;background:var(--gray-800);text-align:center;position:relative;overflow:hidden}
.cta-section::before{content:'';position:absolute;top:-100px;left:50%;transform:translateX(-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(0,113,227,.15) 0%,transparent 70%);pointer-events:none}
.cta-section__title{font-size:var(--text-3xl);font-weight:700;color:var(--white);letter-spacing:-.03em;margin-bottom:var(--sp-4);position:relative}
.cta-section__desc{font-size:var(--text-lg);color:rgba(255,255,255,.6);margin-bottom:var(--sp-8);max-width:500px;margin-left:auto;margin-right:auto;position:relative}
.cta-section .btn{position:relative}

/* ============================================================
   POSTS GRID
   ============================================================ */
.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6)}
.post-card{display:flex;flex-direction:column;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);background:var(--white);transition:box-shadow var(--ease),transform var(--ease)}
.post-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.post-card__image{aspect-ratio:16/10;overflow:hidden;background:var(--gray-100)}
.post-card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--ease-slow)}
.post-card:hover .post-card__image img{transform:scale(1.03)}
.post-card__body{padding:var(--sp-6);display:flex;flex-direction:column;flex:1}
.post-card__meta{font-size:var(--text-xs);color:var(--gray-400);margin-bottom:var(--sp-3);display:flex;align-items:center;gap:var(--sp-3)}
.post-card__tag{background:var(--blue-50);color:var(--blue-500);font-size:var(--text-xs);font-weight:600;padding:2px var(--sp-2);border-radius:var(--radius-sm)}
.post-card__title{font-size:var(--text-lg);font-weight:600;letter-spacing:-.01em;margin-bottom:var(--sp-2);line-height:var(--leading-snug)}
.post-card__excerpt{font-size:var(--text-sm);color:var(--gray-500);line-height:var(--leading-relaxed);flex:1}
.post-card__link{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--text-sm);font-weight:500;color:var(--blue-500);margin-top:var(--sp-4)}
.post-card__link svg{width:14px;height:14px;transition:transform 150ms}
.post-card:hover .post-card__link svg{transform:translateX(3px)}
@media(max-width:768px){.posts-grid{grid-template-columns:1fr}}

/* ============================================================
   ARCHIVE / LISTING
   ============================================================ */
.archive-hero{text-align:center;padding:var(--sp-20) 0 var(--sp-12);background:var(--gray-50)}
.archive-hero__title{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.04em;margin-bottom:var(--sp-3)}
.archive-hero__desc{font-size:var(--text-lg);color:var(--gray-500);max-width:500px;margin:0 auto}
.archive-content{padding:var(--sp-16) 0 var(--section-py);max-width:var(--container-wide);margin:0 auto;padding-left:var(--sp-6);padding-right:var(--sp-6)}
.pagination{margin-top:var(--sp-12);display:flex;justify-content:center;gap:var(--sp-2)}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--gray-600);transition:all 150ms}
.pagination .page-numbers:hover{background:var(--gray-100)}
.pagination .page-numbers.current{background:var(--gray-800);color:var(--white)}
.pagination .page-numbers svg{width:16px;height:16px}
.archive-empty{text-align:center;padding:var(--sp-20) 0;color:var(--gray-400)}
.archive-empty svg{width:48px;height:48px;margin:0 auto var(--sp-4)}
.archive-empty h2{font-size:var(--text-xl);color:var(--gray-600);margin-bottom:var(--sp-2)}

/* ============================================================
   SINGLE POST / CASE STUDY
   ============================================================ */
.single-hero{padding:var(--sp-20) 0 var(--sp-12);text-align:center;background:var(--gray-50)}
.single-hero__meta{font-size:var(--text-xs);color:var(--gray-400);margin-bottom:var(--sp-4);display:flex;align-items:center;justify-content:center;gap:var(--sp-3)}
.single-hero__tag{background:var(--blue-50);color:var(--blue-500);font-weight:600;padding:2px var(--sp-3);border-radius:var(--radius-full)}
.single-hero__title{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.04em;line-height:var(--leading-tight);max-width:720px;margin:0 auto}

.single-featured{max-width:900px;margin:calc(var(--sp-6) * -1) auto var(--sp-12);padding:0 var(--sp-6)}
.single-featured img{width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}

.single-content{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--sp-6) var(--section-py)}
.single-content h2{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;margin:var(--sp-10) 0 var(--sp-4)}
.single-content h3{font-size:var(--text-xl);font-weight:600;margin:var(--sp-8) 0 var(--sp-3)}
.single-content p{margin-bottom:var(--sp-4);line-height:var(--leading-relaxed);color:var(--gray-600)}
.single-content ul,.single-content ol{margin-bottom:var(--sp-4);padding-left:var(--sp-6)}
.single-content li{list-style:disc;margin-bottom:var(--sp-2);color:var(--gray-600);line-height:var(--leading-relaxed)}
.single-content ol li{list-style:decimal}
.single-content img{border-radius:var(--radius-md);margin:var(--sp-6) 0}
.single-content blockquote{border-left:3px solid var(--blue-500);padding:var(--sp-4) var(--sp-6);margin:var(--sp-6) 0;background:var(--gray-50);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.single-content blockquote p{color:var(--gray-700);font-style:italic;margin-bottom:0}
.single-content a{color:var(--blue-500);text-decoration:underline;text-underline-offset:2px}

/* Case study blocks */
.cs-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-4);background:var(--gray-50);border-radius:var(--radius-lg);padding:var(--sp-6);margin-bottom:var(--sp-10)}
.cs-meta__label{font-size:var(--text-xs);color:var(--gray-400);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:var(--sp-1)}
.cs-meta__value{font-size:var(--text-sm);font-weight:500;color:var(--gray-800)}
.cs-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--sp-6);text-align:center;background:var(--gray-800);border-radius:var(--radius-lg);padding:var(--sp-8);margin:var(--sp-10) 0}
.cs-stats__value{font-size:var(--text-3xl);font-weight:700;color:var(--white);letter-spacing:-.02em}
.cs-stats__label{font-size:var(--text-sm);color:rgba(255,255,255,.5);margin-top:var(--sp-1)}
.cs-quote{border-radius:var(--radius-lg);background:var(--blue-50);padding:var(--sp-8);margin:var(--sp-10) 0;position:relative}
.cs-quote::before{content:'\201C';font-size:4rem;color:var(--blue-200);position:absolute;top:var(--sp-3);left:var(--sp-6);line-height:1;font-family:Georgia,serif}
.cs-quote__text{font-size:var(--text-lg);font-style:italic;color:var(--gray-700);padding-left:var(--sp-8);line-height:var(--leading-relaxed)}
.cs-quote__author{margin-top:var(--sp-4);padding-left:var(--sp-8);font-size:var(--text-sm);color:var(--gray-500);font-weight:500}
@media(max-width:768px){.single-hero__title{font-size:var(--text-3xl)}}

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.about-hero{padding:var(--sp-20) 0 var(--sp-12);text-align:center;background:var(--gray-50)}
.about-hero__badge{display:inline-flex;align-items:center;gap:var(--sp-2);background:var(--blue-50);color:var(--blue-500);font-size:var(--text-xs);font-weight:600;padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-full);margin-bottom:var(--sp-6);text-transform:uppercase;letter-spacing:.03em}
.about-hero__badge svg{width:14px;height:14px}
.about-hero__title{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.04em;margin-bottom:var(--sp-4)}
.about-hero__desc{font-size:var(--text-lg);color:var(--gray-500);max-width:600px;margin:0 auto;line-height:var(--leading-relaxed)}
.about-team{max-width:var(--container-narrow);margin:0 auto var(--sp-16);padding:0 var(--sp-6)}
.team-card{display:flex;gap:var(--sp-8);align-items:flex-start;background:var(--white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--sp-8);box-shadow:var(--shadow-sm)}
.team-card__photo{width:180px;height:180px;border-radius:var(--radius-lg);object-fit:cover;flex-shrink:0}
.team-card__body{flex:1}
.team-card__name{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--sp-1)}
.team-card__role{font-size:var(--text-sm);color:var(--blue-500);font-weight:600;margin-bottom:var(--sp-4)}
.team-card__bio{font-size:var(--text-base);color:var(--gray-500);line-height:var(--leading-relaxed);margin-bottom:var(--sp-5)}
.team-card__link{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--text-sm);font-weight:500;color:var(--blue-500)}
.team-card__link:hover{text-decoration:underline}
.team-card__link svg{width:16px;height:16px}
.about-values{max-width:var(--container);margin:0 auto var(--sp-16);padding:0 var(--sp-6);display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4)}
.about-value{text-align:center;padding:var(--sp-6);background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--color-border)}
.about-value__icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--blue-50);color:var(--blue-500);display:flex;align-items:center;justify-content:center;margin:0 auto var(--sp-4)}
.about-value__icon svg{width:24px;height:24px}
.about-value__title{font-size:var(--text-sm);font-weight:600}
.about-content{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--sp-6) var(--section-py)}
.about-content p{margin-bottom:var(--sp-4);line-height:var(--leading-relaxed);color:var(--gray-600)}
@media(max-width:768px){
  .team-card{flex-direction:column;align-items:center;text-align:center}
  .team-card__photo{width:140px;height:140px}
  .about-values{grid-template-columns:repeat(2,1fr)}
  .about-hero__title{font-size:var(--text-3xl)}
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.contact-hero{text-align:center;padding:var(--sp-20) 0 var(--sp-12);background:var(--gray-50)}
.contact-hero__title{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.04em;margin-bottom:var(--sp-3)}
.contact-hero__desc{font-size:var(--text-lg);color:var(--gray-500)}
.contact-form-wrap{max-width:var(--container-narrow);margin:0 auto;padding:var(--sp-16) var(--sp-6) var(--sp-12)}
.contact-info-bar{max-width:var(--container);margin:0 auto;padding:0 var(--sp-6) var(--section-py);display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4)}
.contact-info-bar__item{text-align:center;padding:var(--sp-6);background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--color-border)}
.contact-info-bar__icon{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--blue-50);color:var(--blue-500);display:flex;align-items:center;justify-content:center;margin:0 auto var(--sp-3)}
.contact-info-bar__icon svg{width:18px;height:18px}
.contact-info-bar__label{font-size:var(--text-xs);color:var(--gray-400);margin-bottom:2px}
.contact-info-bar__value{font-size:var(--text-sm);font-weight:500}
.contact-form{background:var(--white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--sp-8)}
.contact-form__title{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--sp-6)}
.form-group{margin-bottom:var(--sp-5)}
.form-group label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--gray-700);margin-bottom:var(--sp-2)}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:var(--sp-3) var(--sp-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font);font-size:var(--text-sm);background:var(--white);transition:border-color 150ms;color:var(--gray-800)}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--blue-500);box-shadow:0 0 0 3px rgba(0,113,227,.1)}
.form-group textarea{resize:vertical;min-height:120px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}
.form-message{font-size:var(--text-sm);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-sm);margin-top:var(--sp-4);display:none}
.form-message--success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}
.form-message--error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
@media(max-width:768px){
  .contact-info-bar{grid-template-columns:repeat(2,1fr)}
  .form-row{grid-template-columns:1fr}
  .contact-hero__title{font-size:var(--text-3xl)}
}

/* ============================================================
   SOLUTIONS / RPA DIAGRAM
   ============================================================ */
.solutions-hero{text-align:center;padding:var(--sp-20) 0 var(--sp-12);background:var(--gray-50)}
.solutions-hero__badge{display:inline-flex;align-items:center;gap:var(--sp-2);background:var(--blue-50);color:var(--blue-500);font-size:var(--text-xs);font-weight:600;padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-full);margin-bottom:var(--sp-6);text-transform:uppercase;letter-spacing:.03em}
.solutions-hero__badge svg{width:14px;height:14px}
.solutions-hero__title{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.04em;margin-bottom:var(--sp-4)}
.solutions-hero__desc{font-size:var(--text-lg);color:var(--gray-500);max-width:600px;margin:0 auto;line-height:var(--leading-relaxed)}

.rpa-flow{max-width:var(--container);margin:0 auto;padding:var(--sp-16) var(--sp-6)}
.rpa-flow__title{text-align:center;font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--sp-3)}
.rpa-flow__subtitle{text-align:center;font-size:var(--text-base);color:var(--gray-500);margin-bottom:var(--sp-12)}
.rpa-flow__steps{display:flex;align-items:flex-start;justify-content:center;gap:0;position:relative}
.rpa-flow__step{text-align:center;flex:1;max-width:200px;position:relative;opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.rpa-flow__step.is-visible{opacity:1;transform:translateY(0)}
.rpa-flow__step-icon{width:72px;height:72px;border-radius:50%;background:var(--blue-50);color:var(--blue-500);display:flex;align-items:center;justify-content:center;margin:0 auto var(--sp-4);border:2px solid var(--blue-200);transition:all var(--ease)}
.rpa-flow__step.is-visible .rpa-flow__step-icon{background:var(--blue-500);color:var(--white);border-color:var(--blue-500)}
.rpa-flow__step-icon svg{width:28px;height:28px}
.rpa-flow__step-num{font-size:var(--text-xs);font-weight:700;color:var(--blue-500);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--sp-1)}
.rpa-flow__step-title{font-size:var(--text-sm);font-weight:600;margin-bottom:var(--sp-1)}
.rpa-flow__step-desc{font-size:var(--text-xs);color:var(--gray-400);line-height:var(--leading-snug)}
.rpa-flow__arrow{display:flex;align-items:center;padding-top:26px;color:var(--gray-300);flex-shrink:0}
.rpa-flow__arrow svg{width:24px;height:24px}
@media(max-width:768px){
  .rpa-flow__steps{flex-direction:column;align-items:center;gap:var(--sp-4)}
  .rpa-flow__arrow{transform:rotate(90deg);padding-top:0}
  .solutions-hero__title{font-size:var(--text-3xl)}
}

/* Split sections */
.solutions-split{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-12);align-items:center;max-width:var(--container);margin:0 auto;padding:var(--sp-16) var(--sp-6)}
.solutions-split--reverse .solutions-split__visual{order:-1}
.solutions-split__badge{display:inline-flex;align-items:center;gap:var(--sp-2);background:var(--blue-50);color:var(--blue-500);font-size:var(--text-xs);font-weight:600;padding:var(--sp-1) var(--sp-3);border-radius:var(--radius-full);margin-bottom:var(--sp-4);text-transform:uppercase;letter-spacing:.03em}
.solutions-split__title{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--sp-4)}
.solutions-split__desc{font-size:var(--text-base);color:var(--gray-500);line-height:var(--leading-relaxed);margin-bottom:var(--sp-6)}
.solutions-split__list{display:flex;flex-direction:column;gap:var(--sp-3)}
.solutions-split__list-item{display:flex;align-items:center;gap:var(--sp-3);font-size:var(--text-sm);color:var(--gray-600)}
.solutions-split__list-check{width:20px;height:20px;border-radius:50%;background:var(--blue-50);color:var(--blue-500);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.solutions-split__list-check svg{width:12px;height:12px}
.solutions-split__visual .placeholder-img{aspect-ratio:4/3;border-radius:var(--radius-lg)}
@media(max-width:768px){
  .solutions-split{grid-template-columns:1fr}
  .solutions-split--reverse .solutions-split__visual{order:0}
}

/* Tech grid */
.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--sp-4);max-width:var(--container);margin:0 auto;padding:0 var(--sp-6) var(--section-py)}
.tech-card{text-align:center;padding:var(--sp-6);background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:box-shadow var(--ease),transform var(--ease)}
.tech-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.tech-card__icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--blue-50);color:var(--blue-500);display:flex;align-items:center;justify-content:center;margin:0 auto var(--sp-3)}
.tech-card__icon svg{width:24px;height:24px}
.tech-card__name{font-size:var(--text-sm);font-weight:600}
.tech-card__desc{font-size:var(--text-xs);color:var(--gray-400);margin-top:var(--sp-1)}

/* ============================================================
   DEFAULT PAGE
   ============================================================ */
.page-hero{text-align:center;padding:var(--sp-20) 0 var(--sp-12);background:var(--gray-50)}
.page-hero__title{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.04em}
.page-content{max-width:var(--container-narrow);margin:0 auto;padding:var(--sp-12) var(--sp-6) var(--section-py)}
.page-content h2{font-size:var(--text-2xl);font-weight:700;margin:var(--sp-8) 0 var(--sp-3)}
.page-content h3{font-size:var(--text-xl);font-weight:600;margin:var(--sp-6) 0 var(--sp-3)}
.page-content p{margin-bottom:var(--sp-4);line-height:var(--leading-relaxed);color:var(--gray-600)}
.page-content ul,.page-content ol{margin-bottom:var(--sp-4);padding-left:var(--sp-6)}
.page-content li{list-style:disc;margin-bottom:var(--sp-2);color:var(--gray-600)}
.page-content ol li{list-style:decimal}
.page-content img{border-radius:var(--radius-md);margin:var(--sp-6) 0}
.page-content a{color:var(--blue-500);text-decoration:underline}

/* ============================================================
   FOOTER
   ============================================================ */
.footer{background:var(--gray-800);color:rgba(255,255,255,.7);padding:var(--sp-16) 0 var(--sp-8)}
.footer__grid{max-width:var(--container-wide);margin:0 auto;padding:0 var(--sp-6);display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--sp-10)}
.footer__logo{font-size:var(--text-lg);font-weight:700;color:var(--white);margin-bottom:var(--sp-4)}
.footer__logo span{color:var(--blue-500)}
.footer__desc{font-size:var(--text-sm);color:rgba(255,255,255,.5);line-height:var(--leading-relaxed);max-width:300px}
.footer__col-title{font-size:var(--text-xs);font-weight:600;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--sp-4)}
.footer__links{display:flex;flex-direction:column;gap:var(--sp-3)}
.footer__links a{font-size:var(--text-sm);color:rgba(255,255,255,.6);transition:color 150ms}
.footer__links a:hover{color:var(--white)}
.footer__bottom{max-width:var(--container-wide);margin:var(--sp-10) auto 0;padding:var(--sp-6) var(--sp-6) 0;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between}
.footer__copyright{font-size:var(--text-xs);color:rgba(255,255,255,.3)}
.footer__legal{display:flex;gap:var(--sp-4)}
.footer__legal a{font-size:var(--text-xs);color:rgba(255,255,255,.3);transition:color 150ms}
.footer__legal a:hover{color:rgba(255,255,255,.6)}
@media(max-width:768px){
  .footer__grid{grid-template-columns:1fr 1fr}
  .footer__bottom{flex-direction:column;gap:var(--sp-4);text-align:center}
}
@media(max-width:480px){.footer__grid{grid-template-columns:1fr}}

/* ============================================================
   ANIMATIONS
   ============================================================ */
[data-animate]{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.25,.1,.25,1),transform .7s cubic-bezier(.25,.1,.25,1)}
[data-animate].is-visible{opacity:1;transform:translateY(0)}
[data-animate-delay="1"]{transition-delay:.1s}
[data-animate-delay="2"]{transition-delay:.2s}
[data-animate-delay="3"]{transition-delay:.3s}
[data-animate-delay="4"]{transition-delay:.4s}
[data-animate-delay="5"]{transition-delay:.5s}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
