/* ═══════════════════════════════════════════
   R.I.F.T. — Page Styles
   rift.css
   (previously had NO dedicated stylesheet — written from scratch)
═══════════════════════════════════════════ */

:root {
  --rf-amber:         #F59E0B;
  --rf-amber2:        #D97706;
  --rf-border:        rgba(245, 158, 11, 0.2);
  --rf-border-strong: rgba(245, 158, 11, 0.42);
  --rf-glow:          rgba(245, 158, 11, 0.07);
}

/* ── HERO ── */
#rf-hero {
  min-height: 100vh;
  min-height: 100svh;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 80px 24px 56px;
  overflow: hidden;
  background: #1A0F05;
}

/* ── HERO VIDEO ── */
.hero-video-bg {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.hero-video-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
#rf-hero .hero-video-overlay {
  background:
    linear-gradient(to bottom, rgba(0,0,0,0.15) 0%, rgba(11,21,53,0.72) 78%, #0B1535 100%),
    radial-gradient(ellipse at 50% 30%, rgba(245,158,11,0.07) 0%, transparent 60%);
}

/* Animated concentric turbine rings — hero background */
.turbine-bg {
  position: absolute; inset: 0; pointer-events: none; overflow: hidden;
}
.tb-ring {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(245,158,11,0.1);
  animation: tbSpin 20s linear infinite;
}
@keyframes tbSpin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }

.rf-hero-content { position: relative; z-index: 1; }

.rf-hero-badge {
  display:inline-flex; align-items:center; gap:10px;
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--rf-amber); margin-bottom:20px;
}
.rf-hero-badge-dot {
  width:6px; height:6px; border-radius:50%; background:var(--rf-amber);
  flex-shrink:0; animation:blink 1.6s ease-in-out infinite;
}

.rf-hero-title {
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(72px,24vw,100px);
  letter-spacing:0.03em; line-height:0.88; color:var(--inv);
}
.rf-hero-title-sub {
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(20px,6vw,28px);
  letter-spacing:0.06em; line-height:1.2;
  color:var(--rf-amber); margin-bottom:20px;
  text-transform:uppercase;
}
.rf-hero-tagline {
  font-size:14px; line-height:1.72; color:var(--inv-muted); margin-bottom:32px;
}

.rf-hero-stats {
  display:grid; grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(245,158,11,0.18); border-left:1px solid rgba(245,158,11,0.18);
}
.rf-hero-stat {
  padding:14px 10px;
  border-right:1px solid rgba(245,158,11,0.18);
  border-bottom:1px solid rgba(245,158,11,0.18);
}
.rf-hero-stat-num {
  font-family:'Bebas Neue',sans-serif; font-size:28px; letter-spacing:0.05em;
  color:var(--inv); line-height:1;
}
.rf-hero-stat-label {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:0.14em;
  color:rgba(245,158,11,0.6); text-transform:uppercase; margin-top:4px;
}

/* ── SECTION BG ALTERNATION ── */
#rf-overview   { background:var(--white); border-bottom:1px solid var(--border); }
#rf-modes      { background:var(--ice);   border-bottom:1px solid var(--border); }
#rf-deploy     { background:var(--white); border-bottom:1px solid var(--border); }
#rf-markets    { background:var(--ice);   border-bottom:1px solid var(--border); }
#rf-traction   { background:var(--white); border-bottom:1px solid var(--border); }
#rf-cta        { background:var(--navy);  border-bottom:none; }

.rf-section-label { color: var(--rf-amber) !important; }
.rf-section-label::before { color: rgba(245,158,11,0.4) !important; }

/* ── OVERVIEW ── */
.rf-body {
  font-size:15px; line-height:1.76; color:var(--text); margin-bottom:18px;
}
.rf-body strong { color:var(--navy); font-weight:600; }

.rf-callout {
  border-left:3px solid var(--rf-amber);
  padding:12px 0 12px 24px; margin:28px 0;
  background:linear-gradient(to right, rgba(245,158,11,0.05), transparent);
}
.rf-callout p {
  font-size:16px; font-style:italic; font-weight:300;
  line-height:1.6; color:var(--text); margin-bottom:10px;
}
.rf-callout small {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.18em;
  color:var(--muted); text-transform:uppercase;
}

/* ── MODE CARDS ── */
.rf-mode-cards { display:flex; flex-direction:column; gap:8px; margin-top:8px; }

.rf-mode-card {
  background:var(--white); border:1px solid var(--border); padding:24px 20px;
  position:relative; overflow:hidden;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.rf-mode-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--rf-amber), transparent);
}
.rf-mode-card:hover { border-color:var(--rf-border-strong); box-shadow:0 4px 16px rgba(245,158,11,0.07); }

.rf-mode-header { display:flex; align-items:flex-start; gap:14px; margin-bottom:16px; }
.rf-mode-icon   { font-size:26px; line-height:1; flex-shrink:0; }
.rf-mode-title  {
  font-family:'Barlow Condensed',sans-serif; font-size:20px; font-weight:700;
  letter-spacing:0.08em; text-transform:uppercase; color:var(--text); line-height:1;
}
.rf-mode-sub {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.16em;
  color:var(--rf-amber); margin-top:4px; text-transform:uppercase;
}
.rf-mode-visual {
  background: rgba(245,158,11,0.03); border:1px solid var(--rf-border);
  margin-bottom:18px; overflow:hidden;
  display:flex; align-items:center; justify-content:center; min-height:180px;
}
.rf-mode-visual svg { display:block; width:100%; max-width:380px; }

.rf-mode-body { font-size:14px; line-height:1.72; color:var(--muted); margin-bottom:18px; }
.rf-mode-body strong { color:var(--text); }

/* SVG animation for turbine blades inside mode visuals */
@keyframes rfSpin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* ── DEPLOY STEPS ── */
.rf-deploy-steps { display:flex; flex-direction:column; gap:0; margin-top:8px; }

.rf-deploy-step {
  display:flex; gap:20px; align-items:flex-start;
  padding:20px 0; border-bottom:1px solid var(--border);
}
.rf-deploy-step:last-child { border-bottom:none; }

.rf-step-num {
  font-family:'Bebas Neue',sans-serif; font-size:40px; letter-spacing:0.06em;
  color:var(--rf-amber); line-height:1; flex-shrink:0; min-width:44px;
  opacity:0.7;
}
.rf-step-title {
  font-family:'Barlow Condensed',sans-serif; font-size:15px; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase; color:var(--text); margin-bottom:6px;
}
.rf-step-body { font-size:14px; line-height:1.7; color:var(--muted); }

/* ── MARKETS ── */
.rf-market-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:8px; }

.rf-market-card {
  background:var(--white); border:1px solid var(--border); padding:20px 16px;
  position:relative; overflow:hidden; transition:border-color 0.2s;
}
.rf-market-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--rf-amber), transparent);
}
.rf-market-card:hover { border-color:var(--rf-border-strong); }
.rf-market-icon  { font-size:20px; margin-bottom:10px; }
.rf-market-title {
  font-family:'Barlow Condensed',sans-serif; font-size:13px; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase; color:var(--text); margin-bottom:6px;
}
.rf-market-body { font-size:12px; line-height:1.6; color:var(--muted); }

/* ── TRACTION ── */
.rf-traction-list { display:flex; flex-direction:column; gap:8px; margin-top:8px; }
.rf-traction-item {
  background:var(--white); border:1px solid var(--border); padding:20px;
  display:flex; gap:14px; align-items:flex-start;
  transition:border-color 0.2s;
}
.rf-traction-item:hover { border-color:var(--rf-border); }
.rf-traction-icon  { font-size:20px; flex-shrink:0; line-height:1; }
.rf-traction-title {
  font-family:'Barlow Condensed',sans-serif; font-size:14px; font-weight:700;
  letter-spacing:0.08em; text-transform:uppercase; color:var(--text); margin-bottom:6px;
}
.rf-traction-body { font-size:13px; line-height:1.68; color:var(--muted); }
.rf-hi { color:var(--rf-amber2); font-weight:600; }

/* Spec rows for RIFT use amber borders */
#rf-modes .spec-row { border-bottom-color:rgba(245,158,11,0.15); }
#rf-modes .spec-list { border-top-color:rgba(245,158,11,0.15); }
#rf-modes .spec-key  { color:var(--muted); }
#rf-modes .spec-val  { color:var(--navy); }

/* ── CTA (dark) ── */
#rf-cta { padding:72px 24px; text-align:center; }

.rf-cta-title {
  font-family:'Bebas Neue',sans-serif; font-size:clamp(52px,16vw,72px); letter-spacing:0.03em;
  color:var(--inv); line-height:0.92; margin-bottom:20px;
}
.rf-cta-body {
  font-size:15px; line-height:1.72; color:var(--inv-muted); margin-bottom:32px;
  max-width:440px; margin-left:auto; margin-right:auto;
}
#rf-cta .cta-pair { display:flex; flex-direction:column; gap:12px; max-width:360px; margin:0 auto 16px; }
#rf-cta .btn-primary { background:var(--rf-amber); color:#0B1535; }
#rf-cta .btn-ghost   { color:var(--inv); border-color:rgba(255,255,255,0.28); }
#rf-cta .btn-ghost:hover { border-color:rgba(255,255,255,0.65); background:rgba(255,255,255,0.05); }
.rf-back-link {
  display:inline-block; margin-top:4px;
  font-family:'Barlow Condensed',sans-serif; font-size:12px; letter-spacing:0.2em;
  text-transform:uppercase; text-decoration:none;
  color:rgba(245,158,11,0.6); transition:color 0.2s;
}
.rf-back-link:hover { color:var(--rf-amber); }

/* ── RIFT PRODUCT SHOWCASE (overview) ── */
.rf-product-showcase {
  margin:24px 0;
  display:flex; align-items:center; justify-content:center;
  background:var(--ice); border:1px solid var(--border);
  padding:24px 0;
}
.rf-product-img {
  max-height:280px; max-width:220px;
  width:auto; height:auto;
  object-fit:contain; display:block;
}

/* ── RIFT MODE CARD IMAGES (replace SVG diagrams) ── */
.rf-mode-visual img.rf-mode-img {
  width:100%; max-height:190px;
  object-fit:contain; display:block;
  padding:16px 0;
}

/* ── RIFT HERO BRANDING IMAGE ── */
.rf-hero-brand-img {
  display:block;
  width:100%; max-width:340px;
  margin-bottom:20px;
  border-radius:8px;
  object-fit:cover;
}
