/*
Theme Name: Grapphen
Theme URI: https://grapphen.com
Author: Grapphen Team
Author URI: https://grapphen.com
Description: AI-Powered Recruiting Platform — Elementor-compatible WordPress theme. Violet, orange and emerald palette. No blue, no dark-black.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: Proprietary
Text Domain: grapphen
Tags: elementor, business, recruitment, ai, animated
*/

/* ── Variables ──────────────────────────────────────────────────────────────── */
:root {
  --primary:        #7C3AED;
  --primary-light:  #A78BFA;
  --primary-dark:   #5B21B6;
  --secondary:      #F97316;
  --secondary-light:#FED7AA;
  --accent:         #10B981;
  --accent-light:   #A7F3D0;
  --pink:           #EC4899;
  --pink-light:     #FBCFE8;
  --text:           #374151;
  --text-dark:      #1F1035;
  --text-muted:     #6B7280;
  --bg:             #FFFFFF;
  --bg-soft:        #FAF5FF;
  --surface:        #F3F4F6;
  --border:         #E5E7EB;
  --radius:         1.5rem;
  --radius-sm:      0.75rem;
  --shadow:         0 4px 24px rgba(124,58,237,.08);
  --shadow-lg:      0 12px 48px rgba(124,58,237,.16);
  --transition:     0.3s cubic-bezier(.4,0,.2,1);
}

/* ── Reset ──────────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Inter',system-ui,sans-serif;color:var(--text);background:var(--bg);line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--primary-dark)}
h1,h2,h3,h4,h5,h6{font-family:'Plus Jakarta Sans','Inter',sans-serif;color:var(--text-dark);line-height:1.25;font-weight:700}
h1{font-size:clamp(2.25rem,5vw,3.75rem)}
h2{font-size:clamp(1.75rem,3.5vw,2.5rem)}
h3{font-size:clamp(1.25rem,2.5vw,1.75rem)}
h4{font-size:1.25rem}
p{color:var(--text);margin-bottom:1rem}
p:last-child{margin-bottom:0}
ul{list-style:none}

/* ── Layout ─────────────────────────────────────────────────────────────────── */
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}
.section{padding:5rem 0}
.section-sm{padding:3rem 0}
.text-center{text-align:center}

/* ── Buttons ────────────────────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.9rem;border-radius:9999px;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all var(--transition);border:2px solid transparent;text-decoration:none;white-space:nowrap;font-family:inherit}
.btn-primary{background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff;box-shadow:0 4px 18px rgba(124,58,237,.35)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(124,58,237,.45);color:#fff}
.btn-outline{background:transparent;color:var(--primary);border-color:var(--primary)}
.btn-outline:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}
.btn-white{background:#fff;color:var(--primary);box-shadow:0 4px 15px rgba(0,0,0,.1)}
.btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.15);color:var(--primary-dark)}
.btn-secondary{background:linear-gradient(135deg,var(--secondary),#FBBF24);color:#fff;box-shadow:0 4px 18px rgba(249,115,22,.35)}
.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(249,115,22,.45);color:#fff}

/* ── Badges ─────────────────────────────────────────────────────────────────── */
.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .85rem;border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.03em}
.badge-ai{background:linear-gradient(135deg,#EDE9FE,#FCE7F3);color:var(--primary);border:1px solid var(--primary-light)}
.badge-new{background:linear-gradient(135deg,#D1FAE5,#A7F3D0);color:#065F46}
.badge-orange{background:linear-gradient(135deg,#FEF3C7,#FED7AA);color:#92400E}

/* ── Section Labels ─────────────────────────────────────────────────────────── */
.section-label{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;background:var(--bg-soft);border:1px solid var(--primary-light);border-radius:9999px;font-size:.8125rem;font-weight:600;color:var(--primary);margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.06em}

/* ── Gradient Text ──────────────────────────────────────────────────────────── */
.gradient-text{background:linear-gradient(135deg,var(--primary),var(--pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.gradient-text-orange{background:linear-gradient(135deg,var(--secondary),#FBBF24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* ── Scroll Reveal ──────────────────────────────────────────────────────────── */
/* Elements are visible by default — JS adds .js-ready to <html> to enable animations.
   This way content shows even if JS is slow, blocked, or the page is above the fold. */
.reveal,.reveal-left,.reveal-right{transition:opacity .7s ease,transform .7s ease}
.js-ready .reveal{opacity:0;transform:translateY(28px)}
.js-ready .reveal.visible{opacity:1;transform:translateY(0)}
.js-ready .reveal-left{opacity:0;transform:translateX(-28px)}
.js-ready .reveal-left.visible{opacity:1;transform:translateX(0)}
.js-ready .reveal-right{opacity:0;transform:translateX(28px)}
.js-ready .reveal-right.visible{opacity:1;transform:translateX(0)}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}
.reveal-delay-4{transition-delay:.4s}

/* ── AI Glow Pulse ──────────────────────────────────────────────────────────── */
@keyframes pulse-glow{0%,100%{box-shadow:0 0 0 2px var(--primary-light),0 0 20px rgba(124,58,237,.2)}50%{box-shadow:0 0 0 3px var(--primary-light),0 0 40px rgba(124,58,237,.38)}}
.ai-glow{animation:pulse-glow 3s ease-in-out infinite}

/* ── Grids ──────────────────────────────────────────────────────────────────── */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.section{padding:3rem 0}}

/* ── WordPress Blocks ───────────────────────────────────────────────────────── */
.wp-block-image img{border-radius:var(--radius-sm)}
.aligncenter{margin:0 auto}
.screen-reader-text{position:absolute;left:-9999px}
.entry-content h2,.entry-content h3{margin-bottom:1rem;margin-top:2rem}
.entry-content ul{list-style:disc;padding-left:1.5rem;margin-bottom:1rem}
.entry-content p{margin-bottom:1rem}
