/*
Theme Name: ADYGO Labs
Theme URI: https://adygolabs.com
Author: ADYGO Labs
Description: Official WordPress theme for ADYGO Labs - Digital Marketing & Consultancy
Version: 2.0.0
Text Domain: adygo-labs
*/

/* =============================================
   BRAND COLORS
   Navy:         #1B2A4A
   Coral:        #E8634A
   Purple Muted: #7B7A9E
   Light BG:     #F4F4FA
   ============================================= */
:root {
  --navy:         #1B2A4A;
  --coral:        #E8634A;
  --purple-muted: #7B7A9E;
  --light-bg:     #F4F4FA;
  --white:        #ffffff;
  --border:       #e5e7eb;
  --text-mid:     #555555;
  --text-light:   #999999;
  --radius:       8px;
}

/* =============================================
   RESET & BASE
   ============================================= */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html  { scroll-behavior: smooth; }
body  {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 15px;
  color: var(--navy);
  background: var(--white);
  line-height: 1.6;
}
img { max-width: 100%; height: auto; display: block; }
a   { text-decoration: none; color: inherit; }
ul  { list-style: none; }

/* =============================================
   TYPOGRAPHY
   ============================================= */
h1,h2,h3,h4,h5,h6 { font-weight:700; line-height:1.2; color:var(--navy); letter-spacing:-0.3px; }
h1 { font-size: clamp(30px, 5vw, 44px); }
h2 { font-size: clamp(22px, 3.5vw, 32px); }
h3 { font-size: 20px; }
h4 { font-size: 15px; }
p  { color: var(--text-mid); line-height: 1.75; }

/* =============================================
   BUTTONS
   ============================================= */
.btn-coral {
  display: inline-block;
  background: var(--coral); color: var(--white);
  padding: 13px 28px; border-radius: var(--radius);
  font-size: 14px; font-weight: 600; border: none; cursor: pointer;
  transition: background .2s;
}
.btn-coral:hover { background: #d4502f; color: var(--white); }

.btn-ghost {
  display: inline-block;
  background: transparent; color: rgba(255,255,255,.85);
  padding: 13px 28px; border-radius: var(--radius);
  font-size: 14px; border: 1px solid rgba(255,255,255,.3); cursor: pointer;
  transition: border-color .2s;
}
.btn-ghost:hover { border-color: rgba(255,255,255,.7); }

/* =============================================
   NAVIGATION
   ============================================= */
.site-header {
  position: sticky; top: 0; z-index: 999;
  background: var(--white);
  border-bottom: 1px solid var(--border);
  box-shadow: 0 1px 8px rgba(0,0,0,.06);
}
.nav-inner {
  max-width: 1200px; margin: 0 auto;
  padding: 12px 24px;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
}

/* Logo */
.site-logo  { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.logo-icon  {
  width:38px; height:38px; background:var(--navy);
  border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.logo-rings { position:relative; width:24px; height:24px; }
.logo-ring  { position:absolute; border-radius:50%; width:15px; height:15px; border:2.5px solid; }
.logo-ring-1 { border-color:var(--coral);             top:2px; left:2px; }
.logo-ring-2 { border-color:rgba(255,255,255,.75);    top:7px; left:7px; }
.logo-divider { width:1px; height:34px; background:#ddd; }
.logo-text  { display:flex; flex-direction:column; line-height:1; }
.logo-name  { font-size:18px; font-weight:700; letter-spacing:-.3px; white-space:nowrap; }
.logo-name .adygo { color:var(--navy); }
.logo-name .labs  { color:var(--coral); }
.logo-tagline {
  font-size:6.5px; color:var(--purple-muted);
  letter-spacing:1.8px; text-transform:uppercase;
  margin-top:4px; border-top:.5px solid #ddd; padding-top:3px; white-space:nowrap;
}

/* Menu */
.nav-menu { display:flex; align-items:center; gap:28px; }
.nav-menu a { font-size:14px; color:#444; font-weight:500; transition:color .2s; }
.nav-menu a:hover,
.nav-menu a.current-menu-item { color:var(--coral); }
.nav-cta {
  font-size:13px; padding:9px 20px;
  background:var(--coral); color:var(--white);
  border-radius:var(--radius); font-weight:600; transition:background .2s; white-space:nowrap;
}
.nav-cta:hover { background:#d4502f; color:var(--white); }

/* Hamburger */
.nav-toggle {
  display:none; flex-direction:column; gap:5px;
  background:none; border:none; cursor:pointer; padding:4px;
}
.nav-toggle span { display:block; width:22px; height:2px; background:var(--navy); border-radius:2px; transition:.3s; }

/* =============================================
   TICKER
   ============================================= */
.ticker-bar { background:var(--coral); padding:11px 0; overflow:hidden; white-space:nowrap; }
.ticker-track { display:inline-flex; gap:48px; animation:ticker-scroll 22s linear infinite; }
@keyframes ticker-scroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.ticker-item {
  font-size:13px; color:var(--white); font-weight:500;
  display:inline-flex; align-items:center; gap:10px;
}
.ticker-item::before {
  content:''; width:5px; height:5px; border-radius:50%;
  background:rgba(255,255,255,.5); flex-shrink:0;
}

/* =============================================
   HERO
   ============================================= */
.hero-section {
  background:var(--navy); padding:90px 24px 80px;
  position:relative; overflow:hidden;
}
.hero-section::after {
  content:''; position:absolute; right:-100px; top:-100px;
  width:420px; height:420px; border-radius:50%;
  border:70px solid rgba(232,99,74,.08); pointer-events:none;
}
.hero-inner { max-width:640px; position:relative; z-index:1; }
.hero-eyebrow {
  display:inline-flex; align-items:center; gap:10px;
  font-size:11px; color:var(--coral);
  letter-spacing:2px; text-transform:uppercase; font-weight:600; margin-bottom:24px;
}
.hero-eyebrow::before { content:''; width:26px; height:2px; background:var(--coral); border-radius:2px; }
.hero-section h1 { color:var(--white); letter-spacing:-1.5px; margin-bottom:20px; }
.hero-section h1 .accent { color:var(--coral); }
.hero-section p  { font-size:16px; color:rgba(255,255,255,.6); line-height:1.85; max-width:480px; margin-bottom:36px; }
.hero-btns { display:flex; gap:14px; flex-wrap:wrap; }

/* =============================================
   STATS STRIP
   ============================================= */
.stats-strip {
  display:grid; grid-template-columns:repeat(4,1fr);
  background:var(--light-bg); border-bottom:1px solid var(--border);
}
.stat-item { padding:28px 20px; border-right:1px solid var(--border); }
.stat-item:last-child { border-right:none; }
.stat-number { font-size:32px; font-weight:700; color:var(--navy); line-height:1; margin-bottom:5px; }
.stat-number span { color:var(--coral); }
.stat-label  { font-size:13px; color:var(--purple-muted); }

/* =============================================
   SECTION COMMONS
   ============================================= */
.site-section { padding:64px 24px; }
.section-inner { max-width:1200px; margin:0 auto; }
.bg-light { background:var(--light-bg); }

.section-eyebrow {
  display:inline-flex; align-items:center; gap:8px;
  font-size:11px; color:var(--coral); font-weight:600;
  letter-spacing:1.2px; text-transform:uppercase; margin-bottom:10px;
}
.section-eyebrow::before { content:''; width:16px; height:2px; background:var(--coral); border-radius:2px; }
.section-title { font-size:clamp(22px,3vw,28px); color:var(--navy); margin-bottom:10px; }
.section-sub   { font-size:15px; color:var(--text-mid); max-width:520px; line-height:1.75; margin-bottom:36px; }

/* =============================================
   CASE STUDIES
   ============================================= */
.cases-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.case-card  {
  border-radius:12px; overflow:hidden;
  border:1px solid var(--border); background:var(--white);
  transition:transform .2s, box-shadow .2s;
}
.case-card:hover { transform:translateY(-4px); box-shadow:0 8px 24px rgba(0,0,0,.1); }
.case-thumbnail {
  height:120px; display:flex; align-items:center; justify-content:center; position:relative;
}
.case-thumbnail.navy-grad   { background:linear-gradient(135deg,#1B2A4A 55%,#2A3F6A); }
.case-thumbnail.coral-grad  { background:linear-gradient(135deg,#E8634A 55%,#c44a32); }
.case-thumbnail.purple-grad { background:linear-gradient(135deg,#7B7A9E 55%,#5a5980); }
.case-label {
  position:absolute; top:12px; left:12px;
  font-size:11px; background:rgba(255,255,255,.18);
  color:var(--white); padding:3px 10px; border-radius:20px; font-weight:500;
}
.case-body    { padding:16px; }
.case-body h4 { font-size:14px; color:var(--navy); margin-bottom:5px; line-height:1.4; }
.case-body span { font-size:12px; color:var(--text-light); }

/* =============================================
   SERVICES
   ============================================= */
.services-grid {
  display:grid; grid-template-columns:repeat(4,1fr);
  border:1px solid var(--border); border-radius:12px; overflow:hidden;
}
.service-item {
  padding:28px 20px; border-right:1px solid var(--border);
  background:var(--white); transition:background .2s;
}
.service-item:last-child { border-right:none; }
.service-item:hover { background:var(--light-bg); }
.service-num  { font-size:11px; color:var(--coral); font-weight:700; margin-bottom:12px; }
.service-icon {
  width:36px; height:36px; background:var(--navy); border-radius:9px;
  display:flex; align-items:center; justify-content:center; margin-bottom:14px;
}
.service-icon svg { width:18px; height:18px; stroke:var(--white); fill:none; stroke-width:2; }
.service-item h4 { font-size:14px; color:var(--navy); margin-bottom:6px; }
.service-item p  { font-size:13px; color:var(--text-mid); line-height:1.6; }

/* =============================================
   TOOLS STRIP
   ============================================= */
.tools-section {
  background:var(--light-bg);
  border-top:1px solid var(--border); border-bottom:1px solid var(--border);
  padding:40px 24px;
}
.tools-label {
  font-size:12px; color:var(--purple-muted); text-align:center;
  font-weight:600; letter-spacing:1.2px; text-transform:uppercase; margin-bottom:24px;
}
.tools-grid {
  display:flex; flex-wrap:wrap;
  border:1px solid var(--border); border-radius:12px; overflow:hidden;
  background:var(--white); max-width:900px; margin:0 auto;
}
.tool-item {
  flex:1; min-width:120px; padding:18px 12px; text-align:center;
  border-right:1px solid var(--border); font-size:13px; font-weight:600; color:var(--navy);
}
.tool-item:last-child { border-right:none; }

/* =============================================
   BLOG / INSIGHTS
   ============================================= */
.insights-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.insight-card  {
  background:var(--white); border:1px solid var(--border);
  border-top:3px solid var(--coral); border-radius:12px; padding:20px;
  transition:box-shadow .2s;
}
.insight-card:hover { box-shadow:0 6px 20px rgba(0,0,0,.08); }
.insight-tag {
  font-size:11px; color:var(--coral); font-weight:600;
  background:#FEF0ED; padding:3px 10px; border-radius:20px;
  display:inline-block; margin-bottom:12px;
}
.insight-card h4        { font-size:14px; color:var(--navy); line-height:1.5; margin-bottom:8px; }
.insight-card .post-date { font-size:12px; color:var(--text-light); }
.read-more { font-size:13px; color:var(--coral); font-weight:500; margin-top:12px; display:inline-block; }
.read-more:hover { text-decoration:underline; }

/* =============================================
   CTA BANNER
   ============================================= */
.cta-section {
  background:var(--navy); padding:72px 24px;
  position:relative; overflow:hidden;
}
.cta-section::before {
  content:''; position:absolute; left:-80px; bottom:-80px;
  width:300px; height:300px; border-radius:50%;
  border:55px solid rgba(232,99,74,.1); pointer-events:none;
}
.cta-inner {
  max-width:1200px; margin:0 auto;
  display:flex; justify-content:space-between; align-items:center;
  flex-wrap:wrap; gap:28px; position:relative; z-index:1;
}
.cta-section h2    { color:var(--white); max-width:400px; }
.cta-section h2 em { color:var(--coral); font-style:normal; }
.cta-right   { display:flex; flex-direction:column; gap:10px; }
.cta-right p { font-size:14px; color:rgba(255,255,255,.6); max-width:260px; line-height:1.6; }

/* =============================================
   FOOTER
   ============================================= */
.site-footer  { background:var(--white); border-top:1px solid var(--border); padding:36px 24px 20px; }
.footer-inner { max-width:1200px; margin:0 auto; }
.footer-top   {
  display:flex; justify-content:space-between; align-items:center;
  flex-wrap:wrap; gap:16px; margin-bottom:24px;
}
.footer-nav   { display:flex; gap:24px; flex-wrap:wrap; }
.footer-nav a { font-size:13px; color:#666; transition:color .2s; }
.footer-nav a:hover { color:var(--coral); }
.footer-bottom {
  border-top:1px solid var(--border); padding-top:16px;
  display:flex; justify-content:space-between; align-items:center;
  flex-wrap:wrap; gap:10px;
}
.footer-copy   { font-size:12px; color:var(--text-light); }
.footer-policy { display:flex; gap:20px; }
.footer-policy a { font-size:12px; color:var(--text-light); transition:color .2s; }
.footer-policy a:hover { color:var(--coral); }

/* =============================================
   RESPONSIVE
   ============================================= */
@media (max-width:900px) {
  .stats-strip    { grid-template-columns:repeat(2,1fr); }
  .cases-grid     { grid-template-columns:repeat(2,1fr); }
  .services-grid  { grid-template-columns:repeat(2,1fr); }
  .insights-grid  { grid-template-columns:repeat(2,1fr); }
  .services-grid .service-item:nth-child(2) { border-right:none; }
}
@media (max-width:640px) {
  .nav-menu, .nav-cta { display:none; }
  .nav-toggle { display:flex; }
  .nav-menu.open {
    display:flex; flex-direction:column;
    position:absolute; top:65px; left:0; right:0;
    background:var(--white); padding:20px 24px;
    border-bottom:1px solid var(--border); gap:16px; z-index:998;
  }
  .stats-strip   { grid-template-columns:repeat(2,1fr); }
  .cases-grid    { grid-template-columns:1fr; }
  .services-grid { grid-template-columns:1fr; }
  .insights-grid { grid-template-columns:1fr; }
  .tools-grid    { flex-direction:column; }
  .tool-item     { border-right:none; border-bottom:1px solid var(--border); }
  .tool-item:last-child { border-bottom:none; }
  .cta-inner     { flex-direction:column; text-align:center; }
  .cta-right     { align-items:center; }
}
