/*
Theme Name: AgroReyn
Theme URI: https://agroreyn.xyz
Author: AgroReyn Team
Author URI: https://agroreyn.xyz
Description: Agricultural blockchain ecosystem theme. Responsive, Elementor-compatible.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: agroreyn
Tags: one-page, full-width-template, custom-colors, custom-menu, elementor
*/

/* =====================================================
   CSS CUSTOM PROPERTIES
   ===================================================== */
:root {
  --dawn:    #F7F2EA;
  --parch:   #EDE5D4;
  --sand:    #D9CCBA;
  --stone:   #8C7B6A;
  --bark:    #4A3728;
  --earth:   #2E1F0F;
  --night:   #0F0A05;
  --field:   #3A6B35;
  --sprout:  #5A9B54;
  --harvest: #C8883A;
  --wheat:   #E8B86D;
  --dawn2:   #F0C97A;
  --sky:     #6B9EC4;
  --mist:    rgba(46,31,15,0.07);
  --mist2:   rgba(46,31,15,0.12);
  --mist3:   rgba(46,31,15,0.25);
  --text:    #2E1F0F;
  --text-m:  rgba(46,31,15,0.6);
  --text-d:  rgba(46,31,15,0.35);
}

/* =====================================================
   RESET & BASE
   ===================================================== */
*,*::before,*::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  background: var(--dawn);
  color: var(--text);
  font-family: 'Syne', sans-serif;
  overflow-x: hidden;
  cursor: none;
}
a { cursor: none; }
button { cursor: none; }
img { max-width: 100%; height: auto; display: block; }

/* =====================================================
   CUSTOM CURSOR
   ===================================================== */
.ar-cur {
  position: fixed; width: 10px; height: 10px; border-radius: 50%;
  background: var(--field); pointer-events: none; z-index: 9999;
  transform: translate(-50%,-50%);
  transition: width .25s, height .25s, background .25s;
  mix-blend-mode: multiply;
}
.ar-cur-r {
  position: fixed; width: 36px; height: 36px;
  border: 1px solid rgba(58,107,53,0.35); border-radius: 50%;
  pointer-events: none; z-index: 9998;
  transform: translate(-50%,-50%);
  transition: all .18s ease;
}
body:has(a:hover) .ar-cur,
body:has(button:hover) .ar-cur { width: 22px; height: 22px; background: var(--harvest); }

/* =====================================================
   HORIZONTAL RULE
   ===================================================== */
hr.ar-div { border: none; border-top: 1px solid var(--mist); margin: 0; }

/* =====================================================
   NAVIGATION
   ===================================================== */
.ar-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 64px;
  background: rgba(247,242,234,0.92);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--mist);
  transition: padding .3s;
}
.ar-nav.scrolled { padding-top: 12px; padding-bottom: 12px; }
.ar-logo {
  font-family: 'Playfair Display', serif;
  font-size: 21px; font-weight: 500;
  color: var(--earth); text-decoration: none;
  letter-spacing: 0.01em;
  display: flex; align-items: center; gap: 10px;
}
.ar-logo-mark {
  width: 28px; height: 28px; border-radius: 4px;
  background: var(--field);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.ar-logo-mark svg { width: 16px; height: 16px; fill: var(--dawn); }
.ar-nav-c { display: flex; align-items: center; gap: 36px; }
.ar-nav-links { display: flex; gap: 32px; list-style: none; }
.ar-nav-links a {
  font-family: 'Syne', sans-serif; font-size: 13px; font-weight: 500;
  color: var(--text-m); text-decoration: none;
  letter-spacing: 0.02em; transition: color .3s;
}
.ar-nav-links a:hover { color: var(--earth); }
.ar-nav-cta {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: 0.1em; text-transform: uppercase;
  background: var(--earth); color: var(--dawn);
  border: none; padding: 11px 28px; border-radius: 3px;
  font-weight: 400; transition: all .3s;
  text-decoration: none; display: inline-block;
}
.ar-nav-cta:hover { background: var(--field); transform: translateY(-1px); color: var(--dawn); }

/* Hamburger menu */
.ar-hamburger {
  display: none; flex-direction: column; gap: 5px;
  background: none; border: none; padding: 4px;
  width: 32px; cursor: none;
}
.ar-hamburger span {
  display: block; width: 100%; height: 1.5px;
  background: var(--earth); transition: all .3s;
}
.ar-hamburger.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.ar-hamburger.open span:nth-child(2) { opacity: 0; }
.ar-hamburger.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* Mobile menu overlay */
.ar-mobile-menu {
  display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
  background: var(--dawn); z-index: 99;
  flex-direction: column; align-items: center; justify-content: center;
  gap: 32px;
}
.ar-mobile-menu.open { display: flex; }
.ar-mobile-menu a {
  font-family: 'Playfair Display', serif; font-size: 36px; font-weight: 500;
  color: var(--earth); text-decoration: none; letter-spacing: -0.01em;
  transition: color .3s;
}
.ar-mobile-menu a:hover { color: var(--field); }
.ar-mobile-menu .ar-nav-cta { font-size: 12px; margin-top: 16px; }

/* =====================================================
   HERO SECTION
   ===================================================== */
.ar-hero {
  min-height: 100vh;
  display: grid; grid-template-columns: 1fr 1fr;
  align-items: center; gap: 0;
  padding-top: 80px;
  position: relative; overflow: hidden;
}
.ar-hero-left {
  padding: 80px 64px;
  position: relative; z-index: 2;
}
.ar-hero-right {
  height: 100vh; position: relative;
  background: var(--earth); overflow: hidden;
}
.ar-field-bg {
  position: absolute; inset: 0;
  background: linear-gradient(180deg,
    #1A3A18 0%, #2A5C28 30%, #3A7835 55%,
    #C8883A 56%, #E8B86D 65%, #F7CC88 72%,
    #8BB5D4 73%, #6B9EC4 85%, #4A7EA8 100%
  );
}
.ar-field-rows { position: absolute; bottom: 0; left: 0; right: 0; height: 58%; overflow: hidden; }
.ar-field-row {
  height: 8px;
  border-top: 1px solid rgba(255,255,255,0.04);
  background: transparent; transform-origin: bottom;
}
.ar-field-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(15,10,5,0.2) 100%);
}
.ar-hero-right-text {
  position: absolute; bottom: 48px; left: 40px; right: 40px; z-index: 2;
}
.ar-hero-right-stat { display: flex; align-items: baseline; gap: 10px; margin-bottom: 8px; }
.ar-hrs-num { font-family: 'Playfair Display', serif; font-size: 40px; color: var(--dawn); opacity: .9; }
.ar-hrs-label {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(247,242,234,.45);
}
.ar-hero-right-div { width: 40px; height: 1px; background: rgba(247,242,234,.2); margin: 20px 0; }
.ar-hero-eyebrow {
  display: flex; align-items: center; gap: 12px; margin-bottom: 28px;
  opacity: 0; animation: arFadeUp .9s .2s forwards;
}
.ar-eyebrow-dot {
  width: 7px; height: 7px; border-radius: 50%; background: var(--field);
  animation: arBlink 2.5s ease-in-out infinite;
}
.ar-eyebrow-text {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .2em; text-transform: uppercase; color: var(--field);
}
.ar-hero-h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(52px, 6.5vw, 90px);
  line-height: .94; font-weight: 500;
  letter-spacing: -0.01em; margin-bottom: 32px;
  opacity: 0; animation: arFadeUp .95s .35s forwards;
}
.ar-hero-h1 em { font-style: italic; color: var(--field); }
.ar-hero-h1 .ar-line2 { color: var(--text-m); font-weight: 400; font-size: .85em; }
.ar-hero-sub {
  font-size: 16px; line-height: 1.8; color: var(--text-m); max-width: 440px;
  margin-bottom: 48px;
  opacity: 0; animation: arFadeUp .95s .5s forwards;
}
.ar-hero-btns {
  display: flex; gap: 14px; flex-wrap: wrap;
  opacity: 0; animation: arFadeUp .95s .6s forwards;
}
.ar-hero-tokens {
  display: flex; gap: 10px; margin-top: 40px;
  opacity: 0; animation: arFadeUp .95s .75s forwards;
  flex-wrap: wrap;
}
.ar-tok-badge {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 16px; border-radius: 3px;
  background: var(--parch); border: 1px solid var(--mist2);
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .06em; color: var(--text-m);
}
.ar-tok-badge .ar-dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
.ar-dot-sol { background: #9945FF; }
.ar-dot-ton { background: #0088CC; }

/* =====================================================
   BUTTONS
   ===================================================== */
.ar-btn-dark {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .1em; text-transform: uppercase;
  background: var(--earth); color: var(--dawn);
  border: none; padding: 16px 40px; border-radius: 3px;
  transition: all .3s; font-weight: 400; display: inline-block;
  text-decoration: none;
}
.ar-btn-dark:hover { background: var(--field); transform: translateY(-2px); color: var(--dawn); }
.ar-btn-line {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .1em; text-transform: uppercase;
  background: none; color: var(--earth);
  border: 1.5px solid var(--mist3); padding: 16px 40px; border-radius: 3px;
  transition: all .3s; display: inline-block; text-decoration: none;
}
.ar-btn-line:hover { border-color: var(--earth); color: var(--earth); }
.ar-btn-light {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .1em; text-transform: uppercase;
  background: var(--dawn); color: var(--earth);
  border: none; padding: 16px 36px; border-radius: 3px;
  transition: all .3s; text-align: center; white-space: nowrap;
  display: inline-block; text-decoration: none;
}
.ar-btn-light:hover { background: var(--wheat); color: var(--earth); }
.ar-btn-line2 {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .1em; text-transform: uppercase;
  background: none; color: rgba(247,242,234,.5);
  border: 1px solid rgba(247,242,234,.15); padding: 16px 36px; border-radius: 3px;
  transition: all .3s; text-align: center;
  display: inline-block; text-decoration: none;
}
.ar-btn-line2:hover { color: var(--dawn); border-color: rgba(247,242,234,.4); }

/* =====================================================
   TICKER
   ===================================================== */
.ar-ticker-wrap {
  overflow: hidden;
  border-top: 1px solid var(--mist); border-bottom: 1px solid var(--mist);
  padding: 13px 0; background: var(--parch);
}
.ar-ticker { display: flex; width: max-content; animation: arTick 45s linear infinite; }
.ar-ti {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .15em; color: var(--text-d);
  padding: 0 48px; white-space: nowrap;
  display: flex; align-items: center; gap: 14px;
}
.ar-ti .ar-dot2 { width: 3px; height: 3px; border-radius: 50%; background: var(--harvest); }
.ar-ti.up { color: var(--field); }
.ar-ti.mid { color: var(--harvest); }

/* =====================================================
   SECTIONS BASE
   ===================================================== */
.ar-s {
  padding: 120px 64px; max-width: 1400px; margin: 0 auto;
  position: relative; z-index: 2;
}
.ar-sl {
  font-family: 'JetBrains Mono', monospace; font-size: 10px;
  letter-spacing: .25em; text-transform: uppercase;
  color: var(--text-d); margin-bottom: 18px;
}
.ar-sh {
  font-family: 'Playfair Display', serif;
  font-size: clamp(36px, 5vw, 62px); line-height: 1.05; font-weight: 500;
}
.ar-sh em { font-style: italic; color: var(--field); }

/* =====================================================
   ECOSYSTEM SECTION
   ===================================================== */
.ar-eco-intro {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 80px; align-items: end; margin-bottom: 72px;
}
.ar-eco-intro-right { font-size: 16px; line-height: 1.85; color: var(--text-m); }
.ar-eco-grid {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 1px; background: var(--mist);
}
.ar-eco-card {
  background: var(--dawn); padding: 40px 36px;
  transition: background .3s; position: relative; overflow: hidden;
}
.ar-eco-card::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px;
  background: var(--field); transform: scaleX(0); transform-origin: left;
  transition: transform .4s ease;
}
.ar-eco-card:hover { background: var(--parch); }
.ar-eco-card:hover::after { transform: scaleX(1); }
.ar-ec-num {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .2em; color: var(--text-d); margin-bottom: 20px;
}
.ar-ec-icon {
  width: 52px; height: 52px; border-radius: 6px;
  border: 1px solid var(--mist2);
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; margin-bottom: 24px; background: var(--parch);
}
.ar-ec-title {
  font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 500; margin-bottom: 10px;
}
.ar-ec-desc { font-size: 14px; line-height: 1.75; color: var(--text-m); margin-bottom: 20px; }
.ar-ec-chain {
  font-family: 'JetBrains Mono', monospace; font-size: 10px;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 5px 12px; border-radius: 20px;
  display: inline-flex; align-items: center; gap: 6px;
}
.ar-chain-dot { width: 6px; height: 6px; border-radius: 50%; display: inline-block; }
.ar-chain-sol { background: rgba(153,69,255,.08); color: #7B35B8; border: 1px solid rgba(153,69,255,.15); }
.ar-chain-ton { background: rgba(0,136,204,.08); color: #005A8C; border: 1px solid rgba(0,136,204,.15); }
.ar-chain-all { background: rgba(58,107,53,.08); color: var(--field); border: 1px solid rgba(58,107,53,.15); }
.ar-eco-card-more {
  display: flex; align-items: center; justify-content: center;
  background: var(--parch); padding: 40px 36px;
}
.ar-eco-more-inner { text-align: center; padding: 20px; }
.ar-eco-more-plus {
  font-family: 'Playfair Display', serif; font-size: 48px;
  color: var(--mist3); line-height: 1; margin-bottom: 12px;
}
.ar-eco-more-title {
  font-family: 'Playfair Display', serif; font-size: 18px;
  margin-bottom: 8px; font-style: italic;
}
.ar-eco-more-desc { font-size: 13px; color: var(--text-m); line-height: 1.6; }

/* =====================================================
   TOKENS SECTION
   ===================================================== */
.ar-tokens-split {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 2px; background: var(--mist); margin-top: 64px;
}
.ar-token-panel { padding: 56px 48px; position: relative; overflow: hidden; }
.ar-tp-left { background: var(--earth); }
.ar-tp-right { background: var(--parch); }
.ar-tp-tag {
  font-family: 'JetBrains Mono', monospace; font-size: 10px;
  letter-spacing: .2em; text-transform: uppercase;
  padding: 6px 14px; border-radius: 2px; display: inline-block; margin-bottom: 28px;
}
.ar-tpt-meme { background: rgba(200,136,58,.15); color: var(--harvest); border: 1px solid rgba(200,136,58,.25); }
.ar-tpt-util { background: rgba(58,107,53,.12); color: var(--field); border: 1px solid rgba(58,107,53,.2); }
.ar-tp-name {
  font-family: 'Playfair Display', serif; font-size: 48px; font-weight: 500;
  line-height: 1; margin-bottom: 8px;
}
.ar-tp-left .ar-tp-name { color: var(--dawn); }
.ar-tp-right .ar-tp-name { color: var(--earth); }
.ar-tp-chain {
  font-family: 'JetBrains Mono', monospace; font-size: 12px;
  letter-spacing: .15em; text-transform: uppercase; margin-bottom: 28px; display: block;
}
.ar-tp-left .ar-tp-chain { color: rgba(247,242,234,.4); }
.ar-tp-right .ar-tp-chain { color: var(--text-d); }
.ar-tp-desc { font-size: 15px; line-height: 1.8; margin-bottom: 32px; }
.ar-tp-left .ar-tp-desc { color: rgba(247,242,234,.6); }
.ar-tp-right .ar-tp-desc { color: var(--text-m); }
.ar-tp-features { list-style: none; display: flex; flex-direction: column; gap: 10px; margin-bottom: 36px; }
.ar-tp-features li { display: flex; align-items: center; gap: 12px; font-size: 14px; }
.ar-tp-left .ar-tp-features li { color: rgba(247,242,234,.75); }
.ar-tp-right .ar-tp-features li { color: var(--text-m); }
.ar-tp-features li::before { content: ''; width: 16px; height: 1px; flex-shrink: 0; }
.ar-tp-left .ar-tp-features li::before { background: rgba(247,242,234,.3); }
.ar-tp-right .ar-tp-features li::before { background: var(--field); }
.ar-tp-price {
  display: flex; align-items: baseline; gap: 8px;
  padding-top: 28px; border-top: 1px solid;
}
.ar-tp-left .ar-tp-price { border-color: rgba(247,242,234,.1); }
.ar-tp-right .ar-tp-price { border-color: var(--mist); }
.ar-tp-price-val { font-family: 'Playfair Display', serif; font-size: 32px; }
.ar-tp-left .ar-tp-price-val { color: var(--wheat); }
.ar-tp-right .ar-tp-price-val { color: var(--field); }
.ar-tp-price-label {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .1em; text-transform: uppercase;
}
.ar-tp-left .ar-tp-price-label { color: rgba(247,242,234,.35); }
.ar-tp-right .ar-tp-price-label { color: var(--text-d); }
.ar-tp-bg-num {
  position: absolute; bottom: -20px; right: 20px;
  font-family: 'Playfair Display', serif; font-size: 160px; font-weight: 700;
  line-height: 1; pointer-events: none;
}
.ar-tp-left .ar-tp-bg-num { color: rgba(247,242,234,.03); }
.ar-tp-right .ar-tp-bg-num { color: rgba(46,31,15,.04); }

/* =====================================================
   ROADMAP SECTION
   ===================================================== */
.ar-rm-wrap { margin-top: 72px; }
.ar-rm-grid {
  display: grid; grid-template-columns: repeat(4,1fr);
  gap: 1px; background: var(--mist);
}
.ar-rm-phase { background: var(--dawn); padding: 36px 32px; position: relative; }
.ar-rm-phase.active-phase { background: var(--parch); }
.ar-rm-phase-top {
  display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px;
}
.ar-rm-q {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .15em; text-transform: uppercase; color: var(--text-d);
}
.ar-rm-phase.active-phase .ar-rm-q { color: var(--field); }
.ar-rm-indicator { width: 10px; height: 10px; border-radius: 50%; border: 2px solid var(--mist3); }
.ar-rm-phase.done .ar-rm-indicator { background: var(--field); border-color: var(--field); }
.ar-rm-phase.active-phase .ar-rm-indicator {
  background: var(--field); border-color: var(--field);
  box-shadow: 0 0 0 4px rgba(58,107,53,.15);
  animation: arBlink 1.5s infinite;
}
.ar-rm-phase-title { font-family: 'Playfair Display', serif; font-size: 20px; margin-bottom: 16px; }
.ar-rm-items { list-style: none; display: flex; flex-direction: column; gap: 8px; }
.ar-rm-items li {
  font-size: 13px; color: var(--text-m);
  display: flex; align-items: flex-start; gap: 10px; line-height: 1.5;
}
.ar-rm-items li::before {
  content: ''; display: block; width: 14px; height: 1px;
  background: var(--mist3); flex-shrink: 0; margin-top: 9px;
}
.ar-rm-phase.done .ar-rm-items li::before {
  content: '✓'; width: auto; height: auto;
  background: none; color: var(--field); font-size: 11px; margin-top: 2px;
}
.ar-rm-phase.active-phase .ar-rm-items li::before { background: var(--field); }

/* =====================================================
   WHY SECTION
   ===================================================== */
.ar-why-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 64px; align-items: start; margin-top: 72px;
}
.ar-why-list { display: flex; flex-direction: column; gap: 0; }
.ar-why-item {
  padding: 28px 0; border-bottom: 1px solid var(--mist);
  display: grid; grid-template-columns: 48px 1fr; gap: 20px;
  align-items: start; transition: padding .3s;
}
.ar-why-item:last-child { border-bottom: none; }
.ar-why-item:hover { padding-left: 8px; }
.ar-why-num { font-family: 'JetBrains Mono', monospace; font-size: 13px; color: var(--text-d); padding-top: 4px; }
.ar-why-title { font-size: 16px; font-weight: 600; margin-bottom: 8px; }
.ar-why-desc { font-size: 14px; line-height: 1.75; color: var(--text-m); }
.ar-why-visual {
  background: var(--earth); border-radius: 6px;
  padding: 40px; position: sticky; top: 120px;
}
.ar-wv-title {
  font-family: 'Playfair Display', serif; font-size: 24px;
  color: var(--dawn); margin-bottom: 28px; font-style: italic;
}
.ar-wv-metric {
  border-bottom: 1px solid rgba(247,242,234,.07);
  padding: 18px 0; display: flex; justify-content: space-between; align-items: baseline;
}
.ar-wv-metric:last-child { border-bottom: none; }
.ar-wv-metric-label {
  font-family: 'JetBrains Mono', monospace; font-size: 11px;
  letter-spacing: .1em; text-transform: uppercase; color: rgba(247,242,234,.35);
}
.ar-wv-metric-val { font-family: 'Playfair Display', serif; font-size: 26px; color: var(--dawn); }
.ar-wv-metric-val.green { color: var(--sprout); }
.ar-wv-metric-val.wheat { color: var(--wheat); }

/* =====================================================
   PARTNERS
   ===================================================== */
.ar-partners-row {
  display: flex; align-items: center; gap: 0;
  border: 1px solid var(--mist); margin-top: 64px;
}
.ar-partner {
  flex: 1; padding: 32px 28px;
  display: flex; align-items: center; justify-content: center;
  border-right: 1px solid var(--mist);
  opacity: .35; transition: opacity .3s;
  font-family: 'Syne', sans-serif; font-size: 14px;
  font-weight: 600; letter-spacing: .05em; color: var(--earth);
}
.ar-partner:last-child { border-right: none; }
.ar-partner:hover { opacity: 1; }

/* =====================================================
   CTA STRIP
   ===================================================== */
.ar-cta-strip {
  background: var(--earth);
  padding: 100px 64px;
  display: grid; grid-template-columns: 1fr auto;
  gap: 60px; align-items: center;
  position: relative; overflow: hidden;
}
.ar-cta-strip::before {
  content: ''; position: absolute; right: -100px; top: -100px;
  width: 400px; height: 400px; border-radius: 50%;
  background: radial-gradient(circle, rgba(58,107,53,.25) 0%, transparent 70%);
}
.ar-cta-h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(36px, 5vw, 60px);
  color: var(--dawn); line-height: 1.05; font-weight: 500;
}
.ar-cta-h2 em { font-style: italic; color: var(--wheat); }
.ar-cta-sub {
  font-size: 15px; color: rgba(247,242,234,.55);
  margin-top: 16px; line-height: 1.7; max-width: 480px;
}
.ar-cta-actions { display: flex; flex-direction: column; gap: 12px; flex-shrink: 0; }

/* =====================================================
   FOOTER
   ===================================================== */
.ar-footer {
  padding: 48px 64px;
  border-top: 1px solid var(--mist);
  display: grid; grid-template-columns: 200px 1fr auto;
  gap: 40px; align-items: start;
}
.ar-foot-logo {
  font-family: 'Playfair Display', serif; font-size: 18px; font-weight: 500;
  color: var(--earth); margin-bottom: 8px;
}
.ar-foot-desc { font-size: 12px; color: var(--text-d); line-height: 1.6; }
.ar-foot-links {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 32px;
}
.ar-foot-col-title {
  font-family: 'JetBrains Mono', monospace; font-size: 10px;
  letter-spacing: .15em; text-transform: uppercase;
  color: var(--text-d); margin-bottom: 16px;
}
.ar-foot-col a {
  display: block; font-size: 13px; color: var(--text-m);
  text-decoration: none; margin-bottom: 10px; transition: color .3s;
}
.ar-foot-col a:hover { color: var(--earth); }
.ar-foot-copy {
  font-family: 'JetBrains Mono', monospace; font-size: 10px;
  letter-spacing: .08em; color: var(--text-d); white-space: nowrap; align-self: end;
}

/* =====================================================
   SCROLL REVEAL
   ===================================================== */
.ar-rv  { opacity: 0; transform: translateY(18px); transition: all .7s ease; }
.ar-rv2 { opacity: 0; transform: translateY(18px); transition: all .7s .15s ease; }
.ar-rv3 { opacity: 0; transform: translateY(18px); transition: all .7s .3s ease; }
.ar-rv.v, .ar-rv2.v, .ar-rv3.v { opacity: 1; transform: translateY(0); }

/* =====================================================
   KEYFRAMES
   ===================================================== */
@keyframes arFadeUp  { from { opacity:0; transform:translateY(22px) } to { opacity:1; transform:translateY(0) } }
@keyframes arBlink   { 0%,100%{opacity:1} 50%{opacity:.3} }
@keyframes arTick    { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* =====================================================
   ELEMENTOR COMPATIBILITY
   ===================================================== */
.elementor-page .ar-nav,
.elementor-page .ar-footer { position: static; }
.elementor-section, .elementor-widget-wrap { position: relative; }

/* Elementor custom page template — full width */
body.page-template-elementor-canvas .ar-nav,
body.page-template-elementor-canvas .ar-footer { display: none; }

/* =====================================================
   WORDPRESS CORE STYLES
   ===================================================== */
.wp-caption { max-width: 100%; }
.alignleft { float: left; margin-right: 1.5em; }
.alignright { float: right; margin-left: 1.5em; }
.aligncenter { clear: both; display: block; margin: 0 auto; }
.screen-reader-text {
  clip: rect(1px,1px,1px,1px); height: 1px; overflow: hidden;
  position: absolute; width: 1px; word-wrap: normal;
}

/* =====================================================
   RESPONSIVE — TABLET & MOBILE
   ===================================================== */
@media (max-width: 1200px) {
  .ar-s { padding: 100px 48px; }
  .ar-cta-strip { padding: 80px 48px; }
  .ar-footer { padding: 40px 48px; }
  .ar-nav { padding: 18px 48px; }
}

@media (max-width: 960px) {
  /* Nav */
  .ar-nav { padding: 16px 24px; }
  .ar-nav-links { display: none; }
  .ar-hamburger { display: flex; }
  .ar-nav-cta.desktop { display: none; }

  /* Hero */
  .ar-hero { grid-template-columns: 1fr; padding-top: 72px; }
  .ar-hero-right { height: 320px; }
  .ar-hero-left { padding: 48px 24px; }

  /* Sections */
  .ar-s { padding: 80px 24px; }

  /* Eco */
  .ar-eco-intro { grid-template-columns: 1fr; gap: 32px; }
  .ar-eco-grid { grid-template-columns: 1fr; }

  /* Tokens */
  .ar-tokens-split { grid-template-columns: 1fr; }

  /* Roadmap */
  .ar-rm-grid { grid-template-columns: 1fr 1fr; }

  /* Why */
  .ar-why-grid { grid-template-columns: 1fr; }
  .ar-why-visual { position: static; }

  /* Partners */
  .ar-partners-row { flex-wrap: wrap; }
  .ar-partner { flex: 0 0 50%; border-bottom: 1px solid var(--mist); }

  /* CTA */
  .ar-cta-strip { grid-template-columns: 1fr; padding: 64px 24px; gap: 36px; }
  .ar-cta-actions { flex-direction: row; flex-wrap: wrap; }

  /* Footer */
  .ar-footer { grid-template-columns: 1fr; gap: 28px; padding: 40px 24px; }
  .ar-foot-links { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
  /* Roadmap */
  .ar-rm-grid { grid-template-columns: 1fr; }

  /* Partners */
  .ar-partner { flex: 0 0 100%; }

  /* Foot */
  .ar-foot-links { grid-template-columns: 1fr; }

  /* CTA */
  .ar-cta-actions { flex-direction: column; }
  .ar-cta-actions .ar-btn-light,
  .ar-cta-actions .ar-btn-line2 { width: 100%; }

  /* Hero h1 */
  .ar-hero-h1 { font-size: 42px; }
}
