/* ══════════════════════════════════════════
   POLARIS DIGITAL STUDIO — BRAND CSS
   Overrides Lucy template defaults
   Colors: #51FFB6 (mint) + #57A0FF (blue)
══════════════════════════════════════════ */

/* ══ OVERFLOW FIX ══ */
html, body { overflow-x: hidden; }

/* ══ DESIGN TOKENS ══ */
:root{
  --pol-dark:#0a0a0a;
  --pol-dark-2:#080c18;
  --pol-light:#EDF1FA;
  --pol-mint:#51FFB6;
  --pol-blue:#57A0FF;
  --pol-gradient:linear-gradient(50deg,#51FFB6,#57A0FF);
}

/* ══ FONT DISPLAY ══ */
@font-face{font-family:'FontAwesome';font-display:swap;}

/* ══ SCROLL PROGRESS ══ */
#scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,#51FFB6,#57A0FF);z-index:99999;width:0%;transition:width 0.08s linear;pointer-events:none;}

/* ══ PHONE MOCKUP ══ */
.header .starting .phone-mockup img{width:auto !important;margin-top:0 !important;}
.phone-mockup{text-align:center;margin-top:80px !important;}
.phone-frame{width:240px !important;height:480px !important;background:#111 !important;border-radius:32px !important;padding:12px !important;margin:0 auto !important;box-shadow:0 20px 60px rgba(0,0,0,0.3),inset 0 0 0 2px rgba(255,255,255,0.1) !important;position:relative !important;overflow:hidden !important;}
.phone-frame::before{content:'';position:absolute;top:8px;left:50%;transform:translateX(-50%);width:60px;height:6px;background:#222;border-radius:3px;z-index:2;}
.phone-screen{width:100% !important;height:100% !important;border-radius:22px !important;overflow:hidden !important;}
.phone-screen img{width:100% !important;height:100% !important;object-fit:cover !important;}
.phone-label{margin-top:14px !important;font-size:13px !important;letter-spacing:2px !important;color:#ffffff !important;font-weight:500 !important;}
.phone-sublabel{font-size:11px !important;letter-spacing:1px !important;color:rgba(255,255,255,0.75) !important;margin-top:2px !important;}

/* ══ HERO TEXT OVERRIDES ══ */
.header .banner-text h2{color:#fff !important;font-weight:400 !important;line-height:1.35 !important;text-transform:none !important;text-shadow:0 2px 10px rgba(0,0,0,0.18);color:rgba(255,255,255,0.94) !important;}
.header .banner-text h2 .strong{font-weight:700 !important;}
.header .banner-text p{color:#ffffff !important;font-size:15px !important;line-height:1.8 !important;opacity:0.95;text-shadow:0 1px 8px rgba(0,0,0,0.14);color:rgba(255,255,255,0.86) !important;}

/* ══ TRUST STRIP ══ */
.trust-strip{text-align:center;padding:20px 0 0;margin-top:40px;border-top:1px solid rgba(255,255,255,0.25);}
.trust-item{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#ffffff;font-weight:500;}
.trust-item i{margin-right:6px;font-size:14px;}
.trust-divider{color:rgba(255,255,255,0.4);margin:0 16px;font-size:16px;}

/* ══ STANDALONE TRUST BAR ══ */
.pol-trust-bar{
  background:#0a0a0a;
  padding:16px 24px;
  text-align:center;
  border-top:1px solid rgba(255,255,255,0.07);
  border-bottom:1px solid rgba(255,255,255,0.07);
}
.pol-trust-bar .trust-strip{border:none;margin:0;padding:0;}
@media(max-width:767px){.pol-trust-bar{padding:14px 20px;}}

/* ══ SECTION HEADERS (Lucy style) ══ */
.polaris-section{padding:75px 0;}
.section-header{text-align:center;margin-bottom:40px;}
.section-tag{font-size:12px;letter-spacing:4px;color:#57A0FF;text-transform:uppercase;margin-bottom:16px;}
.section-line{width:1px;height:30px;background:#ccc;margin:0 auto 8px;}
.section-circle{width:12px;height:12px;border:1px solid #ccc;border-radius:50%;margin:0 auto 24px;}
.section-title{font-size:22px;color:#333;font-weight:400;line-height:1.5;}
.section-title span{color:#57A0FF;}

/* ══ METAMORPHOSIS BRIDGE (dark ticker → light lab) ══ */
.morph-bridge{
  height:90px;
  background:linear-gradient(to bottom,#0a0a0a,#EDF1FA);
  pointer-events:none;
}

/* ══ METAMORPHOSIS — LIGHT INTERACTIVE LAB ══ */
#metamorphosis{
  background:#EDF1FA !important;
  padding:56px 0 72px !important;
  text-align:center;
  height:auto !important;
  position:relative;
  overflow:hidden;
}
/* Subtle ambient wash */
#metamorphosis::before{
  content:'';
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 70% 50% at 30% 0%,rgba(81,255,182,0.05) 0%,transparent 60%),
    radial-gradient(ellipse 60% 40% at 80% 100%,rgba(87,160,255,0.06) 0%,transparent 60%);
  pointer-events:none;
  z-index:0;
}

.morph-container{position:relative;z-index:1;max-width:720px;margin:0 auto;padding:0 24px;}

/* Input system */
.morph-input-wrap{
  max-width:480px;
  margin:0 auto 24px;
  display:flex;
  gap:0;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(87,160,255,0.2);
  background:#fff;
  box-shadow:0 4px 24px rgba(87,160,255,0.07),0 1px 4px rgba(0,0,0,0.06);
}
.morph-input{
  flex:1;
  padding:14px 18px;
  background:transparent;
  border:none;
  color:#0d1117;
  font-size:15px;
  font-family:inherit;
  outline:none;
}
.morph-input::placeholder{color:rgba(13,17,23,0.32);}
.morph-btn-gen{
  padding:14px 24px;
  background:linear-gradient(50deg,#51FFB6,#57A0FF);
  border:none;
  color:#0a0a0a;
  font-weight:700;
  font-size:13px;
  letter-spacing:1px;
  cursor:pointer;
  font-family:inherit;
  white-space:nowrap;
  transition:opacity 0.2s;
}
.morph-btn-gen:hover{opacity:0.9;}

/* Premium light browser card */
.morph-browser-card{
  background:#fff;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:0 4px 24px rgba(0,0,0,0.07),0 1px 4px rgba(0,0,0,0.04);
  text-align:left;
}
.morph-browser-bar{
  background:#f2f4f8;
  padding:8px 12px;
  display:flex;
  align-items:center;
  gap:6px;
  border-bottom:1px solid rgba(0,0,0,0.06);
}
.morph-traffic-dot{
  width:10px;height:10px;
  border-radius:50%;
  flex-shrink:0;
}
.morph-url-bar{
  flex:1;
  background:#e8ecf2;
  height:16px;
  border-radius:8px;
  margin-left:10px;
  padding:0 10px;
  display:flex;
  align-items:center;
}
.morph-url-bar span{font-size:10px;color:#666;}

/* Transform section divider */
.morph-transform-wrap{
  margin-top:48px;
  padding-top:48px;
  border-top:1px solid rgba(0,0,0,0.07);
}

/* CTA buttons in morph section */
.morph-cta-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 24px;
  border-radius:100px;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  text-decoration:none !important;
  cursor:pointer;
  font-family:inherit;
  transition:all 0.3s cubic-bezier(0.16,1,0.3,1);
  border:none;
}
.morph-cta-primary{
  background:linear-gradient(50deg,#51FFB6,#57A0FF);
  color:#0a0a0a !important;
}
.morph-cta-primary:hover{
  opacity:0.9;
  transform:translateY(-1px);
  box-shadow:0 8px 24px rgba(81,255,182,0.2);
}
.morph-reset-btn{
  padding:9px 20px;
  background:none;
  border:1px solid rgba(0,0,0,0.15);
  border-radius:100px;
  color:rgba(0,0,0,0.4);
  font-size:11px;
  cursor:pointer;
  font-family:inherit;
  letter-spacing:1px;
  transition:all 0.2s;
}
.morph-reset-btn:hover{border-color:rgba(0,0,0,0.3);color:rgba(0,0,0,0.6);}

/* ══ CTA SECTIONS ══ */
.polaris-cta{text-align:center;padding:40px 24px;}
.polaris-cta.dark{background:#0a0a0a;}
.polaris-cta.gradient{background:linear-gradient(50deg,#51FFB6,#57A0FF);}
.polaris-cta h3{font-size:20px;font-weight:400;margin:0 0 6px;}
.polaris-cta p{font-size:14px;margin:0 0 24px;}
.btn-polaris{padding:14px 32px;background:linear-gradient(50deg,#51FFB6,#57A0FF);border:none;border-radius:6px;color:#0a0a0a;font-weight:700;font-size:13px;letter-spacing:1px;cursor:pointer;font-family:inherit;display:inline-block;text-decoration:none;}
.btn-polaris:hover{opacity:0.9;color:#0a0a0a;text-decoration:none;}
.btn-polaris-outline{padding:14px 32px;background:none;border:1px solid rgba(255,255,255,0.2);border-radius:6px;color:rgba(255,255,255,0.7);font-size:13px;letter-spacing:1px;cursor:pointer;font-family:inherit;display:inline-block;text-decoration:none;}
.btn-polaris-outline:hover{border-color:rgba(255,255,255,0.5);color:#fff;text-decoration:none;}
.btn-polaris-dark{padding:14px 32px;background:#0a0a0a;border:none;border-radius:6px;color:#ffffff;font-weight:700;font-size:13px;letter-spacing:1px;cursor:pointer;font-family:inherit;display:inline-block;text-decoration:none;}
.btn-polaris-dark:hover{opacity:0.9;color:#fff;text-decoration:none;}
.btn-polaris-ghost{padding:14px 32px;background:rgba(0,0,0,0.15);border:none;border-radius:6px;color:#0a0a0a;font-weight:700;font-size:13px;letter-spacing:1px;cursor:pointer;font-family:inherit;display:inline-block;text-decoration:none;}

/* ══ PORTFOLIO BRIDGE (dark CTA → dark navy, barely visible) ══ */
.portfolio-bridge{
  height:40px;
  background:linear-gradient(to bottom,#0a0a0a,#0a0a0a);
  pointer-events:none;
}

/* ══ PORTFOLIO SECTION — DARK NAVY SHOWCASE ══ */
#portfolio.polaris-section{
  background:#0a0a0a;
  padding:60px 0 80px;
  position:relative;
  overflow:hidden;
}
/* Depth glow blobs */
#portfolio.polaris-section::before{
  content:'';
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 55% 50% at 15% 25%,rgba(87,160,255,0.09) 0%,transparent 60%),
    radial-gradient(ellipse 45% 40% at 88% 78%,rgba(81,255,182,0.06) 0%,transparent 55%);
  pointer-events:none;z-index:0;
}
/* Dot grid texture */
#portfolio.polaris-section::after{
  content:'';
  position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(255,255,255,0.025) 1px,transparent 1px);
  background-size:28px 28px;
  pointer-events:none;z-index:0;
}
#portfolio .section-header,
#portfolio .portfolio-grid,
#portfolio .port-cta-wrap{position:relative;z-index:1;}

/* Section header — dark portfolio */
#portfolio .section-tag{color:#51FFB6;font-size:10px;letter-spacing:4px;}
#portfolio .section-line{background:rgba(81,255,182,0.3);}
#portfolio .section-circle{border-color:rgba(81,255,182,0.35);}
#portfolio .section-title{font-size:22px;color:#fff;font-weight:400;line-height:1.5;}
#portfolio .section-title span{color:#51FFB6;}

/* ══ PORTFOLIO CARDS — DARK GLASS ══ */
.portfolio-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  padding:0 24px;
  max-width:760px;
  margin:0 auto;
}

.port-card{
  position:relative;
  border-radius:10px;
  overflow:hidden;
  background:rgba(10,15,38,0.8);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,0.07);
  box-shadow:0 4px 28px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.03);
  cursor:pointer;
  text-decoration:none !important;
  display:block;
  transition:
    transform 0.38s cubic-bezier(0.16,1,0.3,1),
    box-shadow 0.38s cubic-bezier(0.16,1,0.3,1),
    border-color 0.38s ease;
}
.port-card:hover{
  transform:translateY(-7px);
  border-color:rgba(87,160,255,0.25);
  box-shadow:0 28px 70px rgba(0,0,0,0.55),0 0 0 1px rgba(87,160,255,0.08),0 0 40px rgba(87,160,255,0.06);
  text-decoration:none !important;
}

/* Dark visual cards (NEXA / PropEdge) */
.port-card.port-card-dark{
  background:rgba(4,7,18,0.9);
  border-color:rgba(255,255,255,0.05);
}
.port-card.port-card-dark:hover{
  border-color:rgba(81,255,182,0.22);
  box-shadow:0 28px 70px rgba(0,0,0,0.6),0 0 40px rgba(81,255,182,0.07);
}

/* Project label tag */
.port-card-tag{
  position:absolute;
  top:10px;right:10px;
  font-size:8px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  font-weight:700;
  color:rgba(87,160,255,0.85);
  background:rgba(87,160,255,0.1);
  border:1px solid rgba(87,160,255,0.2);
  border-radius:100px;
  padding:3px 9px;
  z-index:3;
  pointer-events:none;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.port-card-tag.port-card-tag-light{
  color:rgba(81,255,182,0.85);
  background:rgba(81,255,182,0.08);
  border-color:rgba(81,255,182,0.2);
}

/* Visual area */
.port-card-visual{
  height:210px;
  overflow:hidden;
  transition:transform 0.5s cubic-bezier(0.16,1,0.3,1);
}
.port-card-visual img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.port-card:hover .port-card-visual{transform:scale(1.03);}

/* Info area */
.port-card-info{
  padding:14px 16px 17px;
  border-top:1px solid rgba(255,255,255,0.06);
}
.port-card-name{
  font-size:13px;
  font-weight:600;
  color:#fff;
  margin-bottom:3px;
  letter-spacing:0.1px;
}
.port-card-desc{
  font-size:11px;
  color:rgba(255,255,255,0.38);
  letter-spacing:0.3px;
}

/* CTA block — on dark bg */
.port-cta-wrap{text-align:center;padding:36px 24px 0;}
.port-cta-btn{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:12px 26px;
  border:1px solid rgba(81,255,182,0.25);
  border-radius:100px;
  background:rgba(81,255,182,0.05);
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  color:rgba(81,255,182,0.85) !important;
  text-decoration:none !important;
  transition:all 0.3s cubic-bezier(0.16,1,0.3,1);
}
.port-cta-arrow{
  display:inline-block;
  transition:transform 0.3s cubic-bezier(0.16,1,0.3,1);
}
.port-cta-btn:hover{
  background:rgba(81,255,182,0.1);
  border-color:rgba(81,255,182,0.48);
  color:#fff !important;
  box-shadow:0 0 28px rgba(81,255,182,0.1);
}
.port-cta-btn:hover .port-cta-arrow{transform:translateX(4px);}
.port-cta-sub{font-size:11px;color:rgba(255,255,255,0.28);margin:12px 0 0;letter-spacing:1px;}

/* ══ DIFF BRIDGE (dark navy → light futuristic) ══ */
.diff-bridge{
  height:100px;
  background:linear-gradient(to bottom,#0a0a0a,#EDF1FA);
  pointer-events:none;
}

/* ══ DIFFERENCE SECTION — LIGHT FUTURISTIC LAB ══ */
#difference.polaris-section{
  background:#EDF1FA;
  padding:20px 0 80px;
  position:relative;
  overflow:hidden;
}
/* Blueprint grid */
#difference.polaris-section::before{
  content:'';
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(87,160,255,0.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(87,160,255,0.035) 1px,transparent 1px);
  background-size:40px 40px;
  pointer-events:none;
}
/* Subtle ambient glows */
#difference.polaris-section::after{
  content:'';
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 50% 40% at 10% 20%,rgba(81,255,182,0.05) 0%,transparent 60%),
    radial-gradient(ellipse 40% 35% at 90% 85%,rgba(87,160,255,0.06) 0%,transparent 55%);
  pointer-events:none;
}
#difference .section-header,
#difference .contrast-section{position:relative;z-index:1;}

/* Difference section header */
#difference .section-tag{color:#57A0FF;font-size:10px;letter-spacing:4px;}
#difference .section-line{background:rgba(87,160,255,0.3);}
#difference .section-circle{border-color:rgba(87,160,255,0.35);}
#difference .section-title{font-size:22px;color:#0d1117;font-weight:400;line-height:1.5;}
#difference .section-title span{color:#57A0FF;}

/* ══ CONTRAST AUDIT PANELS ══ */
.contrast-section{
  max-width:700px;
  margin:0 auto;
  padding:0 24px 48px;
}
.contrast-row{
  display:flex;
  gap:10px;
  margin-bottom:10px;
}
.contrast-bad{
  flex:1;
  background:#fff;
  border:1px solid rgba(210,60,60,0.1);
  border-left:3px solid rgba(210,60,60,0.35);
  border-radius:8px;
  padding:20px 20px 20px 18px;
  box-shadow:0 1px 4px rgba(0,0,0,0.04);
  transition:box-shadow 0.2s;
}
.contrast-good{
  flex:1;
  background:#fff;
  border:1px solid rgba(81,255,182,0.15);
  border-left:3px solid rgba(81,255,182,0.55);
  border-radius:8px;
  padding:20px 20px 20px 18px;
  box-shadow:0 1px 4px rgba(0,0,0,0.04);
  transition:box-shadow 0.2s;
}
.contrast-bad:hover,.contrast-good:hover{box-shadow:0 4px 16px rgba(0,0,0,0.08);}
.contrast-bad p,.contrast-good p{font-size:13.5px;line-height:1.72;margin:0;}
.contrast-bad p{color:rgba(0,0,0,0.52);}
.contrast-good p{color:rgba(0,0,0,0.72);}
.contrast-label{font-size:9px;letter-spacing:2px;margin-bottom:10px;text-transform:uppercase;font-weight:700;}
.contrast-label.bad{color:rgba(200,50,50,0.7);}
.contrast-label.good{color:rgba(10,130,70,0.85);}
/* All rows have independent rounded corners now */
.contrast-row:first-child .contrast-bad,
.contrast-row:first-child .contrast-good,
.contrast-row:last-child .contrast-bad,
.contrast-row:last-child .contrast-good{border-radius:8px;}

/* ══ NAV-ONLY HEADER ══ */
.polaris-nav-only{height:auto !important;background:#0a0a0a !important;padding:0 !important;}

/* ══ POLARIS PITCH — PREMIUM SHOWCASE ══ */
.polaris-pitch{
  position:relative;
  background:#0a0a0a;
  padding:80px 0 0;
  overflow:hidden;
}

/* Background system */
.pitch-bg{position:absolute;inset:0;pointer-events:none;z-index:1;}
.pitch-glow{
  position:absolute;
  width:600px;height:600px;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.12;
}
.pitch-glow-left{
  left:-180px;top:-100px;
  background:radial-gradient(circle,#51FFB6,transparent 70%);
  animation:pitchGlowPulse 6s ease-in-out infinite;
}
.pitch-glow-right{
  right:-180px;bottom:-100px;
  background:radial-gradient(circle,#57A0FF,transparent 70%);
  animation:pitchGlowPulse 6s ease-in-out infinite 3s;
}
@keyframes pitchGlowPulse{
  0%,100%{opacity:0.10;}
  50%{opacity:0.18;}
}

/* Subtle dot grid texture */
.pitch-grid{
  position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(255,255,255,0.035) 1px,transparent 1px);
  background-size:26px 26px;
}

/* Ambient light sweep */
.pitch-sweep{
  position:absolute;
  top:0;left:-60%;
  width:40%;height:100%;
  background:linear-gradient(105deg,transparent 40%,rgba(81,255,182,0.025) 50%,transparent 60%);
  animation:pitchSweep 12s ease-in-out infinite;
}
@keyframes pitchSweep{
  0%{left:-60%;}
  100%{left:160%;}
}

/* Phone showcase wrapper */
.pitch-phone-wrap{
  position:relative;
  text-align:center;
  margin-top:20px;
  padding-bottom:8px;
}

/* Soft halo glow behind phone */
.pitch-phone-halo{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-60%);
  width:280px;height:380px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(81,255,182,0.08) 0%,transparent 70%);
  pointer-events:none;
  filter:blur(30px);
}

/* Override phone frame for dark bg context */
.polaris-pitch .phone-frame{
  box-shadow:
    0 32px 80px rgba(0,0,0,0.6),
    0 0 0 1px rgba(255,255,255,0.06),
    0 0 40px rgba(81,255,182,0.06) !important;
  animation:phoneFloat 5s ease-in-out infinite;
}
@keyframes phoneFloat{
  0%,100%{transform:translateY(0px);}
  50%{transform:translateY(-7px);}
}

/* Metadata chips below phone */
.pitch-phone-chips{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:16px;
  flex-wrap:wrap;
}
.pitch-phone-chip{
  font-size:9px;
  letter-spacing:1.8px;
  text-transform:uppercase;
  color:rgba(81,255,182,0.7);
  background:rgba(81,255,182,0.06);
  border:1px solid rgba(81,255,182,0.15);
  border-radius:100px;
  padding:4px 10px;
}

/* Phone caption */
.polaris-pitch .phone-label{
  color:#fff !important;
  margin-top:12px !important;
  font-size:12px !important;
  letter-spacing:2.5px !important;
}
.polaris-pitch .phone-sublabel{
  color:rgba(81,255,182,0.6) !important;
  font-size:10px !important;
  letter-spacing:1.5px !important;
  margin-top:3px !important;
}

/* Glass content panel */
.pitch-glass-panel{
  margin-top:40px;
  background:rgba(255,255,255,0.025);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,0.07);
  border-radius:12px;
  padding:36px 32px 32px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.05),
    0 20px 60px rgba(0,0,0,0.3);
  position:relative;
  overflow:hidden;
}
/* Subtle edge glow on panel */
.pitch-glass-panel::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(81,255,182,0.04) 0%,transparent 50%,rgba(87,160,255,0.03) 100%);
  pointer-events:none;
}

/* Eyebrow label */
.pitch-eyebrow{
  font-size:10px;
  letter-spacing:4px;
  color:#57A0FF;
  text-transform:uppercase;
  margin-bottom:18px;
  font-weight:600;
}

/* Headline and body */
.polaris-pitch .banner-text{margin-top:0 !important;}
.polaris-pitch .banner-text h2{
  color:#fff !important;
  font-size:clamp(20px,2.4vw,28px) !important;
  font-weight:400 !important;
  line-height:1.38 !important;
  text-transform:none !important;
  margin-bottom:16px !important;
}
.polaris-pitch .banner-text h2 .strong{font-weight:700 !important;color:#fff !important;}
.polaris-pitch .banner-text p{
  color:rgba(255,255,255,0.65) !important;
  font-size:15px !important;
  line-height:1.85 !important;
}

/* CTA buttons */
.pitch-btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px;}
.pitch-cta-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 20px;
  border-radius:100px;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  text-decoration:none !important;
  cursor:pointer;
  transition:all 0.3s cubic-bezier(0.16,1,0.3,1);
  position:relative;
  overflow:hidden;
}
.pitch-cta-btn .pitch-btn-arrow{
  display:inline-block;
  transition:transform 0.3s cubic-bezier(0.16,1,0.3,1);
}
.pitch-cta-btn:hover .pitch-btn-arrow{transform:translateX(3px);}
.pitch-cta-primary{
  background:rgba(81,255,182,0.06);
  border:1px solid rgba(81,255,182,0.25);
  color:rgba(81,255,182,0.9) !important;
}
.pitch-cta-primary:hover{
  background:rgba(81,255,182,0.12);
  border-color:rgba(81,255,182,0.5);
  color:#fff !important;
  box-shadow:0 0 20px rgba(81,255,182,0.1);
}
.pitch-cta-secondary{
  background:rgba(87,160,255,0.06);
  border:1px solid rgba(87,160,255,0.2);
  color:rgba(87,160,255,0.85) !important;
}
.pitch-cta-secondary:hover{
  background:rgba(87,160,255,0.12);
  border-color:rgba(87,160,255,0.45);
  color:#fff !important;
  box-shadow:0 0 20px rgba(87,160,255,0.1);
}

/* Trust strip at bottom */
.pitch-trust-strip{
  margin-top:60px;
  border-top:1px solid rgba(255,255,255,0.07) !important;
  padding:20px 24px !important;
  background:rgba(255,255,255,0.015);
}
.pitch-trust-strip .trust-item{color:rgba(255,255,255,0.45) !important;font-size:10px !important;letter-spacing:2px !important;}
.pitch-trust-strip .trust-item .fa{color:rgba(81,255,182,0.5) !important;margin-right:5px;}
.pitch-trust-strip .trust-divider{color:rgba(255,255,255,0.15) !important;}

/* Mobile adjustments */
@media(max-width:768px){
  .polaris-pitch{padding:60px 0 0;}
  .pitch-glass-panel{padding:28px 20px 24px;margin-top:28px;margin-left:0;margin-right:0;}
  .pitch-phone-wrap{margin-top:0;}
  .pitch-btn-row{flex-direction:column;}
  .pitch-cta-btn{justify-content:center;}
}

/* ══ TRADING BOT REVEAL ══ */
#trading-reveal{position:relative;overflow:hidden;min-height:100vh;display:flex;align-items:center;justify-content:center;}
#trading-reveal video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0.3;}
.trading-overlay{position:relative;z-index:2;text-align:center;padding:40px 24px;}
.trading-tag{font-size:11px;letter-spacing:5px;color:#0a0a0a;margin-bottom:20px;text-transform:uppercase;}
.trading-title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:100;color:#0a0a0a;text-transform:uppercase;letter-spacing:8px;margin-bottom:20px;}
.trading-title strong{font-weight:700;}
.trading-sub{font-size:17px;color:#0a0a0a;max-width:500px;margin:0 auto 36px;line-height:1.8;font-weight:400;}
.trading-cred{font-size:12px;color:rgba(0,0,0,0.55);letter-spacing:1.5px;margin-top:20px;}

/* ══ PROOF BLOCK ══ */
#proof.proof-block{background:#080c18;padding:40px 0;position:relative;overflow:hidden;}
.proof-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.022) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.proof-shell{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:48px;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(81,255,182,0.1),0 40px 80px rgba(0,0,0,0.35);position:relative;overflow:hidden;}
.proof-shell::before{content:'';position:absolute;top:-80px;left:50%;transform:translateX(-50%);width:700px;height:280px;background:radial-gradient(ellipse,rgba(81,255,182,0.07) 0%,transparent 65%);pointer-events:none;}
.proof-inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.proof-tag{font-size:10px;letter-spacing:4px;color:#51FFB6;text-transform:uppercase;margin-bottom:16px;}
.proof-headline{font-size:clamp(28px,3.5vw,44px);font-weight:700;color:#fff;margin:0 0 12px;line-height:1.15;}
.proof-gradient{background:linear-gradient(50deg,#51FFB6,#57A0FF);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.proof-sub{font-size:14px;color:rgba(255,255,255,0.42);margin:0 0 24px;line-height:1.7;}
.proof-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px;}
.proof-btn-primary{padding:13px 28px;background:linear-gradient(50deg,#51FFB6,#57A0FF);color:#0a0a0a !important;font-weight:700;font-size:11px;letter-spacing:1.5px;border-radius:6px;text-decoration:none;display:inline-block;font-family:inherit;}
.proof-btn-primary:hover{opacity:0.9;text-decoration:none;color:#0a0a0a !important;}
.proof-btn-ghost{padding:13px 28px;border:1px solid rgba(255,255,255,0.15);color:rgba(255,255,255,0.65) !important;font-size:11px;letter-spacing:1.5px;border-radius:6px;text-decoration:none;display:inline-block;font-family:inherit;transition:border-color 0.25s,color 0.25s;}
.proof-btn-ghost:hover{border-color:rgba(255,255,255,0.3);color:#fff !important;text-decoration:none;}
.proof-cert-row{display:flex;gap:8px;flex-wrap:wrap;}
.proof-cert-chip{font-size:10px;color:rgba(255,255,255,0.35);border:1px solid rgba(255,255,255,0.09);border-radius:100px;padding:5px 12px;white-space:nowrap;}
.proof-right{}
.proof-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.proof-stat-glass{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:12px;padding:28px 20px;text-align:center;}
.proof-stat-num{font-size:40px;font-weight:700;background:linear-gradient(50deg,#51FFB6,#57A0FF);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:8px;}
.proof-stat-label{font-size:9px;letter-spacing:2px;color:rgba(255,255,255,0.38);text-transform:uppercase;}

/* ══ DEPLOYMENT PROTOCOL (Process) ══ */
#process.process-section{background:#EDF1FA;padding:40px 0;position:relative;overflow:hidden;}
.process-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(87,160,255,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(87,160,255,0.06) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;}
.process-shell{background:rgba(255,255,255,0.75);border:1px solid rgba(87,160,255,0.14);border-radius:16px;padding:48px;backdrop-filter:blur(16px);box-shadow:0 4px 48px rgba(87,160,255,0.08),inset 0 1px 0 rgba(255,255,255,0.9);}
.process-shell-header{text-align:center;margin-bottom:8px;}
.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px;}
.process-step-card{background:#fff;border:1px solid rgba(87,160,255,0.12);border-radius:12px;padding:40px 32px;transition:box-shadow 0.3s,transform 0.3s;}
.process-step-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(87,160,255,0.12);}
.process-step-num{font-size:56px;font-weight:700;background:linear-gradient(50deg,#51FFB6,#57A0FF);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:16px;}
.process-step-title{font-size:17px;font-weight:600;color:#0a0a0a;margin-bottom:10px;}
.process-step-desc{font-size:13px;color:#5a6272;line-height:1.65;}

/* ══ DEPLOYMENT PACKAGES (Pricing) ══ */
.pkg-section{background:#080c18;padding:40px 0;position:relative;overflow:hidden;}
.pkg-glow-l{position:absolute;top:10%;left:-80px;width:500px;height:500px;background:radial-gradient(circle,rgba(81,255,182,0.05) 0%,transparent 65%);pointer-events:none;}
.pkg-glow-r{position:absolute;bottom:10%;right:-80px;width:500px;height:500px;background:radial-gradient(circle,rgba(87,160,255,0.05) 0%,transparent 65%);pointer-events:none;}
.pkg-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.022) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
/* shell */
.pkg-shell{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:48px 40px;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(81,255,182,0.08),0 40px 80px rgba(0,0,0,0.3);}
.pkg-header{text-align:center;margin-bottom:40px;}
.pkg-headline{font-size:clamp(24px,3vw,38px);font-weight:700;color:#fff;margin:6px 0 10px;line-height:1.2;}
.pkg-sub{font-size:14px;color:rgba(255,255,255,0.38);max-width:500px;margin:0 auto;}
/* grid — 4 cards */
.pkg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.pkg-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.09);border-radius:12px;padding:32px 24px;text-align:left;position:relative;display:flex;flex-direction:column;transition:border-color 0.3s,transform 0.3s,box-shadow 0.3s;}
.pkg-card:hover{transform:translateY(-6px);border-color:rgba(87,160,255,0.25);box-shadow:0 28px 70px rgba(0,0,0,0.45);}
.pkg-card-featured{border-color:rgba(81,255,182,0.3);box-shadow:0 0 60px rgba(81,255,182,0.07);}
.pkg-card-featured:hover{border-color:rgba(81,255,182,0.55);}
.pkg-card-leadgen{border-color:rgba(81,255,182,0.18);}
.pkg-badge{position:absolute;top:-1px;right:16px;background:linear-gradient(50deg,#51FFB6,#57A0FF);color:#0a0a0a;font-size:8px;font-weight:700;letter-spacing:1.5px;padding:5px 12px;border-radius:0 0 8px 8px;}
.pkg-meta-label{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.28);margin-bottom:10px;}
.pkg-meta-label-mint{color:rgba(81,255,182,0.6);}
.pkg-tier{font-size:11px;letter-spacing:3px;color:rgba(255,255,255,0.5);text-transform:uppercase;margin-bottom:16px;}
.pkg-tier-mint{color:rgba(81,255,182,0.75) !important;}
.pkg-price-block{margin-bottom:0;}
.pkg-price{font-size:44px;font-weight:700;color:#fff;line-height:1;}
.pkg-mo{font-size:16px;font-weight:400;color:rgba(255,255,255,0.4);}
.pkg-was{display:block;font-size:11px;color:rgba(255,255,255,0.22);text-decoration:line-through;margin-top:4px;margin-bottom:0;}
.pkg-divider{height:1px;background:rgba(255,255,255,0.07);margin:20px 0;}
.pkg-features{list-style:none;padding:0;margin:0 0 24px;flex:1;}
.pkg-features li{font-size:12px;color:rgba(255,255,255,0.55);line-height:2.1;padding-left:16px;position:relative;}
.pkg-features li::before{content:'›';color:#51FFB6;position:absolute;left:0;font-weight:700;}
.pkg-btn{width:100%;padding:14px 12px;background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.7);border:1px solid rgba(255,255,255,0.12);border-radius:8px;font-weight:700;font-size:11px;letter-spacing:1.5px;cursor:pointer;font-family:inherit;transition:all 0.25s;margin-top:auto;}
.pkg-btn:hover{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.22);color:#fff;}
.pkg-btn-featured{background:linear-gradient(50deg,#51FFB6,#57A0FF);color:#0a0a0a !important;border:none;}
.pkg-btn-featured:hover{opacity:0.9;}
.pkg-btn-leadgen{color:rgba(81,255,182,0.8) !important;border-color:rgba(81,255,182,0.25);}
.pkg-btn-leadgen:hover{background:rgba(81,255,182,0.08) !important;border-color:rgba(81,255,182,0.42);}
.pkg-footnote{text-align:center;margin-top:28px;font-size:12px;color:rgba(255,255,255,0.28);}
.pkg-footnote-link{color:rgba(81,255,182,0.6);text-decoration:none;}
.pkg-footnote-link:hover{color:rgba(81,255,182,0.85);}

/* ── PKG ADD-ON STRIP (Layer 6.2) ── */
.pkg-addon-row{margin-top:24px;}
.pkg-addon-row::before{content:'ADD-ON';display:block;font-size:9px;letter-spacing:3px;color:rgba(81,255,182,0.4);text-align:center;margin-bottom:10px;}
.pkg-addon-row .pkg-card-leadgen{display:grid;grid-template-columns:1fr 2fr;column-gap:48px;align-items:start;padding:36px 40px;}
.pkg-addon-row .pkg-meta-label{grid-column:1;grid-row:1;}
.pkg-addon-row .pkg-tier{grid-column:1;grid-row:2;}
.pkg-addon-row .pkg-price-block{grid-column:1;grid-row:3;}
.pkg-addon-row .pkg-divider{display:none;}
.pkg-addon-row .pkg-features{grid-column:2;grid-row:1/span 3;display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-bottom:0;flex:unset;}
.pkg-addon-row .pkg-btn-leadgen{grid-column:2;grid-row:4;width:auto;padding:14px 32px;margin-top:12px;align-self:start;background:rgba(10,10,10,0.55) !important;color:#51FFB6 !important;border-color:rgba(81,255,182,0.5) !important;}
.pkg-addon-row .pkg-btn-leadgen:hover{background:rgba(10,10,10,0.72) !important;border-color:rgba(81,255,182,0.75) !important;}
@media(max-width:639px){.pkg-addon-row .pkg-card-leadgen{display:flex !important;flex-direction:column !important;width:100% !important;min-width:unset !important;max-width:none !important;flex:unset !important;scroll-snap-align:unset;padding:24px 20px;}.pkg-addon-row .pkg-divider{display:block;}.pkg-addon-row .pkg-features{display:block;grid-template-columns:unset;flex:1;margin-bottom:16px;}.pkg-addon-row .pkg-btn-leadgen{grid-column:unset;grid-row:unset;width:100% !important;padding:14px 12px;margin-top:0;}}
@media(min-width:640px) and (max-width:1023px){.pkg-addon-row .pkg-card-leadgen{grid-template-columns:1fr 1.5fr;}.pkg-addon-row .pkg-features{grid-template-columns:1fr;}}

/* ══ CLIENT SIGNAL (Testimonials) ══ */
.testi-section{background:#080c18;padding:40px 0;position:relative;overflow:hidden;}
.testi-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.022) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.testi-shell{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:48px;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(81,255,182,0.08),0 40px 80px rgba(0,0,0,0.35);}
.testi-shell-header{text-align:center;margin-bottom:32px;}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.testi-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:32px 24px;display:flex;flex-direction:column;transition:transform 0.3s,border-color 0.3s,box-shadow 0.3s;}
.testi-card:hover{transform:translateY(-5px);border-color:rgba(87,160,255,0.2);box-shadow:0 24px 60px rgba(0,0,0,0.4);}
.testi-card-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
.testi-biz-type{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.35);border:1px solid rgba(255,255,255,0.1);border-radius:100px;padding:4px 10px;}
.testi-rating{color:#51FFB6;font-size:10px;letter-spacing:2px;}
.testi-quote{font-family:'EB Garamond',serif;font-size:15px;font-style:italic;color:rgba(255,255,255,0.78);line-height:1.7;flex:1;margin-bottom:20px;}
.testi-result{display:flex;align-items:center;gap:12px;padding:16px 0;border-top:1px solid rgba(255,255,255,0.07);border-bottom:1px solid rgba(255,255,255,0.07);margin-bottom:16px;}
.testi-result-block{text-align:center;flex:1;}
.testi-result-num{font-size:28px;font-weight:700;color:rgba(255,255,255,0.3);line-height:1;}
.testi-result-after{color:#51FFB6 !important;}
.testi-result-label{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.28);margin-top:3px;}
.testi-result-arrow{font-size:18px;color:rgba(255,255,255,0.18);}
.testi-author-name{font-size:13px;font-weight:600;color:rgba(255,255,255,0.7);}
.testi-author-biz{font-size:11px;color:rgba(255,255,255,0.32);margin-top:2px;}

/* ══ POLARIS INSIGHTS ══ */
.insights-section{background:#EDF1FA;padding:40px 0;position:relative;overflow:hidden;}
.insights-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(87,160,255,0.055) 1px,transparent 1px),linear-gradient(90deg,rgba(87,160,255,0.055) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;}
.insights-shell{background:rgba(255,255,255,0.75);border:1px solid rgba(87,160,255,0.14);border-radius:16px;padding:48px;backdrop-filter:blur(16px);box-shadow:0 4px 48px rgba(87,160,255,0.07),inset 0 1px 0 rgba(255,255,255,0.9);}
.insights-shell-header{text-align:center;margin-bottom:32px;}
.insights-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.insights-supporting{display:flex;flex-direction:column;gap:16px;}
.insights-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(87,160,255,0.1);border-radius:12px;padding:32px 28px;text-decoration:none;transition:transform 0.3s,box-shadow 0.3s,border-color 0.3s;}
.insights-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(87,160,255,0.1);border-color:rgba(87,160,255,0.25);text-decoration:none;}
.insights-card-featured{padding:40px 36px;}
.insights-category{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:#57A0FF;margin-bottom:14px;}
.insights-title{font-size:17px;font-weight:600;color:#0a0a0a;line-height:1.35;margin-bottom:12px;}
.insights-card-featured .insights-title{font-size:22px;}
.insights-sub{font-size:13px;color:#5a6272;line-height:1.6;flex:1;margin-bottom:20px;}
.insights-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(87,160,255,0.1);padding-top:14px;margin-top:auto;}
.insights-read-time{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#8ca3c0;}
.insights-arrow{font-size:16px;color:#57A0FF;transition:transform 0.2s;text-decoration:none;}
.insights-card:hover .insights-arrow{transform:translateX(4px);}
.insights-view-all{text-align:center;padding-top:28px;}
.insights-view-all-link{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:#57A0FF;text-decoration:none;border-bottom:1px solid rgba(87,160,255,0.3);padding-bottom:2px;transition:color 0.2s,border-color 0.2s;}
.insights-view-all-link:hover{color:#0a0a0a;border-color:rgba(10,10,10,0.3);}

/* ══ FAQ ══ */
.faq-section{background:#080c18;padding:40px 0;position:relative;overflow:hidden;}
.faq-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.022) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.faq-shell{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:48px;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(87,160,255,0.08),0 40px 80px rgba(0,0,0,0.35);}
.faq-shell-header{text-align:center;margin-bottom:32px;}
.faq-list{max-width:760px;margin:0 auto;}
.faq-item{border-bottom:1px solid rgba(255,255,255,0.07);}
.faq-item:first-child{border-top:1px solid rgba(255,255,255,0.07);}
.faq-q{padding:22px 0;font-size:15px;font-weight:500;color:rgba(255,255,255,0.7);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:color 0.2s;line-height:1.4;}
.faq-q:hover{color:#fff;}
.faq-q::after{content:'+';font-size:22px;font-weight:300;color:rgba(81,255,182,0.45);flex-shrink:0;transition:transform 0.25s,color 0.2s;}
.faq-item.open .faq-q{color:#fff;}
.faq-item.open .faq-q::after{transform:rotate(45deg);color:#51FFB6;}
.faq-a{display:none;font-size:14px;line-height:1.75;color:rgba(255,255,255,0.42);padding-bottom:22px;}
.faq-item.open .faq-a{display:block;}

/* ══ FINAL CTA ══ */
.final-cta-section{background:#080c18;padding:40px 0;position:relative;overflow:hidden;}
.final-cta-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.022) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.final-cta-shell{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:60px 48px;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(81,255,182,0.1),0 40px 80px rgba(0,0,0,0.35);text-align:center;position:relative;overflow:hidden;}
.final-cta-shell::before{content:'';position:absolute;top:-80px;left:50%;transform:translateX(-50%);width:600px;height:260px;background:radial-gradient(ellipse,rgba(81,255,182,0.07) 0%,transparent 65%);pointer-events:none;}
.final-cta-headline{font-size:clamp(24px,3.5vw,40px);font-weight:700;color:#fff;line-height:1.2;margin:12px 0 14px;}
.final-cta-sub{font-size:14px;color:rgba(255,255,255,0.38);margin:0 auto 28px;max-width:440px;}
.final-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

/* ══ BLOG PREVIEW (legacy — kept for other pages) ══ */
.blog-grid-polaris{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:720px;margin:0 auto;padding:0 24px;}
.blog-card-polaris{background:#fff;border:1px solid #eee;border-radius:8px;padding:24px;transition:border-color 0.2s;}
.blog-card-polaris:hover{border-color:#57A0FF;}
.blog-card-polaris .tag{font-size:10px;letter-spacing:2px;color:#57A0FF;text-transform:uppercase;margin-bottom:8px;}
.blog-card-polaris h4{font-size:14px;font-weight:500;color:#333;margin-bottom:8px;line-height:1.3;}
.blog-card-polaris p{font-size:12px;color:#767676;line-height:1.5;margin-bottom:8px;}
.blog-card-polaris .read-link{font-size:11px;color:#57A0FF;letter-spacing:1px;text-transform:uppercase;}

/* ══ FAQ (legacy — kept for pricing.html) ══ */
.faq-list-polaris{max-width:640px;margin:0 auto;padding:0 24px;}
.faq-item-polaris{border-bottom:1px solid #eee;}
.faq-q-polaris{padding:20px 0;font-size:16px;font-weight:500;color:#333;cursor:pointer;display:flex;justify-content:space-between;align-items:center;}
.faq-q-polaris:hover{color:#57A0FF;}
.faq-q-polaris::after{content:'+';font-size:20px;font-weight:300;color:#999;}
.faq-item-polaris.open .faq-q-polaris::after{transform:rotate(45deg);}
.faq-a-polaris{display:none;font-size:14px;line-height:1.7;color:#666;padding-bottom:20px;}
.faq-item-polaris.open .faq-a-polaris{display:block;}

/* ══ FOOTER ══ */
.polaris-footer{background:#0a0a0a;color:rgba(255,255,255,0.65);padding:60px 0 30px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;max-width:960px;margin:0 auto;padding:0 24px;}
.footer-brand p{font-size:13px;line-height:1.7;color:rgba(255,255,255,0.65);margin-top:12px;}
.footer-col h4{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.6);margin-bottom:16px;}
.footer-col a{display:block;font-size:13px;color:rgba(255,255,255,0.65);margin-bottom:8px;text-decoration:none;transition:color 0.2s;}
.footer-col a:hover{color:#fff;}
.footer-bottom{display:flex;justify-content:space-between;max-width:960px;margin:32px auto 0;padding:20px 24px 0;border-top:1px solid rgba(255,255,255,0.08);font-size:12px;color:rgba(255,255,255,0.5);}

/* ══ TICKER ══ */
.polaris-ticker{background:#0a0a0a !important;height:48px !important;overflow:hidden !important;display:flex !important;align-items:center !important;padding:0 !important;}
.tick-inner{display:flex;gap:0;animation:ticker 28s linear infinite;white-space:nowrap;}
.tick-item{font-size:12px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.5);padding:0 32px;}
.tick-highlight{color:#51FFB6;}
.tick-sep{color:rgba(255,255,255,0.15);}
@keyframes ticker{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ══ FLOATING MOCKUP BTN ══ */
#floating-mockup-btn{position:fixed;left:0;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:left center;background:linear-gradient(50deg,#51FFB6,#57A0FF);color:#0a0a0a;font-weight:700;font-size:13px;letter-spacing:1px;padding:10px 18px;border-radius:0 0 8px 8px;z-index:990;cursor:pointer;white-space:nowrap;border:none;font-family:inherit;}
#floating-mockup-btn:hover{opacity:0.9;}

/* ══ STICKY BAR ══ */
#sticky-bar{position:fixed;top:0;left:0;right:0;z-index:998;background:rgba(10,10,10,0.97);backdrop-filter:blur(20px);border-bottom:1px solid rgba(81,255,182,0.2);padding:10px 20px;display:none;align-items:center;gap:12px;transform:translateY(-100%);transition:transform 0.3s ease;}
#sticky-bar.visible{display:flex;transform:translateY(0);}
.sticky-pkg{flex:1;min-width:120px;text-align:center;padding:8px 10px;border-radius:8px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);}
.sticky-pkg-name{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#999;}
.sticky-pkg-price{font-size:14px;font-weight:700;color:#fff;margin:2px 0;}
.sticky-btn{padding:6px 12px;border-radius:4px;font-size:11px;font-weight:700;cursor:pointer;font-family:inherit;letter-spacing:0.5px;}
.btn-outline{background:none;border:1px solid rgba(255,255,255,0.2);color:#fff;}
.btn-outline:hover{border-color:#51FFB6;color:#51FFB6;}
.btn-gold{background:linear-gradient(50deg,#51FFB6,#57A0FF);border:none;color:#0a0a0a;}
.featured-pkg{border-color:rgba(81,255,182,0.3) !important;}


/* ══ HERO PILL BUTTONS ══ */
.btn-hero-pill{background:#fff;border-radius:40px;padding:9px 18px;display:inline-flex;align-items:center;gap:10px;text-decoration:none;border:none;cursor:pointer;transition:opacity 0.2s;}
.btn-hero-pill:hover{opacity:0.9;text-decoration:none;}
.btn-hero-pill-icon{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;}
.btn-hero-pill-icon.blue{background:linear-gradient(135deg,#57A0FF,#3d7bcc);}
.btn-hero-pill-icon.mint{background:linear-gradient(135deg,#51FFB6,#3dbf87);}
.btn-hero-pill-label{text-align:left;}
.btn-hero-pill-label strong{display:block;font-size:11px;font-weight:700;color:#333;line-height:1.2;}
.btn-hero-pill-label span{display:block;font-size:13px;color:#333;line-height:1.2;}

/* ══ NAV OVERLAY — RIGHT PANEL ══ */
.overlay.overlay-hugeinc{
  width: 320px;
  height: 100%;
  top: 0;
  left: auto;
  right: 0;
  background: #0a0a0a;
  border-left: 1px solid rgba(81,255,182,0.15);
  -webkit-transition: opacity 0.35s, visibility 0s 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, visibility 0s 0.35s, transform 0.35s;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}
.overlay.overlay-hugeinc.open{
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
}
.overlay.overlay-hugeinc nav{
  top: 50%;
  height: auto;
  font-size: 28px;
  padding: 0 40px;
}
.overlay.overlay-hugeinc nav ul li{
  height: auto;
  min-height: 0;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,0.07);
}
.overlay.overlay-hugeinc nav ul li:last-child{
  border-bottom: none;
}
.overlay.overlay-hugeinc nav ul li a{
  color: #fff;
  font-size: 20px;
  font-weight: 400;
  letter-spacing: 0.03em;
}
.overlay.overlay-hugeinc nav ul li a:hover{
  color: #51FFB6;
}
.overlay .overlay-close{
  right: 24px;
  top: 24px;
}

/* ══ MODALS BASE ══ */
#checkout-modal{position:fixed;inset:0;z-index:99998;display:none;align-items:center;justify-content:center;background:rgba(2,6,16,0.82);backdrop-filter:blur(14px);padding:32px 24px;overflow-y:auto;}
#checkout-modal.open{display:flex;}
.checkout-card{width:min(760px,100%);max-height:min(900px,calc(100vh - 64px));display:flex;flex-direction:column;position:relative;color:#eef2ff;background:linear-gradient(180deg,rgba(15,23,42,0.98),rgba(8,15,32,0.99));border:1px solid rgba(87,160,255,0.18);border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,0.55),inset 0 1px 0 rgba(255,255,255,0.05);overflow:hidden;}
.checkout-header{padding:26px 30px 22px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(255,255,255,0.08);background:linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0));}
.checkout-header-copy{display:flex;flex-direction:column;gap:6px;min-width:0;}
.checkout-kicker{font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:#57A0FF;}
.checkout-header h3{font-size:1.4rem;font-weight:700;line-height:1.2;margin:0;color:#f8fbff;}
.checkout-header-meta{display:flex;align-items:center;gap:16px;flex-shrink:0;}
.co-steps{display:flex;gap:10px;align-items:center;}
.co-step-dot{width:30px;height:30px;border-radius:999px;border:2px solid rgba(255,255,255,0.16);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#94a3b8;background:rgba(255,255,255,0.02);transition:all 0.2s ease;}
.co-step-line{width:28px;height:2px;background:linear-gradient(90deg,rgba(255,255,255,0.08),rgba(255,255,255,0.18));}
.checkout-body{padding:28px 30px 30px;overflow-y:auto;}
.co-section{display:none;}
.co-section.active{display:block;}
.checkout-panel{display:flex;flex-direction:column;gap:18px;}
.checkout-step-caption{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:#57A0FF;margin-bottom:14px;}
.order-summary{background:linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0.025));border:1px solid rgba(255,255,255,0.08);border-radius:18px;padding:22px 22px 18px;margin-bottom:0;box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);}
.order-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,0.06);font-size:0.96rem;color:#d9e2f2;}
.order-row:last-child{border-bottom:none;}
.order-row.total{font-weight:800;font-size:1.08rem;color:#f8fbff;}
.order-row strong{font-size:1.05rem;color:#f8fbff;}
#co-pkg-was{color:#94a3b8;font-size:0.86rem;margin-right:8px;}
.price-accent{color:#51FFB6;}
.urgency-bar{background:linear-gradient(90deg,rgba(81,255,182,0.12),rgba(87,160,255,0.07));border:1px solid rgba(81,255,182,0.18);border-radius:14px;padding:13px 16px;display:flex;align-items:flex-start;gap:10px;font-size:0.85rem;line-height:1.45;color:#dffcf0;}
.urgency-icon{color:#51FFB6;flex-shrink:0;}
.cart-countdown{font-variant-numeric:tabular-nums;font-weight:800;color:#51FFB6;}
.checkout-form-block{display:flex;flex-direction:column;}
.co-label{display:block;font-size:0.78rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#9fb0c8;margin:0 0 8px;}
.co-label + .co-input{margin-bottom:16px;}
.co-input{width:100%;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:14px;padding:15px 16px;color:#f3f7ff;font-size:0.96rem;font-family:inherit;transition:border-color 0.2s ease,background 0.2s ease,box-shadow 0.2s ease;}
.co-input::placeholder{color:#7f91a9;}
.co-input:focus{outline:none;border-color:#57A0FF;background:rgba(255,255,255,0.07);box-shadow:0 0 0 3px rgba(87,160,255,0.12);}
.checkout-step-title{font-size:1.32rem;font-weight:700;line-height:1.2;margin:0;color:#f8fbff;}
.checkout-step-subtitle{margin:-8px 0 2px;color:#9fb0c8;font-size:0.95rem;line-height:1.55;}
.provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:0;}
.provider-btn{width:100%;min-height:76px;padding:16px 14px;border-radius:16px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);cursor:pointer;text-align:left;font-size:0.95rem;font-weight:700;line-height:1.3;color:#eef2ff;font-family:inherit;display:flex;flex-direction:column;justify-content:space-between;gap:8px;transition:border-color 0.2s ease,background 0.2s ease,color 0.2s ease,box-shadow 0.2s ease,transform 0.2s ease;}
.provider-btn small{display:block;color:#9fb0c8;font-weight:500;font-size:0.78rem;line-height:1.35;}
.provider-btn:hover,.provider-btn.active{border-color:#51FFB6;color:#ffffff;background:linear-gradient(180deg,rgba(81,255,182,0.14),rgba(87,160,255,0.08));box-shadow:0 10px 24px rgba(0,0,0,0.22),inset 0 1px 0 rgba(255,255,255,0.04);transform:translateY(-1px);}
.need-domain-links{display:none;background:rgba(87,160,255,0.08);border:1px solid rgba(87,160,255,0.2);border-radius:14px;padding:16px 18px;margin-bottom:0;font-size:0.87rem;line-height:1.55;}
.need-domain-links strong{display:block;margin-bottom:8px;color:#f8fbff;}
.need-domain-links a{display:block;margin-bottom:5px;color:#7bb5ff;text-decoration:none;}
.need-domain-links a:last-child{margin-bottom:0;}
.domain-security{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:14px;font-size:0.84rem;line-height:1.5;color:#a9b7ca;}
.checkout-actions{display:flex;gap:12px;align-items:center;}
.checkout-actions-single{margin-top:4px;}
.checkout-cta,.checkout-primary-btn{width:100%;}
.checkout-secondary-btn{padding:14px 18px;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.14);border-radius:14px;color:#eef2ff;font-weight:600;font-size:0.93rem;cursor:pointer;font-family:inherit;transition:border-color 0.2s ease,color 0.2s ease,background 0.2s ease;}
.checkout-secondary-btn:hover{border-color:#57A0FF;color:#57A0FF;background:rgba(87,160,255,0.05);}
.checkout-payment-summary{margin-bottom:0;}
.payment-badges{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0;}
.pay-badge{display:flex;align-items:center;gap:6px;font-size:0.76rem;color:#b5c1d1;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:999px;padding:7px 12px;}
.checkout-card-element{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:14px;padding:16px;margin-bottom:10px;transition:border-color 0.2s ease,box-shadow 0.2s ease;}
.checkout-terms{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:14px;cursor:pointer;}
.checkout-terms input{margin-top:3px;accent-color:#51FFB6;flex-shrink:0;}
.checkout-terms span{font-size:12px;color:#b4c0d0;line-height:1.6;}
.checkout-terms a,.co-note a{color:#51FFB6;}
.co-note{font-size:0.76rem;color:#94a3b8;text-align:center;margin:2px 0 0;line-height:1.5;}

/* Exit popup keeps its own padding (uses generic .modal-card without sections) */
#exit-popup .modal-card{padding:36px 32px;text-align:center;}

/* ══ MOCKUP MODAL REBRAND ══ */
.mockup-modal-header{background:linear-gradient(50deg,#51FFB6,#57A0FF);padding:28px 32px 22px;text-align:center;}
.mockup-modal-header img{width:120px;height:auto;margin-bottom:10px;}
.mockup-modal-header h2{font-size:20px;font-weight:700;color:#0a0a0a;margin:0 0 4px;}
.mockup-modal-header p{font-size:13px;color:rgba(0,0,0,0.6);margin:0;}
.mockup-modal-body{padding:24px 32px 30px;}
.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:20px;cursor:pointer;z-index:2;}
#checkout-modal .modal-close{position:static;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:999px;color:#94a3b8;font-size:1.35rem;cursor:pointer;line-height:1;transition:color 0.2s ease,border-color 0.2s ease,background 0.2s ease;flex-shrink:0;z-index:auto;}
#checkout-modal .modal-close:hover{color:#eef2ff;border-color:rgba(87,160,255,0.35);background:rgba(87,160,255,0.08);}
.modal-input{width:100%;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:12px 16px;color:#eef2ff;font-size:14px;font-family:inherit;margin-bottom:12px;}
.modal-input:focus{outline:none;border-color:#57A0FF;}
.modal-input::placeholder{color:#94a3b8;}
.modal-select{width:100%;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:12px 16px;color:#eef2ff;font-size:14px;font-family:inherit;appearance:none;cursor:pointer;margin-bottom:12px;}
.modal-select option{background:#0d1428;color:#eef2ff;}
@media(max-width:768px){
  #checkout-modal{padding:20px 16px;}
  .checkout-card{max-height:calc(100vh - 40px);border-radius:20px;}
  .checkout-header{padding:22px 22px 18px;flex-direction:column;align-items:flex-start;}
  .checkout-header-meta{width:100%;justify-content:space-between;}
  .checkout-body{padding:22px;}
}
@media(max-width:560px){
  #checkout-modal{padding:12px;}
  .checkout-card{max-height:calc(100vh - 24px);border-radius:18px;}
  .checkout-header{padding:18px 18px 16px;gap:14px;}
  .checkout-header h3{font-size:1.18rem;}
  .checkout-header-meta{align-items:center;gap:12px;}
  .co-steps{gap:8px;}
  .co-step-line{width:18px;}
  .checkout-body{padding:18px;}
  .provider-grid{grid-template-columns:1fr;}
  .checkout-actions{flex-direction:column;}
  .checkout-actions > *{width:100%;}
}

/* ══ PAGE HERO (sub-pages) ══ */
.page-hero{background:linear-gradient(50deg,#51FFB6,#57A0FF);padding:120px 24px 80px;text-align:center;}
.page-hero-tag{font-size:11px;letter-spacing:4px;color:rgba(0,0,0,0.45);text-transform:uppercase;margin-bottom:16px;}
.page-hero-title{font-size:clamp(2rem,5vw,3rem);font-weight:100;color:#0a0a0a;letter-spacing:6px;text-transform:none !important;margin:0 0 16px;}
.page-hero-title strong{font-weight:600;}
.page-hero-sub{font-size:16px;color:rgba(0,0,0,0.6);max-width:520px;margin:0 auto;line-height:1.7;}

/* ══ ABOUT PAGE ══ */
.about-hero{background:linear-gradient(50deg,#51FFB6,#57A0FF);padding:120px 0 80px;text-align:center;}
.about-story{max-width:680px;margin:0 auto;padding:60px 24px;}
.about-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:680px;margin:0 auto;padding:0 24px;}
.about-photo{width:100%;height:300px;object-fit:cover;border-radius:8px;}

/* ══ RESPONSIVE ══ */
@media(max-width:768px){
  .phone-frame{width:200px;height:400px;}
  .phone-mockup{margin-top:40px;margin-bottom:30px;}
  .trust-strip{margin-top:20px;padding:16px 10px 0;}
  .trust-item{font-size:10px;letter-spacing:1px;}
  .trust-divider{margin:0 8px;}
  .portfolio-grid{grid-template-columns:1fr;}
  .contrast-row{flex-direction:column;gap:6px;}
  .contrast-bad,.contrast-good{border-radius:8px !important;}
  .contrast-good{border-left:3px solid rgba(81,255,182,0.55);border-top:none;}
  .blog-grid-polaris{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px;}
  .footer-bottom{flex-direction:column;gap:8px;text-align:center;}
  /* proof block */
  .proof-inner{grid-template-columns:1fr;}
  .proof-shell{padding:32px 24px;}
  .proof-stats{grid-template-columns:1fr 1fr;}
  /* process */
  .process-shell{padding:32px 24px;}
  .process-steps{grid-template-columns:1fr;}
  /* pricing */
  .pkg-shell{padding:32px 20px;}
  .pkg-grid{grid-template-columns:1fr;}
  /* testimonials */
  .testi-shell{padding:32px 20px;}
  .testi-grid{grid-template-columns:1fr;}
  /* insights */
  .insights-shell{padding:32px 20px;}
  .insights-layout{grid-template-columns:1fr;}
  /* faq / final cta */
  .faq-shell{padding:32px 20px;}
  .final-cta-shell{padding:40px 24px;}
}
@media(max-width:480px){
  .footer-grid{grid-template-columns:1fr;}
}

/* ══════════════════════════════════════════
   LUCY TEMPLATE CONFLICT OVERRIDES
   These rules fix specific Lucy CSS that
   breaks our custom components.
══════════════════════════════════════════ */

/* Override Lucy: #logo { font-size: 80px; letter-spacing: 10px; float: left; } */
#logo{
  font-size:0 !important;
  letter-spacing:0 !important;
  float:none !important;
  display:flex !important;
  align-items:center !important;
  padding:0 !important;
  line-height:1 !important;
  margin:20px 0 20px -8px !important;
}
.fixed #logo{font-size:0 !important;}

/* Nav logo image sizing */
.nav-logo-img{
  width:240px !important;
  height:auto !important;
  display:block !important;
}

/* Override Lucy: .starting img { margin-top: 110px }
   Our phone mockup is a div so this only affects the
   logo img — but belt-and-suspenders override here */
.header .starting img{margin-top:0 !important;}

/* Override Lucy @media (max-width: 966px) { .header img { display: none } }
   This would hide our nav logo img and any images inside the hero.
   We must explicitly show what we need. */
@media(max-width:966px){
  .nav-logo-img,
  .header .phone-mockup,
  .header .phone-mockup *,
  .header .phone-frame,
  .header .phone-screen{
    display:block !important;
    visibility:visible !important;
  }
}

/* Align nav-button vertically in the top bar */
.nav-button{margin:18px 0 !important;}

/* Ensure the .col-md-6 columns in .starting sit side by side on desktop */
@media(min-width:968px){
  .header .starting .row{display:flex;align-items:center;}
  .header .starting .col-md-6{width:50% !important;float:none !important;}
  .banner-text{margin-top:0 !important;}
  .phone-mockup{margin-top:0 !important;}
}

/* ── DESKTOP NAVIGATION MENU ── */
.polaris-nav-menu {
  display: none !important;
}

.polaris-nav-mobile {
  text-align: right;
}

@media (min-width: 768px) {
  .polaris-nav-menu {
    display: block !important;
  }

  .polaris-nav-list {
    display: flex;
    align-items: center;
    gap: 32px;
    height: 40px;
  }

  .polaris-nav-link {
    color: #0a0a0a;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
    font-family: Raleway, sans-serif;
    letter-spacing: 0;
    transition: color 300ms cubic-bezier(0.16, 1, 0.3, 1);
    padding: 2px 0;
  }

  .polaris-nav-link:hover {
    color: #51FFB6;
  }

  .polaris-nav-mobile {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .polaris-nav-menu {
    display: none !important;
  }

  .polaris-nav-mobile {
    display: block !important;
    text-align: right;
  }
}

/* ── PRODUCTS GRID — REFINED LUXURY CARDS ── */
.products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  max-width: 980px;
  margin: 48px auto 0;
  perspective: 1600px;
  text-align: left;
}
.product-card {
  position: relative;
  background: rgba(4, 7, 14, 0.68);
  backdrop-filter: blur(32px);
  -webkit-backdrop-filter: blur(32px);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 10px;
  padding: 30px 24px 24px;
  overflow: hidden;
  cursor: default;
  transition: transform 0.5s cubic-bezier(0.16,1,0.3,1),
              box-shadow 0.5s ease,
              border-color 0.5s ease;
  transform-style: preserve-3d;
  will-change: transform;
  min-height: 300px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.05);
}
/* ── Grid texture ── */
.card-texture {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(87,160,255,0.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(87,160,255,0.028) 1px, transparent 1px);
  background-size: 24px 24px;
  pointer-events: none;
  z-index: 0;
  border-radius: inherit;
}
/* ── Ambient glow orb ── */
.card-glow {
  position: absolute;
  width: 180px; height: 180px;
  border-radius: 50%;
  filter: blur(60px);
  top: -50px; right: -40px;
  pointer-events: none;
  z-index: 0;
  transition: left 0.08s linear, top 0.08s linear;
}
/* ── Ambient layer ── */
.card-ambient {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
  border-radius: inherit;
}
/* ── Polaris: corner marks ── */
.corner-mark {
  position: absolute;
  width: 10px; height: 10px;
  pointer-events: none;
}
.cm-tl {
  top: 10px; left: 10px;
  border-top: 1px solid rgba(87,160,255,0.3);
  border-left: 1px solid rgba(87,160,255,0.3);
}
.cm-br {
  bottom: 10px; right: 10px;
  border-bottom: 1px solid rgba(87,160,255,0.3);
  border-right: 1px solid rgba(87,160,255,0.3);
}
/* ── Polaris: scan line ── */
.scan-line {
  position: absolute;
  left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(87,160,255,0.3) 50%, transparent 100%);
  animation: scanMove 6s linear infinite;
  top: 0;
}
@keyframes scanMove {
  0%   { top: -2px; opacity: 0; }
  8%   { opacity: 1; }
  92%  { opacity: 0.5; }
  100% { top: 100%; opacity: 0; }
}
/* ── Kael: chart line ── */
.chart-line {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 70px; width: 100%;
  opacity: 0.18;
}
.chart-path {
  fill: none;
  stroke: #51FFB6;
  stroke-width: 1.2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 440;
  stroke-dashoffset: 440;
  animation: drawChart 2.8s cubic-bezier(0.4,0,0.2,1) forwards 0.4s,
             chartPulse 5s ease-in-out infinite 3.5s;
}
@keyframes drawChart { to { stroke-dashoffset: 0; } }
@keyframes chartPulse {
  0%,100% { opacity: 0.18; }
  50%     { opacity: 0.38; }
}
/* ── Kael: signal pulse dot ── */
.signal-pulse {
  position: absolute;
  top: 14px; right: 14px;
  width: 5px; height: 5px;
  border-radius: 50%;
  background: #51FFB6;
  animation: signalPulse 2s ease-in-out infinite;
}
@keyframes signalPulse {
  0%,100% { opacity: 0.4; box-shadow: 0 0 0 0 rgba(81,255,182,0.5); }
  50%     { opacity: 1;   box-shadow: 0 0 0 8px rgba(81,255,182,0); }
}
/* ── Napoleon: flow lines ── */
.flow-lines {
  position: absolute;
  inset: 0; width: 100%; height: 100%;
  opacity: 0.12;
}
.flow-path {
  fill: none;
  stroke: #57A0FF;
  stroke-width: 0.7;
  stroke-dasharray: 320;
  stroke-dashoffset: 320;
  animation: drawFlow 5s ease-in-out infinite;
}
.fp2 { animation-delay: 2s; stroke: #51FFB6; }
@keyframes drawFlow {
  0%   { stroke-dashoffset: 320; opacity: 0; }
  15%  { opacity: 1; }
  75%  { opacity: 0.7; }
  100% { stroke-dashoffset: 0; opacity: 0; }
}
/* ── Napoleon: pulse dots ── */
.pulse-dot {
  position: absolute;
  width: 4px; height: 4px;
  border-radius: 50%;
  background: #51FFB6;
  animation: pulseDot 3s ease-in-out infinite;
}
.pd1 { top: 25%; left: 10%; animation-delay: 0s; }
.pd2 { top: 60%; right: 15%; animation-delay: 1.1s; }
.pd3 { bottom: 30%; left: 42%; animation-delay: 2.2s; }
@keyframes pulseDot {
  0%,100% { transform:scale(1);   opacity:0.25; box-shadow: 0 0 0 0   rgba(81,255,182,0.4); }
  50%      { transform:scale(1.6); opacity:0.85; box-shadow: 0 0 0 8px rgba(81,255,182,0); }
}
/* ── Card inner ── */
.card-inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 11px;
  height: 100%;
}
.card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 2px;
}
.card-label {
  font-size: 8px;
  letter-spacing: 4px;
  color: #57A0FF;
  text-transform: uppercase;
  font-weight: 700;
  font-family: 'Raleway', sans-serif;
}
.card-status {
  font-size: 8px;
  letter-spacing: 2px;
  font-weight: 600;
  text-transform: uppercase;
  font-family: 'Raleway', sans-serif;
  opacity: 0.75;
}
.status-live     { color: #51FFB6; }
.status-building { color: rgba(255,200,100,0.9); }
/* ── Card name ── */
.card-name {
  font-size: 42px;
  font-weight: 800;
  color: #ffffff;
  line-height: 0.95;
  font-family: 'Raleway', sans-serif;
  letter-spacing: -2px;
  transition: letter-spacing 0.4s cubic-bezier(0.16,1,0.3,1);
}
/* ── Card value ── */
.card-value {
  font-size: 12.5px;
  color: rgba(255,255,255,0.48);
  line-height: 1.6;
  font-family: 'Raleway', sans-serif;
  font-weight: 400;
}
/* ── Chips ── */
.card-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 3px 0;
}
.chip {
  font-size: 8px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.35);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 100px;
  padding: 3px 10px;
  font-family: 'Raleway', sans-serif;
  font-weight: 600;
  transition: border-color 0.35s ease, color 0.35s ease, background 0.35s ease;
}
/* ── CTA pill button ── */
.card-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px 9px 14px;
  border: 1px solid rgba(81,255,182,0.2);
  border-radius: 100px;
  background: rgba(81,255,182,0.04);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: rgba(81,255,182,0.85);
  text-decoration: none;
  font-family: 'Raleway', sans-serif;
  margin-top: 6px;
  width: fit-content;
  transition: all 0.35s cubic-bezier(0.16,1,0.3,1);
}
.cta-arrow {
  display: inline-block;
  font-size: 11px;
  transition: transform 0.35s cubic-bezier(0.16,1,0.3,1);
}
.card-cta:hover {
  border-color: rgba(81,255,182,0.5);
  background: rgba(81,255,182,0.09);
  color: #fff;
  box-shadow: 0 0 24px rgba(81,255,182,0.08);
  text-decoration: none;
}
.card-cta:hover .cta-arrow { transform: translateX(5px); }
/* ── Footer micro text ── */
.card-footer-text {
  font-size: 8px;
  letter-spacing: 2.5px;
  color: rgba(255,255,255,0.18);
  text-transform: uppercase;
  font-family: 'Raleway', sans-serif;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.04);
}
/* ── Hover states ── */
.product-card:hover {
  border-color: rgba(87,160,255,0.2);
  box-shadow:
    0 28px 70px rgba(0,0,0,0.6),
    0 0 50px rgba(87,160,255,0.05),
    inset 0 1px 0 rgba(255,255,255,0.08);
}
.product-card[data-product="kael"]:hover {
  border-color: rgba(81,255,182,0.18);
  box-shadow:
    0 28px 70px rgba(0,0,0,0.6),
    0 0 50px rgba(81,255,182,0.04),
    inset 0 1px 0 rgba(255,255,255,0.08);
}
.product-card:hover .card-name {
  letter-spacing: -1.5px;
}
.product-card:hover .chip {
  border-color: rgba(255,255,255,0.14);
  color: rgba(255,255,255,0.6);
}
/* ── Divider + eta ── */
.trading-divider {
  width: 40px; height: 1px;
  background: rgba(255,255,255,0.1);
  margin: 56px auto 40px;
}
.trading-eta {
  font-size: 10px;
  letter-spacing: 3px;
  color: rgba(81,255,182,0.75);
  text-transform: uppercase;
  margin: -8px 0 20px;
  font-family: 'Raleway', sans-serif;
}
/* ── Mobile ── */
@media (max-width: 768px) {
  .products-grid  { grid-template-columns: 1fr; gap: 10px; }
  .product-card   { padding: 24px 18px; min-height: auto; }
  .card-name      { font-size: 34px; }
  .trading-divider{ margin: 40px auto 32px; }
}

/* ─────────────────────────────────────────────────────────────────────
   HERO — SINGLE VIDEO WITH TIMESTAMP CTAs
   ───────────────────────────────────────────────────────────────────── */

.polaris-hero__btn {
  padding: 15px 26px;
  font-size: 13.5px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  transition: all 300ms cubic-bezier(0.16, 1, 0.3, 1);
  text-decoration: none;
  display: inline-block;
  border-radius: 9px;
  font-family: Raleway, sans-serif;
  letter-spacing: 0.08em;
}

.polaris-hero__btn--primary {
  background: linear-gradient(50deg, #51FFB6, #57A0FF);
  color: #000;
}

.polaris-hero__btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(81, 255, 182, 0.3);
}

.polaris-hero__btn--secondary {
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.polaris-hero__btn--secondary:hover {
  background: rgba(255, 255, 255, 0.25);
  border-color: rgba(255, 255, 255, 0.5);
}

/* Watch modal */
.polaris-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.polaris-modal[aria-hidden="true"] {
  display: none !important;
  pointer-events: none;
}

.polaris-modal__backdrop {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.8);
  cursor: pointer;
}

.polaris-modal__content {
  position: relative;
  z-index: 10001;
  width: 90%;
  max-width: 900px;
  aspect-ratio: 16 / 9;
  background: #000;
  border-radius: 8px;
  overflow: hidden;
}

.polaris-modal__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.polaris-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 10002;
  width: 40px;
  height: 40px;
  background: rgba(0, 0, 0, 0.6);
  border: none;
  color: #fff;
  font-size: 28px;
  font-weight: 300;
  cursor: pointer;
  border-radius: 4px;
  transition: all 300ms ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.polaris-modal__close:hover {
  background: rgba(0, 0, 0, 0.9);
}

/* ─────────────────────────────────────────────────────────────────────
   MOBILE RESPONSIVE — Hero Carousel
   ───────────────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  h1, h2 {
    font-size: 22px !important;
  }

  .header .banner-text h2 {
    font-size: 20px !important;
  }

  .polaris-hero {
    height: auto;
    overflow: visible;
  }

  .polaris-hero__media {
    width: 100%;
    height: auto;
  }

  .polaris-hero__video {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
    background: #000;
  }

  .polaris-hero__overlay {
    bottom: 24px;
  }

  .polaris-hero__btn {
    padding: 10px 24px;
    font-size: 14px;
  }

  .polaris-modal__content {
    width: 95%;
    aspect-ratio: auto;
    max-height: 70vh;
  }

  .polaris-modal__close {
    width: 32px;
    height: 32px;
    font-size: 24px;
    top: 8px;
    right: 8px;
  }
}

/* POLARIS NAV + HERO OVERRIDES */
.polaris-nav-only {
  height: auto !important;
  background: transparent !important;
  padding: 0 !important;
}

.polaris-nav-only .top-bar {
  background: #ffffff !important;
  border-bottom: 1px solid rgba(7, 16, 24, 0.08);
  padding: 0 !important;
}

.polaris-nav-shell {
  width: min(100%, 1360px) !important;
}

.polaris-nav-only .navigation {
  width: 100%;
}

.polaris-nav-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 64px;
}

.polaris-nav-brand {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.polaris-nav-only #logo,
.polaris-nav-only #logo img {
  display: block;
}

.polaris-nav-only .nav-logo-img {
  width: auto !important;
  height: 34px !important;
  max-width: none;
}

.polaris-desktop-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 22px;
  flex: 1 1 auto;
}

.polaris-desktop-nav a {
  color: #0b1118;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  line-height: 1;
}

.polaris-nav-only .nav-button {
  display: none;
  margin: 0 !important;
}

.polaris-nav-only .nav-button button {
  background: transparent;
  border: none;
  color: #0b1118;
  font-size: 22px;
}

.polaris-hero {
  position: relative;
  width: 100%;
  height: 850px;
  overflow: hidden;
  background: linear-gradient(180deg, #04070e 0%, #02040a 100%);
}

.polaris-hero__media,
.polaris-hero__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.polaris-hero__media {
  position: relative;
}

.polaris-hero__media::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(9, 16, 26, 0.06) 0%, rgba(9, 16, 26, 0.10) 25%, rgba(9, 16, 26, 0.14) 75%, rgba(9, 16, 26, 0.18) 100%);
  pointer-events: none;
}

.polaris-hero__video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #000;
  opacity: 1 !important;
}

.polaris-hero__overlay {
  position: absolute;
  left: 50%;
  bottom: 38px;
  z-index: 3;
  width: min(100% - 32px, 560px);
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  pointer-events: none;
}

.polaris-hero__cta-stack {
  position: relative;
  width: 100%;
  min-height: 42px;
}

.polaris-hero__cta-group {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex-wrap: wrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 240ms ease;
}

.polaris-hero__cta-group--active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.polaris-hero__btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 18px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(8, 14, 24, 0.26);
  color: #f7fbff;
  cursor: pointer;
  font-family: Raleway, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 8px 20px rgba(4, 7, 14, 0.12);
  transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.polaris-hero__btn--primary {
  background: rgba(90, 194, 255, 0.9);
  border-color: rgba(123, 211, 255, 0.7);
  color: #08131c;
}

.polaris-hero__btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(4, 7, 14, 0.16);
}

.polaris-hero__btn--primary:hover {
  background: rgba(105, 201, 255, 0.94);
  border-color: rgba(171, 231, 255, 0.78);
}

.polaris-hero__btn--secondary {
  background: rgba(255, 255, 255, 0.08);
  color: #f6f9ff;
}

.polaris-hero__btn--secondary:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.26);
}

.polaris-hero__btn:focus-visible {
  outline: 2px solid rgba(111, 203, 255, 0.85);
  outline-offset: 2px;
}

.polaris-modal[aria-hidden="true"] {
  display: none !important;
}

.polaris-modal[aria-hidden="false"] {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  padding: 20px;
}

.polaris-modal__backdrop {
  position: absolute;
  inset: 0;
  border: none;
  background: rgba(2, 4, 10, 0.84);
  cursor: pointer;
}

.polaris-modal__content {
  position: relative;
  z-index: 1;
  width: min(920px, calc(100vw - 40px));
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  background: #000;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
}

.polaris-modal__video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #000;
}

.polaris-modal__close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  background: rgba(5, 10, 20, 0.72);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

@media (max-width: 966px) {
  .polaris-desktop-nav {
    display: none;
  }

  .polaris-nav-only .nav-button {
    display: block;
  }

  .polaris-nav-bar {
    min-height: 68px;
  }
}

@media (max-width: 768px) {
  .polaris-hero {
    height: auto;
    aspect-ratio: 2 / 3;
  }

  .polaris-hero__overlay {
    bottom: 42px;
    width: min(100% - 24px, 320px);
  }

  .polaris-hero__cta-group {
    gap: 6px;
  }

  .polaris-hero__btn {
    min-height: 42px;
    padding: 10px 16px;
    font-size: 12px;
    letter-spacing: 0.04em;
  }

  .polaris-modal[aria-hidden="false"] {
    padding: 14px;
  }

  .polaris-modal__content {
    width: calc(100vw - 28px);
  }
}

/* POLARIS HERO FIXUPS */
#trading-reveal.polaris-hero {
  min-height: 0 !important;
  height: 900px !important;
  display: block !important;
  align-items: normal !important;
  justify-content: normal !important;
}

@media (max-width: 768px) {
  #trading-reveal.polaris-hero {
    height: auto !important;
    aspect-ratio: 2 / 3 !important;
  }
}

/* Hero Skip Button Controls */
.polaris-hero__skip-controls {
  position: absolute;
  bottom: 40px;
  right: 40px;
  z-index: 20;
  display: flex;
  gap: 8px;
}

.polaris-hero__skip-btn {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: rgba(26, 35, 45, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 160ms ease;
  backdrop-filter: blur(12px);
}

.polaris-hero__skip-btn:hover {
  background-color: rgba(26, 35, 45, 0.8);
  border-color: rgba(255, 255, 255, 0.25);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.polaris-hero__skip-btn:active {
  transform: translateY(0);
}

@media (max-width: 768px) {
  .polaris-hero__skip-controls {
    bottom: 24px;
    right: 24px;
  }

  .polaris-hero__skip-btn {
    width: 40px;
    height: 40px;
    font-size: 16px;
  }
}

/* PROBLEM SOLVER SECTION */
#problem-solver {
  padding: 80px 20px;
  background: #0a0a0a;
}

#problem-solver h2 {
  text-align: center;
  font-family: 'EB Garamond', serif;
  font-size: 48px;
  font-weight: 400;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 16px 0;
}

#problem-solver p {
  text-align: center;
  font-size: 16px;
  color: #a8a8a8;
  margin: 0 0 48px 0;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.6;
}

.problem-container {
  max-width: 1200px;
  margin: 0 auto;
}

.problem-input-wrap {
  margin-bottom: 60px;
}

#problem-input {
  width: 100%;
  padding: 16px 20px;
  font-size: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.02);
  color: #fff;
  transition: all 200ms ease;
}

#problem-input::placeholder {
  color: rgba(255, 255, 255, 0.4);
}

#problem-input:focus {
  outline: none;
  border-color: #51FFB6;
  background: rgba(81, 255, 182, 0.05);
  box-shadow: 0 0 0 3px rgba(81, 255, 182, 0.1);
}

.problem-visualization {
  display: flex;
  gap: 40px;
  align-items: stretch;
  min-height: 400px;
}

.problem-split {
  display: flex;
  gap: 40px;
  width: 100%;
}

.problem-before-col,
.problem-after-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.02);
}

.problem-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #51FFB6;
}

.problem-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.problem-content h3 {
  font-family: 'EB Garamond', serif;
  font-size: 24px;
  font-weight: 400;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 12px 0;
  line-height: 1.3;
}

.problem-content p {
  font-size: 14px;
  color: #d0d0d0;
  margin: 0 0 16px 0;
  line-height: 1.6;
  text-align: left;
}

.problem-stat {
  font-size: 14px;
  font-weight: 600;
  color: #51FFB6;
  margin-top: 12px;
}

.problem-icon {
  font-size: 36px;
  margin-bottom: 8px;
}

.problem-code {
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(81, 255, 182, 0.2);
  border-radius: 4px;
  padding: 12px;
  color: #51FFB6;
  line-height: 1.5;
  overflow-x: auto;
  margin-top: 8px;
}

.problem-divider {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #51FFB6;
}

/* ANIMATIONS - GPU accelerated */
.problem-before-hidden {
  opacity: 0;
  transition: opacity 600ms cubic-bezier(0.16, 1, 0.3, 1);
}

.problem-after-visible {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

#problem-after {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 600ms cubic-bezier(0.16, 1, 0.3, 1), transform 600ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* ACCESSIBILITY - respect motion preferences */
@media (prefers-reduced-motion: reduce) {
  .problem-before-hidden,
  .problem-after-visible,
  #problem-input,
  .problem-before-col,
  .problem-after-col {
    transition: none !important;
  }
}

/* RESPONSIVE - TABLET */
@media (max-width: 1024px) {
  #problem-solver {
    padding: 60px 20px;
  }

  #problem-solver h2 {
    font-size: 40px;
  }

  .problem-visualization {
    gap: 24px;
    min-height: auto;
  }

  .problem-split {
    gap: 24px;
  }

  .problem-before-col,
  .problem-after-col {
    padding: 20px;
  }

  .problem-content h3 {
    font-size: 20px;
  }
}

/* RESPONSIVE - MOBILE */
@media (max-width: 768px) {
  #problem-solver {
    padding: 48px 20px;
  }

  #problem-solver h2 {
    font-size: 32px;
    margin-bottom: 12px;
  }

  #problem-solver p {
    font-size: 14px;
    margin-bottom: 32px;
  }

  .problem-input-wrap {
    margin-bottom: 40px;
  }

  #problem-input {
    padding: 14px 16px;
    font-size: 16px;
  }

  .problem-visualization {
    flex-direction: column;
    gap: 20px;
    min-height: auto;
  }

  .problem-split {
    flex-direction: column;
    gap: 20px;
  }

  .problem-before-col,
  .problem-after-col {
    padding: 16px;
  }

  .problem-label {
    font-size: 11px;
  }

  .problem-content h3 {
    font-size: 18px;
  }

  .problem-content p {
    font-size: 13px;
  }

  .problem-code {
    font-size: 12px;
    padding: 10px;
  }

  .problem-divider {
    display: none;
  }
}

/* ══════════════════════════════════════════════════════
   HOW IT WORKS SECTION
══════════════════════════════════════════════════════ */

#how-it-works {
  padding: 100px 20px;
  background: #0a0a0a;
}

.hiw-container {
  max-width: 1200px;
  margin: 0 auto;
}

.hiw-tag {
  font-size: 10px;
  letter-spacing: 4px;
  color: #57A0FF;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.hiw-title {
  font-family: 'EB Garamond', serif;
  font-size: 48px;
  font-weight: 400;
  color: #fff;
  text-align: center;
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin: 0 0 16px;
}

.hiw-sub {
  font-size: 16px;
  color: #a8a8a8;
  text-align: center;
  line-height: 1.6;
  margin: 0 auto 72px;
  max-width: 480px;
}

.hiw-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
}

.hiw-step {
  padding: 0 48px 0 0;
}

.hiw-step:first-child {
  padding-left: 0;
}

.hiw-step:last-child {
  padding-right: 0;
  border-right: none;
}

.hiw-step + .hiw-step {
  padding-left: 48px;
  border-left: 1px solid rgba(255, 255, 255, 0.08);
}

.hiw-step-number {
  font-family: 'EB Garamond', serif;
  font-size: 80px;
  font-weight: 400;
  line-height: 1;
  margin-bottom: 20px;
  background: linear-gradient(50deg, #51FFB6, #57A0FF);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: block;
}

.hiw-step-timeline {
  font-size: 10px;
  letter-spacing: 3px;
  color: #51FFB6;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.hiw-step-title {
  font-family: 'Raleway', sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  margin: 0 0 14px;
  line-height: 1.3;
}

.hiw-step-desc {
  font-size: 15px;
  color: #a8a8a8;
  line-height: 1.7;
  margin: 0;
}

/* HOW IT WORKS — TABLET */
@media (min-width: 768px) and (max-width: 1023px) {
  #how-it-works {
    padding: 72px 20px;
  }

  .hiw-title {
    font-size: 38px;
  }

  .hiw-step {
    padding: 0 28px 0 0;
  }

  .hiw-step + .hiw-step {
    padding-left: 28px;
  }

  .hiw-step-number {
    font-size: 60px;
  }

  .hiw-step-title {
    font-size: 18px;
  }

  .hiw-step-desc {
    font-size: 14px;
  }
}

/* HOW IT WORKS — MOBILE */
@media (max-width: 767px) {
  #how-it-works {
    padding: 60px 20px;
  }

  .hiw-title {
    font-size: 32px;
  }

  .hiw-sub {
    font-size: 14px;
    margin-bottom: 48px;
  }

  .hiw-steps {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .hiw-step {
    padding: 0 0 40px;
    border-left: none !important;
  }

  .hiw-step + .hiw-step {
    padding-left: 0;
    border-left: none;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding-top: 40px;
  }

  .hiw-step-number {
    font-size: 56px;
    margin-bottom: 14px;
  }

  .hiw-step-title {
    font-size: 18px;
  }

  .hiw-step-desc {
    font-size: 14px;
  }
}

/* ══════════════════════════════════════════════════════
   MOBILE RESPONSIVE FIXES — Full Audit
   Root causes fixed: sticky bar overflow, hero clipping,
   pricing card scroll, section containment, heading wrap
   Breakpoints: 375px, 640px, 768px, 1440px
══════════════════════════════════════════════════════ */

/* ── 1. Page-level overflow lock ── */
html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

/* ── 2. All sections: prevent bleed-out overflow ── */
section, .polaris-section {
  max-width: 100%;
  overflow-x: hidden;
}

/* ── 3. Force headings to wrap — no clipping on small screens ── */
h1, h2, h3, h4 {
  word-break: break-word;
  overflow-wrap: break-word;
}

/* ── 4. Hero video: always cover, never letterbox ── */
.polaris-hero__video {
  object-fit: cover !important;
  object-position: center center !important;
}

/* ── 5. Hero: 16:9 container matches video exactly — zero cropping ── */
@media (max-width: 767px) {
  /* Hero height = 375 × (9/16) = 211px — video fills it perfectly */
  #trading-reveal.polaris-hero {
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden !important;
  }

  /* Cover fills the exact 16:9 box — no letterbox, no side crop */
  .polaris-hero__video {
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* Overlay: sits at the lower edge of the video */
  .polaris-hero__overlay {
    bottom: 10px !important;
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
  }

  /* CTA stack */
  .polaris-hero__cta-stack {
    min-height: 44px !important;
  }

  /* Buttons: compact but tappable */
  .polaris-hero__btn {
    min-height: 38px !important;
    min-width: 80px !important;
    padding: 8px 16px !important;
    font-size: 12px !important;
  }

  /* Skip button: tucked into corner */
  .polaris-hero__skip-controls {
    bottom: 10px !important;
    right: 12px !important;
  }
}

/* ── 6. Sticky pricing bar: fix overflow on phones ── */
@media (max-width: 767px) {
  #sticky-bar {
    padding: 8px 12px !important;
    gap: 6px !important;
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  #sticky-bar::-webkit-scrollbar { display: none; }

  .sticky-pkg {
    min-width: 80px !important;
    flex: 0 0 auto !important;
    padding: 6px 8px !important;
  }

  .sticky-pkg-name { font-size: 9px !important; }
  .sticky-pkg-price { font-size: 12px !important; }

  .sticky-btn {
    padding: 5px 8px !important;
    font-size: 9px !important;
    white-space: nowrap;
  }
}

/* ── 7. Pricing cards: single column on phones ── */
@media (max-width: 639px) {

  .pkg-shell {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .pkg-header {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .pkg-footnote {
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-top: 20px !important;
  }

  .pkg-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px;
    padding: 0 20px 24px;
  }
}

/* ── 8. Pricing: 2-column on tablet ── */
@media (min-width: 640px) and (max-width: 1023px) {
  .pkg-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* POLARIS AUTHORITATIVE HERO + PROCESS SYSTEM */
.polaris-nav-bar {
  min-height: 68px;
  gap: 16px;
}

.polaris-nav-only .nav-logo-img {
  height: 32px !important;
}

.polaris-desktop-nav {
  gap: 20px;
}

.polaris-desktop-nav a {
  font-size: 14px;
  font-weight: 500;
  color: #0b1118;
}

.overlay .overlay-close {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 180ms ease;
}

.overlay.open .overlay-close {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

body.polaris-hero-active #floating-mockup-btn {
  opacity: 0;
  pointer-events: none;
  transform: translate(-18px, -50%) rotate(-90deg);
}

#floating-mockup-btn {
  transition: opacity 180ms ease, transform 180ms ease;
}

.polaris-hero,
#trading-reveal.polaris-hero {
  position: relative !important;
  width: 100%;
  height: 700px !important;
  min-height: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 12%, rgba(98, 173, 255, 0.14), transparent 30%),
    linear-gradient(180deg, #040913 0%, #07111b 52%, #04070f 100%);
}

.polaris-hero__media,
.polaris-hero__media video {
  width: 100%;
  height: 100%;
}

.polaris-hero__media {
  position: relative;
}

.polaris-hero__media::before {
  content: '';
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(158, 210, 255, 0.1);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03);
  z-index: 1;
  pointer-events: none;
}

.polaris-hero__media::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 17, 28, 0.015) 0%, rgba(7, 17, 28, 0.035) 58%, rgba(7, 17, 28, 0.08) 100%),
    radial-gradient(circle at 50% 0%, rgba(121, 206, 255, 0.06), transparent 38%);
  z-index: 1;
  pointer-events: none;
}

.polaris-hero__video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: 50% center;
  background: #000;
  opacity: 1 !important;
  transform: scale(1.01);
}

.polaris-hero__frame {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

.polaris-hero__statusbar {
  position: absolute;
  top: 26px;
  left: 32px;
  right: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.polaris-hero__status-label,
.polaris-hero__status-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border: 1px solid rgba(157, 214, 255, 0.14);
  background: rgba(6, 14, 24, 0.2);
  color: rgba(235, 246, 255, 0.9);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.polaris-hero__status-chip {
  color: rgba(176, 231, 255, 0.95);
}

.polaris-hero__corner {
  position: absolute;
  width: 34px;
  height: 34px;
  opacity: 0.7;
}

.polaris-hero__corner::before,
.polaris-hero__corner::after {
  content: '';
  position: absolute;
  background: rgba(177, 226, 255, 0.34);
}

.polaris-hero__corner::before {
  width: 1px;
  height: 100%;
}

.polaris-hero__corner::after {
  width: 100%;
  height: 1px;
}

.polaris-hero__corner--tl { top: 18px; left: 18px; }
.polaris-hero__corner--tr { top: 18px; right: 18px; transform: scaleX(-1); }
.polaris-hero__corner--bl { bottom: 18px; left: 18px; transform: scaleY(-1); }
.polaris-hero__corner--br { right: 18px; bottom: 18px; transform: scale(-1); }

.polaris-hero__overlay {
  position: absolute;
  left: 50%;
  bottom: 42px;
  z-index: 3;
  width: min(100% - 32px, 620px);
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  pointer-events: none;
}

.polaris-hero__support {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  padding: 8px 14px;
  border: 1px solid rgba(154, 210, 255, 0.12);
  background: rgba(8, 16, 27, 0.18);
  color: rgba(237, 245, 252, 0.86);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.polaris-hero__support span {
  position: relative;
}

.polaris-hero__support span + span::before {
  content: '';
  position: absolute;
  left: -8px;
  top: 50%;
  width: 2px;
  height: 2px;
  border-radius: 999px;
  background: rgba(162, 219, 255, 0.6);
  transform: translateY(-50%);
}

.polaris-hero__cta-stack {
  position: relative;
  width: 100%;
  min-height: 48px;
}

.polaris-hero__cta-group {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 260ms ease, visibility 260ms ease;
}

.polaris-hero__cta-group--active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.polaris-hero__btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 10px 18px;
  border: 1px solid rgba(169, 220, 255, 0.18);
  border-radius: 10px;
  background: rgba(7, 16, 26, 0.22);
  color: #f4f8fc;
  cursor: pointer;
  font-family: Raleway, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 8px 24px rgba(4, 8, 15, 0.12);
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.polaris-hero__btn--primary {
  background: rgba(179, 230, 255, 0.92);
  border-color: rgba(183, 233, 255, 0.92);
  color: #07131d;
}

.polaris-hero__btn--secondary {
  background: rgba(10, 18, 29, 0.24);
  color: #eff7ff;
}

.polaris-hero__btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(6, 12, 22, 0.16);
}

.polaris-hero__btn--primary:hover {
  background: rgba(196, 236, 255, 0.98);
  border-color: rgba(196, 236, 255, 0.98);
}

.polaris-hero__btn--secondary:hover {
  background: rgba(14, 24, 38, 0.34);
  border-color: rgba(183, 233, 255, 0.28);
}

.polaris-hero__btn:focus-visible,
.process-confidence-cta:focus-visible {
  outline: 2px solid rgba(130, 214, 255, 0.95);
  outline-offset: 2px;
}

#process.process-section {
  position: relative;
  padding: 104px 0;
  background:
    radial-gradient(circle at 12% 0%, rgba(113, 177, 255, 0.12), transparent 28%),
    linear-gradient(180deg, #edf3fb 0%, #f7fafd 100%);
  overflow: hidden;
}

.process-grid-overlay {
  background-image:
    linear-gradient(rgba(87, 160, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(87, 160, 255, 0.05) 1px, transparent 1px);
  background-size: 48px 48px;
  opacity: 0.72;
}

.process-shell {
  position: relative;
  padding: 52px;
  border: 1px solid rgba(115, 169, 232, 0.14);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 24px 90px rgba(55, 88, 126, 0.08);
  backdrop-filter: blur(18px);
}

.process-shell-header {
  max-width: 760px;
  margin: 0 auto 32px;
  text-align: center;
}

.process-kicker {
  color: #2f6fb0;
  letter-spacing: 0.16em;
}

.process-line {
  margin: 14px auto 0;
}

.process-circle {
  margin: 10px auto 0;
}

.process-title {
  margin-top: 18px;
  color: #08111d;
}

.process-intro {
  max-width: 640px;
  margin: 16px auto 0;
  color: #506173;
  font-size: 15px;
  line-height: 1.8;
}

.process-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.95fr);
  gap: 24px;
  align-items: stretch;
}

.process-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 0;
}

.process-step-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 28px 24px 24px;
  border: 1px solid rgba(100, 157, 223, 0.14);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(247, 250, 255, 0.86));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
  overflow: hidden;
}

.process-step-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 24px;
  right: 24px;
  height: 1px;
  background: linear-gradient(90deg, rgba(90, 175, 255, 0), rgba(90, 175, 255, 0.38), rgba(90, 175, 255, 0));
}

.process-step-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.process-step-num {
  margin-bottom: 0;
  font-size: 42px;
  line-height: 1;
}

.process-step-window {
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(88, 160, 255, 0.1);
  color: #2565a9;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.process-step-title {
  font-size: 20px;
  line-height: 1.2;
  color: #08111d;
  margin-bottom: 0;
}

.process-step-desc {
  flex: 1;
  font-size: 14px;
  line-height: 1.8;
  color: #556476;
}

.process-step-proof {
  padding-top: 12px;
  border-top: 1px solid rgba(100, 157, 223, 0.16);
  color: #1d5f9f;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.process-confidence {
  display: flex;
}

.process-confidence-panel {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 32px 28px;
  border-radius: 20px;
  border: 1px solid rgba(77, 140, 213, 0.14);
  background:
    linear-gradient(180deg, rgba(9, 18, 30, 0.97), rgba(7, 13, 23, 0.98)),
    linear-gradient(135deg, rgba(87, 160, 255, 0.06), transparent 55%);
  color: #edf5ff;
  box-shadow: 0 22px 60px rgba(12, 22, 38, 0.18);
}

.process-confidence-kicker {
  color: rgba(169, 226, 255, 0.9);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.process-confidence-title {
  margin: 0;
  color: #f7fbff;
  font-size: 28px;
  line-height: 1.2;
}

.process-confidence-list {
  display: grid;
  gap: 12px;
}

.process-confidence-item {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 14px;
  padding: 12px 0;
  border-top: 1px solid rgba(160, 209, 255, 0.12);
}

.process-confidence-item:first-child {
  border-top: none;
  padding-top: 0;
}

.process-confidence-label {
  color: rgba(162, 223, 255, 0.86);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.process-confidence-value {
  color: rgba(237, 244, 252, 0.9);
  font-size: 14px;
  line-height: 1.7;
}

.process-confidence-chips {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.process-confidence-chips span {
  padding: 8px 10px;
  border: 1px solid rgba(164, 222, 255, 0.16);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(230, 244, 255, 0.88);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.process-confidence-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  width: fit-content;
  border-radius: 10px;
  border: 1px solid rgba(184, 234, 255, 0.84);
  background: rgba(187, 234, 255, 0.94);
  color: #07131d;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-decoration: none;
}

@media (max-width: 1100px) {
  .process-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 966px) {
  .polaris-desktop-nav {
    display: none;
  }

  .polaris-nav-only .nav-button {
    display: block;
  }
}

@media (max-width: 768px) {
  .polaris-hero,
  #trading-reveal.polaris-hero {
    height: auto !important;
    aspect-ratio: 2 / 3 !important;
  }

  .polaris-hero__video {
    object-position: 42% center !important;
    transform: none;
  }

  .polaris-hero__media::before {
    inset: 10px;
  }

  .polaris-hero__statusbar {
    top: 16px;
    left: 18px;
    right: 18px;
    gap: 8px;
  }

  .polaris-hero__status-label,
  .polaris-hero__status-chip {
    min-height: 24px;
    padding: 0 9px;
    font-size: 9px;
    letter-spacing: 0.1em;
  }

  .polaris-hero__status-chip {
    display: none;
  }

  .polaris-hero__overlay {
    bottom: 26px !important;
    width: min(100% - 20px, 340px) !important;
    gap: 10px;
  }

  .polaris-hero__support {
    gap: 10px;
    padding: 7px 10px;
    font-size: 9px;
    letter-spacing: 0.1em;
  }

  .polaris-hero__support span + span::before {
    left: -6px;
  }

  .polaris-hero__cta-stack {
    min-height: 44px !important;
  }

  .polaris-hero__cta-group {
    gap: 6px;
  }

  .polaris-hero__btn {
    min-height: 40px !important;
    padding: 10px 14px !important;
    font-size: 12px !important;
    letter-spacing: 0.04em;
  }

  #process.process-section {
    padding: 72px 0;
  }

  .process-shell {
    padding: 28px 20px;
    border-radius: 20px;
  }

  .process-title {
    font-size: 32px;
  }

  .process-intro {
    font-size: 14px;
  }

  .process-steps {
    grid-template-columns: 1fr;
  }

  .process-step-card {
    padding: 24px 20px;
  }

  .process-confidence-title {
    font-size: 24px;
  }

  .process-confidence-item {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  body.polaris-hero-active #floating-mockup-btn {
    transform: translate(-10px, -50%) rotate(-90deg);
  }
}

/* POLARIS HERO V2 - EDITORIAL TECH SYSTEM */
.polaris-hero--system,
#trading-reveal.polaris-hero--system {
  position: relative !important;
  width: 100%;
  height: 700px !important;
  min-height: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 10% 14%, rgba(160, 214, 255, 0.28), transparent 24%),
    radial-gradient(circle at 82% 18%, rgba(142, 255, 216, 0.12), transparent 22%),
    linear-gradient(135deg, #0b1623 0%, #122132 46%, #0c141f 100%);
}

.polaris-hero--system .polaris-hero__media,
.polaris-hero--system .polaris-hero__video {
  display: none !important;
}

.polaris-hero__ambient,
.polaris-hero__shell {
  position: absolute;
  inset: 0;
}

.polaris-hero__ambient {
  z-index: 0;
  overflow: hidden;
}

.polaris-hero__ambient-grid,
.polaris-hero__board-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(120, 177, 226, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(120, 177, 226, 0.08) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.7), transparent 100%);
  -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.7), transparent 100%);
  opacity: 0.38;
}

.polaris-hero__ambient-beam {
  position: absolute;
  width: 460px;
  height: 460px;
  border-radius: 999px;
  filter: blur(92px);
  opacity: 0.42;
}

.polaris-hero__ambient-beam--left {
  top: -150px;
  left: -110px;
  background: rgba(132, 203, 255, 0.42);
}

.polaris-hero__ambient-beam--right {
  right: -70px;
  bottom: -150px;
  background: rgba(114, 255, 211, 0.22);
}

.polaris-hero__ambient-orbit {
  position: absolute;
  top: 15%;
  right: 18%;
  width: 300px;
  height: 300px;
  border: 1px solid rgba(183, 230, 255, 0.14);
  border-radius: 999px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05);
}

.polaris-hero__frame {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.polaris-hero--system .polaris-hero__statusbar {
  position: absolute;
  top: 28px;
  left: 34px;
  right: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.polaris-hero--system .polaris-hero__status-label,
.polaris-hero--system .polaris-hero__status-chip {
  display: inline-flex;
  align-items: center;
  min-height: 29px;
  padding: 0 12px;
  border: 1px solid rgba(164, 221, 255, 0.12);
  background: rgba(8, 15, 25, 0.32);
  color: rgba(239, 247, 255, 0.9);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.polaris-hero--system .polaris-hero__status-chip {
  color: rgba(180, 239, 255, 0.94);
}

.polaris-hero--system .polaris-hero__corner {
  position: absolute;
  width: 36px;
  height: 36px;
  opacity: 0.74;
}

.polaris-hero--system .polaris-hero__corner::before,
.polaris-hero--system .polaris-hero__corner::after {
  content: '';
  position: absolute;
  background: rgba(176, 226, 255, 0.3);
}

.polaris-hero--system .polaris-hero__corner::before {
  width: 1px;
  height: 100%;
}

.polaris-hero--system .polaris-hero__corner::after {
  width: 100%;
  height: 1px;
}

.polaris-hero--system .polaris-hero__corner--tl { top: 18px; left: 18px; }
.polaris-hero--system .polaris-hero__corner--tr { top: 18px; right: 18px; transform: scaleX(-1); }
.polaris-hero--system .polaris-hero__corner--bl { bottom: 18px; left: 18px; transform: scaleY(-1); }
.polaris-hero--system .polaris-hero__corner--br { right: 18px; bottom: 18px; transform: scale(-1); }

.polaris-hero__shell {
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1.08fr);
  gap: 28px;
  align-items: stretch;
  padding: 108px 42px 36px;
  box-sizing: border-box;
}

.polaris-hero__copy,
.polaris-hero__board {
  position: relative;
  border: 1px solid rgba(184, 229, 255, 0.18);
  background: linear-gradient(180deg, rgba(17, 28, 40, 0.5), rgba(11, 19, 29, 0.24));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 18px 50px rgba(7, 14, 23, 0.12);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.polaris-hero__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
  min-height: 0;
  padding: 36px 34px 32px;
}

.polaris-hero__copy::before {
  content: '';
  position: absolute;
  top: 22px;
  left: 22px;
  right: 22px;
  height: 1px;
  background: linear-gradient(90deg, rgba(185, 231, 255, 0), rgba(185, 231, 255, 0.58), rgba(185, 231, 255, 0));
  opacity: 0.72;
}

.polaris-hero__eyebrow {
  color: rgba(154, 228, 255, 0.96);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.polaris-hero__title {
  margin: 0;
  max-width: 11ch;
  color: #f7fbff;
  font-size: clamp(38px, 4.3vw, 60px);
  line-height: 0.95;
  letter-spacing: -0.04em;
  font-weight: 600;
  text-wrap: balance;
}

.polaris-hero__description {
  margin: 0;
  max-width: 41ch;
  color: rgba(226, 236, 246, 0.9);
  font-size: 15px;
  line-height: 1.72;
}

.polaris-hero--system .polaris-hero__support {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  width: fit-content;
  padding: 9px 14px;
  border: 1px solid rgba(179, 230, 255, 0.14);
  background: rgba(19, 31, 43, 0.34);
  color: rgba(240, 247, 252, 0.88);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.polaris-hero--system .polaris-hero__support span {
  position: relative;
}

.polaris-hero--system .polaris-hero__support span + span::before {
  content: '';
  position: absolute;
  top: 50%;
  left: -8px;
  width: 2px;
  height: 2px;
  border-radius: 999px;
  background: rgba(167, 222, 255, 0.55);
  transform: translateY(-50%);
}

.polaris-hero__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.polaris-hero--system .polaris-hero__btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 10px 18px;
  border: 1px solid rgba(184, 231, 255, 0.18);
  border-radius: 10px;
  background: rgba(15, 27, 39, 0.32);
  color: #f3f8fc;
  cursor: pointer;
  font-family: Raleway, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.polaris-hero--system .polaris-hero__btn--primary {
  background: linear-gradient(135deg, rgba(209, 241, 255, 0.98), rgba(174, 233, 255, 0.94));
  border-color: rgba(215, 243, 255, 0.96);
  color: #0a1722;
}

.polaris-hero--system .polaris-hero__btn--secondary {
  background: rgba(22, 35, 48, 0.34);
  color: #f4f8fc;
}

.polaris-hero--system .polaris-hero__btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 26px rgba(3, 7, 13, 0.18);
}

.polaris-hero__board {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 14px;
  min-height: 0;
  padding: 18px;
  overflow: hidden;
  box-sizing: border-box;
}

.polaris-hero__board::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 16% 18%, rgba(180, 229, 255, 0.08), transparent 26%),
    linear-gradient(160deg, rgba(157, 218, 255, 0.06), transparent 44%, rgba(124, 255, 198, 0.06) 100%);
  pointer-events: none;
}

.polaris-hero__board::after {
  content: '';
  position: absolute;
  inset: 18px 18px auto;
  height: 1px;
  background: linear-gradient(90deg, rgba(186, 231, 255, 0), rgba(186, 231, 255, 0.48), rgba(186, 231, 255, 0));
  opacity: 0.72;
}

.polaris-hero__board-header,
.polaris-hero__board-primary,
.polaris-hero__board-footer {
  position: relative;
  z-index: 1;
}

.polaris-hero__board-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 0;
}

.polaris-hero__board-kicker,
.polaris-hero__board-id,
.polaris-hero__metric-label,
.polaris-hero__rail-label,
.polaris-hero__utility-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.polaris-hero__board-kicker,
.polaris-hero__metric-label,
.polaris-hero__rail-label,
.polaris-hero__utility-label {
  color: rgba(163, 228, 255, 0.96);
}

.polaris-hero__board-id {
  color: rgba(219, 236, 248, 0.62);
}

.polaris-hero__board-primary {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(200px, 0.85fr);
  gap: 12px;
  min-height: 0;
}

.polaris-hero__board-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 10px;
  min-height: 0;
  padding: 16px;
  border: 1px solid rgba(184, 230, 255, 0.15);
  background: linear-gradient(180deg, rgba(18, 31, 43, 0.56), rgba(10, 18, 28, 0.34));
  box-sizing: border-box;
}

.polaris-hero__board-panel::after {
  content: '';
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  height: 1px;
  background: linear-gradient(90deg, rgba(170, 223, 255, 0), rgba(170, 223, 255, 0.38), rgba(170, 223, 255, 0));
}

.polaris-hero__board-panel--lead {
  justify-content: space-between;
}

.polaris-hero__metric-value {
  color: #f6fbff;
  font-size: 30px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.04em;
  text-shadow: 0 0 28px rgba(140, 214, 255, 0.14);
}

.polaris-hero__metric-sub,
.polaris-hero__rail-value,
.polaris-hero__utility-name {
  color: rgba(223, 236, 246, 0.82);
}

.polaris-hero__metric-sub {
  max-width: 28ch;
  font-size: 13px;
  line-height: 1.65;
}

.polaris-hero__board-stack {
  display: grid;
  gap: 12px;
}

.polaris-hero__board-stack .polaris-hero__board-panel {
  justify-content: center;
}

.polaris-hero__rail-value {
  font-size: 18px;
  line-height: 1.2;
  font-weight: 600;
}

.polaris-hero__board-footer {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.polaris-hero__utility-link {
  appearance: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 72px;
  padding: 12px 14px;
  border: 1px solid rgba(184, 230, 255, 0.14);
  background: rgba(18, 31, 44, 0.28);
  color: inherit;
  text-align: left;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.polaris-hero__utility-link--button {
  cursor: pointer;
}

.polaris-hero__utility-name {
  font-size: 16px;
  line-height: 1.2;
  font-weight: 600;
}

.modal-overlay {
  display: none;
}

.modal-overlay.open {
  display: flex;
}

.polaris-hero__utility-link:hover {
  background: rgba(24, 40, 56, 0.42);
  border-color: rgba(194, 236, 255, 0.3);
  transform: translateY(-1px);
}

@media (max-width: 1100px) {
  .polaris-hero--system,
  #trading-reveal.polaris-hero--system {
    height: 760px !important;
  }

  .polaris-hero__shell {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 90px 28px 28px;
  }

  .polaris-hero__title {
    max-width: 12ch;
  }
}

@media (max-width: 768px) {
  .polaris-hero--system,
  #trading-reveal.polaris-hero--system {
    height: auto !important;
    min-height: 690px !important;
    aspect-ratio: auto !important;
  }

  .polaris-hero__ambient-orbit {
    right: -40px;
    top: 11%;
    width: 200px;
    height: 200px;
  }

  .polaris-hero--system .polaris-hero__statusbar {
    top: 14px;
    left: 18px;
    right: 18px;
  }

  .polaris-hero--system .polaris-hero__status-chip {
    display: none;
  }

  .polaris-hero__shell {
    padding: 68px 14px 16px;
    gap: 10px;
    box-sizing: border-box;
  }

  .polaris-hero__copy,
  .polaris-hero__board {
    padding: 16px 14px;
  }

  .polaris-hero__copy {
    justify-content: flex-start;
    gap: 12px;
  }

  .polaris-hero__title {
    max-width: none;
    font-size: clamp(26px, 7.2vw, 34px);
    line-height: 1.01;
  }

  .polaris-hero__description {
    font-size: 13px;
    line-height: 1.62;
  }

  .polaris-hero--system .polaris-hero__support {
    gap: 8px;
    padding: 7px 8px;
    font-size: 8px;
    letter-spacing: 0.08em;
  }

  .polaris-hero--system .polaris-hero__support span + span::before {
    left: -6px;
  }

  .polaris-hero__actions {
    gap: 6px;
  }

  .polaris-hero--system .polaris-hero__btn {
    min-height: 44px;
    padding: 9px 13px;
    font-size: 12px;
  }

  .polaris-hero__board-primary,
  .polaris-hero__board-footer {
    grid-template-columns: 1fr;
  }

  .polaris-hero__board {
    gap: 10px;
  }

  .polaris-hero__board-header {
    margin-bottom: 2px;
  }

  .polaris-hero__board-panel {
    padding: 12px;
    gap: 8px;
  }

  .polaris-hero__metric-value {
    font-size: 22px;
  }

  .polaris-hero__utility-name,
  .polaris-hero__rail-value {
    font-size: 15px;
  }

  .polaris-hero__utility-link {
    min-height: 62px;
    padding: 10px 12px;
  }
}


/* ══ CLIENT QUOTE STRIP (Layer 7.3A) ══ */
.quote-strip-bridge{height:60px;background:linear-gradient(to bottom,#EDF1FA,#080c18);pointer-events:none;}
.quote-strip{background:#080c18;padding:48px 0;position:relative;overflow:hidden;}
.quote-strip-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.022) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.quote-strip-shell{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:48px;backdrop-filter:blur(10px);}
.quote-strip-header{text-align:center;margin-bottom:32px;}
.quote-strip-eyebrow{font-size:10px;letter-spacing:4px;color:#51FFB6;text-transform:uppercase;margin-bottom:12px;}
.quote-strip-heading{font-size:clamp(20px,2.5vw,28px);font-weight:300;color:#fff;margin:0;letter-spacing:-0.01em;}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.quote-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:28px 24px;display:flex;flex-direction:column;justify-content:space-between;}
.quote-body{font-family:"EB Garamond",serif;font-size:16px;font-style:italic;color:rgba(255,255,255,0.75);line-height:1.7;margin-bottom:20px;}
.quote-attr{font-size:11px;letter-spacing:0.5px;}
.quote-attr-name{color:rgba(255,255,255,0.6);font-weight:600;}
.quote-attr-sep{color:rgba(255,255,255,0.2);}
.quote-attr-biz{color:rgba(255,255,255,0.35);}
@media(max-width:1023px){.quote-strip-shell{padding:32px 20px;}.quote-grid{grid-template-columns:1fr;gap:12px;}}

/* ══ FOUNDER ATTRIBUTION STRIP (Layer 7.4) ══ */
.founder-strip{background:#080c18;padding:0 0 40px;position:relative;}
.founder-strip-shell{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:28px 40px;backdrop-filter:blur(10px);}
.founder-strip-inner{display:flex;align-items:center;gap:40px;justify-content:space-between;}
.founder-strip-info{flex-shrink:0;}
.founder-strip-eyebrow{font-size:9px;letter-spacing:4px;color:#51FFB6;text-transform:uppercase;margin-bottom:8px;}
.founder-strip-name{font-size:20px;font-weight:300;color:#fff;letter-spacing:-0.01em;margin-bottom:4px;}
.founder-strip-cred{font-size:11px;letter-spacing:0.5px;color:rgba(255,255,255,0.55);}
.founder-strip-statement{font-size:14px;color:rgba(255,255,255,0.55);line-height:1.7;margin:0;flex:1;max-width:480px;text-align:right;}
@media(max-width:1023px){.founder-strip-shell{padding:24px 20px;}.founder-strip-inner{flex-direction:column;align-items:flex-start;gap:16px;}.founder-strip-statement{text-align:left;max-width:100%;}}
@media(max-width:767px){.founder-strip{padding:0 0 28px;}}

/* ══ 9.0C INNER PAGE VISUAL PASS ══ */

/* work.html — stat intro bar */
.work-intro-bar{background:var(--pol-dark);padding:48px 24px;overflow:hidden;}
.work-intro-stats{display:flex;justify-content:center;align-items:center;gap:64px;max-width:600px;margin:0 auto;}
.work-intro-stat-num{display:block;font-size:2.6rem;font-weight:700;color:#fff;line-height:1;}
.work-intro-stat-label{display:block;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-top:8px;}
.work-project-dark .work-num{color:rgba(255,255,255,0.07);}
@media(max-width:767px){.work-intro-stats{gap:32px;}.work-intro-stat-num{font-size:1.8rem;}}

/* services.html — buyer fork row */
.svc-fork-row{background:var(--pol-dark);padding:64px 24px;overflow:hidden;}
.svc-fork-inner{max-width:800px;margin:0 auto;display:flex;gap:24px;}
.svc-fork-card{flex:1;padding:36px 32px;border:1px solid rgba(255,255,255,0.08);border-radius:6px;}
.svc-fork-eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;margin-bottom:12px;display:block;}
.svc-fork-card:first-child .svc-fork-eyebrow{color:var(--pol-mint);}
.svc-fork-card:last-child .svc-fork-eyebrow{color:var(--pol-blue);}
.svc-fork-heading{font-size:1.25rem;font-weight:300;color:#fff;margin-bottom:14px;line-height:1.4;text-transform:none !important;}
.svc-fork-body{font-size:14px;color:rgba(255,255,255,0.5);line-height:1.8;margin-bottom:24px;}
@media(max-width:767px){.svc-fork-inner{flex-direction:column;}}
.btn-polaris-outline-light{display:inline-block;padding:14px 32px;background:transparent;border:1px solid rgba(255,255,255,0.25);border-radius:6px;color:#fff;font-weight:700;font-size:13px;letter-spacing:1px;text-decoration:none;transition:border-color 0.2s,color 0.2s;}
.btn-polaris-outline-light:hover{border-color:#51FFB6;color:#51FFB6;text-decoration:none;}

/* about.html — class system */
.about-story{background:#fff;padding:80px 24px;}
.about-story-inner{max-width:680px;margin:0 auto;}
.about-story-eyebrow{font-size:12px;letter-spacing:4px;color:var(--pol-blue);margin-bottom:16px;display:block;}
.about-story-name{font-size:28px;font-weight:300;color:#333;margin-bottom:24px;text-transform:none !important;}
.about-story-inner p{font-size:15px;color:#666;line-height:1.8;margin-bottom:16px;}
.about-cred-row{display:flex;gap:8px;flex-wrap:wrap;margin:32px 0 0;}
.about-cred-badge{font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:6px 14px;border-radius:4px;color:var(--pol-blue);background:rgba(87,160,255,0.08);}
.about-stats-row{display:flex;gap:48px;padding:40px 0;border-top:1px solid #eee;border-bottom:1px solid #eee;margin:32px 0;}
.about-stat-num{display:block;font-size:2.4rem;font-weight:700;color:var(--pol-dark);line-height:1;}
.about-stat-label{display:block;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#999;margin-top:6px;}
.about-values{background:#fff;padding:0 24px 80px;}
.about-values-inner{max-width:680px;margin:0 auto;}
.about-values-eyebrow{font-size:12px;letter-spacing:4px;color:var(--pol-blue);margin-bottom:16px;display:block;}
.about-values-inner h2{font-size:24px;font-weight:300;color:#333;margin-bottom:24px;text-transform:none !important;}
.about-values-inner p{font-size:15px;color:#666;line-height:1.8;margin-bottom:16px;}
@media(max-width:767px){.about-story{padding:60px 20px;}.about-stats-row{gap:24px;flex-wrap:wrap;}.about-stat-num{font-size:1.8rem;}.about-values{padding:0 20px 60px;}}

/* ══ 9.0E MOBILE TAP TARGET + GLOBAL POLISH PASS ══ */
@media(max-width:767px){

  /* A — Hamburger + overlay close tap target */
  #trigger-overlay{min-width:44px !important;min-height:44px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;}
  .overlay-close{min-width:44px !important;min-height:44px !important;}

  /* B — Hero CTA buttons: 48px (overrides earlier 38px rule) */
  .polaris-hero__btn{min-height:48px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;}

  /* C — Body font mobile minimum */
  body{font-size:15px;}

  /* D — Pricing footnote link tap target */
  .pkg-footnote-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:8px 4px;}

  /* E — Work page Visit Live Site buttons: full-width on mobile */
  .btn-visit{width:100% !important;min-height:44px !important;justify-content:center !important;}
  .btn-visit-ghost{width:100% !important;min-height:44px !important;justify-content:center !important;}

  /* F — General mobile CTA minimums */
  .proof-btn-primary,.proof-btn-ghost,.pitch-cta-btn,.btn-polaris,.btn-polaris-dark,.btn-polaris-outline,.btn-polaris-outline-light{min-height:44px;display:inline-flex;align-items:center;justify-content:center;}

  /* G — Footer/back-to-top collision fix */
  .footer-bottom{padding-bottom:72px;padding-right:20px;}
}

/* ══════════════════════════════════════════════════
   10.0 VISUAL IDENTITY SYSTEM
   New shared classes — do not edit 9.x or earlier blocks
══════════════════════════════════════════════════ */

/* ─── A. Layout ─── */
.pol-container{max-width:1200px;margin:0 auto;padding:0 24px;}
.pol-two-col{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);gap:56px;align-items:center;}
.pol-two-col-even{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center;}

/* ─── B. Typography ─── */
.pol-eyebrow{display:block;font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--pol-mint);font-weight:700;margin-bottom:16px;}
.pol-hero-title{font-family:'EB Garamond',serif;font-size:clamp(3.5rem,6vw,6rem);font-weight:300;line-height:0.95;letter-spacing:-0.04em;color:#fff;text-transform:none !important;}
.pol-editorial-title{font-family:'EB Garamond',serif;font-size:clamp(2.6rem,5vw,5rem);font-weight:300;line-height:1;letter-spacing:-0.035em;text-transform:none !important;}

/* ─── C. Button aliases ─── */
.pol-btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;border-radius:6px;background:var(--pol-gradient);color:#0a0a0a;font-weight:800;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;}
.pol-btn-primary:hover{opacity:0.9;color:#0a0a0a;text-decoration:none;}
.pol-btn-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;border-radius:6px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.30);color:#fff;font-weight:700;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;}
.pol-btn-ghost:hover{background:rgba(255,255,255,0.13);border-color:rgba(255,255,255,0.5);color:#fff;text-decoration:none;}

/* ─── D. Visual / image ─── */
.pol-browser-frame{position:relative;border-radius:14px;overflow:hidden;background:#111;border:1px solid rgba(255,255,255,0.12);}
.pol-browser-frame::before{content:"";display:block;height:34px;background:rgba(255,255,255,0.06);border-bottom:1px solid rgba(255,255,255,0.08);flex-shrink:0;}
.pol-browser-frame img{display:block;width:100%;object-fit:cover;object-position:top center;}
.pol-visual-glow{position:relative;}
.pol-visual-glow::after{content:"";position:absolute;inset:auto 10% -24px;height:48px;background:rgba(81,255,182,0.22);filter:blur(34px);z-index:-1;pointer-events:none;}

/* ─── Retire Lucy section decorators globally ─── */
.section-line{display:none !important;}
.section-circle{display:none !important;}

/* ══ 10.0 HERO — Floating browser mockup, properly framed ══ */
.polaris-hero__visual{
  position:relative;
  display:flex;
  align-items:center;
  padding:16px 0 16px 8px;
}
.polaris-hero__visual .pol-browser-frame{
  position:relative;
  width:100%;
  display:flex;
  flex-direction:column;
  border-radius:14px;
  box-shadow:0 32px 80px rgba(0,0,0,0.65),0 8px 24px rgba(0,0,0,0.4);
}
/* Browser chrome bar — dark with macOS-style traffic light dots */
.polaris-hero__visual .pol-browser-frame::before{
  background:rgba(14,18,24,0.94);
  border-bottom:1px solid rgba(255,255,255,0.1);
  background-image:
    radial-gradient(circle,rgba(255,80,75,0.82) 3px,transparent 3px),
    radial-gradient(circle,rgba(255,196,40,0.82) 3px,transparent 3px),
    radial-gradient(circle,rgba(40,208,80,0.82) 3px,transparent 3px);
  background-size:10px 34px,10px 34px,10px 34px;
  background-position:14px 0,28px 0,42px 0;
  background-repeat:no-repeat;
}
.polaris-hero__visual .pol-browser-frame img{
  width:100%;
  height:370px;
  object-fit:cover;
  object-position:top center;
  display:block;
}
/* Neutralize ambient grid noise */
.polaris-hero__ambient-grid{opacity:0 !important;}
.polaris-hero__frame{display:none !important;}

/* ══ 10.0 PITCH — CSS Grid override, real screenshot replaces phone ══ */
.polaris-pitch .starting .row{
  display:grid !important;
  grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
  gap:56px;
  align-items:center;
  float:none !important;
}
.polaris-pitch .starting .row::before,
.polaris-pitch .starting .row::after{display:none !important;}
.polaris-pitch .starting .col-md-6{float:none !important;width:100% !important;padding:0 !important;}
.pitch-visual{width:100%;}
.pitch-visual .pol-browser-frame img{height:420px;}

/* ══ 10.0 PORTFOLIO — Expand from thumbnail grid ══ */
#portfolio .portfolio-grid{
  max-width:1200px;
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:0 32px;
}
#portfolio .portfolio-grid .port-card:first-child{grid-column:span 2;}
#portfolio .port-card-visual{height:360px;}

/* ══ 10.0 QUOTES — Featured first quote ══ */
.quote-card.quote-featured{padding:36px 32px;}
.quote-card.quote-featured .quote-body{
  font-family:'EB Garamond',serif;
  font-size:clamp(1.3rem,2.5vw,1.8rem);
  font-style:italic;
  color:rgba(255,255,255,0.92);
  line-height:1.45;
}

/* ══ 10.0 THEM VS US — Remove blueprint grid, clean white bg ══ */
#difference.polaris-section{background:#ffffff;}
#difference.polaris-section::before{display:none !important;}

/* ══ 10.0 FOUNDER STRIP — Two-column layout with photo ══ */
.founder-strip-inner{
  display:grid !important;
  grid-template-columns:280px 1fr !important;
  grid-template-rows:auto auto !important;
  gap:24px 48px !important;
  align-items:start !important;
  justify-content:unset !important;
}
.founder-strip-photo{
  grid-column:1;
  grid-row:1 / span 2;
  width:100%;
  max-width:280px;
  height:320px;
  border-radius:12px;
  object-fit:cover;
  object-position:center top;
  display:block;
}
.founder-strip-info{
  grid-column:2;
  grid-row:1;
  flex-shrink:unset !important;
}
.founder-strip-statement{
  grid-column:2 !important;
  grid-row:2 !important;
  text-align:left !important;
  max-width:none !important;
  flex:unset !important;
}

/* ══ 10.0 PROCESS — Dark bg, no glass shell, decorative numbers ══ */
#process.process-section{background:#0a0a0a;}
#process .process-grid-overlay{display:none !important;}
#process .process-shell{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  padding:0 !important;
}
#process .process-step-card{
  background:rgba(255,255,255,0.04);
  border-color:rgba(255,255,255,0.08);
}
#process .process-step-title{color:#fff;}
#process .process-step-desc{color:rgba(255,255,255,0.55);}
#process .process-step-window{color:rgba(255,255,255,0.35);}
#process .process-step-proof{color:rgba(81,255,182,0.65);border-color:rgba(255,255,255,0.06);}
#process .process-step-num{
  font-size:80px;
  opacity:0.14;
  line-height:1;
  margin-bottom:8px;
}
#process .process-confidence-panel{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
}
#process .process-confidence-kicker{color:rgba(81,255,182,0.75);}
#process .process-confidence-title{color:#fff;}
#process .process-confidence-label{color:var(--pol-mint);}
#process .process-confidence-value{color:rgba(255,255,255,0.55);}
#process .process-confidence-chips span{
  border-color:rgba(255,255,255,0.12);
  color:rgba(255,255,255,0.4);
  background:transparent;
}
#process .process-confidence-cta{background:var(--pol-gradient);color:#0a0a0a;}
#process .process-confidence-cta:hover{opacity:0.9;color:#0a0a0a;}
.process-kicker{color:#51FFB6 !important;}
.process-title{color:#fff !important;}
#process .process-intro{color:rgba(255,255,255,0.5);}

/* ══ 10.0 PRICING CARDS — Solid white on dark, clear contrast ══ */
.pkg-card{background:#ffffff !important;}
.pkg-card .pkg-meta-label{color:rgba(0,0,0,0.4) !important;}
.pkg-card .pkg-tier{color:#555 !important;}
.pkg-card .pkg-price{color:#0a0a0a !important;}
.pkg-card .pkg-was{color:#aaa !important;}
.pkg-card .pkg-features li{color:#444 !important;}
.pkg-card .pkg-divider{background:rgba(0,0,0,0.08) !important;}
.pkg-card .pkg-btn{background:#0a0a0a !important;color:#fff !important;border-color:#0a0a0a !important;}
.pkg-card .pkg-btn:hover{background:#1a1a1a !important;color:#fff !important;}
.pkg-card-featured{
  border-top:6px solid #51FFB6 !important;
  border-color:rgba(0,0,0,0.1) !important;
}
.pkg-btn-featured{background:var(--pol-gradient) !important;color:#0a0a0a !important;border:none !important;}
.pkg-btn-featured:hover{opacity:0.9 !important;}
/* LeadGen card stays dark — it's intentionally distinct */
.pkg-card-leadgen{background:rgba(255,255,255,0.05) !important;border-color:rgba(81,255,182,0.18) !important;}
.pkg-card-leadgen .pkg-meta-label{color:rgba(255,255,255,0.4) !important;}
.pkg-card-leadgen .pkg-tier{color:rgba(81,255,182,0.75) !important;}
.pkg-card-leadgen .pkg-price{color:#fff !important;}
.pkg-card-leadgen .pkg-was{color:rgba(255,255,255,0.3) !important;}
.pkg-card-leadgen .pkg-features li{color:rgba(255,255,255,0.65) !important;}
.pkg-card-leadgen .pkg-divider{background:rgba(255,255,255,0.07) !important;}

/* ══ 10.0 FINAL CTA — Remove glass, scale headline ══ */
.final-cta-redesign{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.final-cta-redesign::before{display:none !important;}
.final-cta-redesign .final-cta-headline{font-size:clamp(2.6rem,5vw,5rem);}
.final-cta-redesign .final-cta-sub{color:rgba(255,255,255,0.55);}

/* ══ 10.0 MOBILE RULES ══ */
@media(max-width:767px){
  .pol-two-col,.pol-two-col-even{grid-template-columns:1fr !important;gap:32px !important;}
  .pol-hero-title{font-size:3rem !important;}
  .pol-editorial-title{font-size:2.4rem !important;}
  .polaris-hero__visual{display:none !important;}
  .pitch-visual .pol-browser-frame img{height:280px;}
  #portfolio .portfolio-grid{grid-template-columns:1fr !important;max-width:100% !important;padding:0 16px !important;}
  #portfolio .portfolio-grid .port-card:first-child{grid-column:span 1 !important;}
  #portfolio .port-card-visual{height:280px !important;}
  .polaris-pitch .starting .row{grid-template-columns:1fr !important;gap:24px !important;}
  .founder-strip-inner{grid-template-columns:1fr !important;gap:20px !important;}
  .founder-strip-photo{max-width:100%;height:220px;grid-row:1 !important;grid-column:1 !important;}
  .founder-strip-info{grid-column:1 !important;grid-row:2 !important;}
  .founder-strip-statement{grid-column:1 !important;grid-row:3 !important;}
  .final-cta-redesign .final-cta-headline{font-size:2.4rem !important;}
  .pol-btn-primary,.pol-btn-ghost{width:100%;}
}

/* ══════════════════════════════════════════════════════════════════
   10.0C — CLUTTER KILL PASS
   Strips ambient noise, glass card, chips, glow from hero.
   Fixes tablet breakpoint. Cleans pricing section background.
   ══════════════════════════════════════════════════════════════════ */

/* Ambient beams + orbit ring — gone */
.polaris-hero__ambient-beam{display:none !important;}
.polaris-hero__ambient-orbit{display:none !important;}

/* Hero copy panel — strip glass card styling */
.polaris-hero__copy{
  border:none !important;
  background:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  box-shadow:none !important;
}
.polaris-hero__copy::before{display:none !important;}

/* Support chips — remove the row between description and CTAs */
.polaris-hero--system .polaris-hero__support{display:none !important;}

/* Hero visual glow — reduce to near-invisible */
.polaris-hero__visual.pol-visual-glow::after{opacity:0.28 !important;}

/* Hero shell — pull top padding down, tighten column split */
.polaris-hero__shell{
  padding-top:72px !important;
  grid-template-columns:minmax(0,1fr) 500px !important;
}

/* Tablet — hide visual, single column. 768px was wrong; 1023px is correct */
@media(max-width:1023px){
  .polaris-hero__visual{display:none !important;}
  .polaris-hero__shell{grid-template-columns:1fr !important;}
}

/* Pricing section — strip color glows, pure dark */
.pkg-glow-l,.pkg-glow-r{display:none !important;}
#pricing.pkg-section{background:#0a0a0a !important;}

/* ══ 10.0D HERO MOBILE/TABLET DEAD SPACE TIGHTEN ══
   Root cause: hero has fixed height:760px at ≤1100px and
   min-height:690px at ≤768px. With the visual panel hidden
   below 1024px, the copy-only content (~340-380px) sits inside
   a 700-760px shell, leaving a large dead zone before the trust
   bar. Note: .polaris-hero__shell is position:absolute, so the
   hero container cannot auto-size to content — must use a tight
   min-height that matches actual copy height instead.
   ══════════════════════════════════════════════════════════════ */

/* Tablet: 768px–1023px (visual hidden, copy only ~380px tall) */
@media(max-width:1023px){
  .polaris-hero--system,
  #trading-reveal.polaris-hero--system{
    height:auto !important;
    min-height:400px !important;
  }
  .polaris-hero__shell{
    padding-top:56px !important;
    padding-bottom:40px !important;
  }
  .polaris-hero__visual{display:none !important;}
}

/* Mobile: ≤767px (copy only, tighter padding, ~340px content) */
@media(max-width:767px){
  .polaris-hero--system,
  #trading-reveal.polaris-hero--system{
    height:auto !important;
    min-height:360px !important;
  }
  .polaris-hero__shell{
    padding-top:44px !important;
    padding-bottom:32px !important;
  }
}

/* ══════════════════════════════════════════
   PHASE 3 — POLARIS GROWTH PATH (homepage)
══════════════════════════════════════════ */
.pol-growth-path{background:#0a0a0a;padding:88px 0;position:relative;overflow:hidden;}
.pol-growth-path__dots{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,0.04) 1px,transparent 1px);background-size:32px 32px;pointer-events:none;}
.pol-growth-path__inner{max-width:1100px;margin:0 auto;padding:0 24px;position:relative;z-index:2;}
.pol-growth-path__header{text-align:center;margin-bottom:56px;}
.pol-growth-path__title{font-size:clamp(1.7rem,3.5vw,2.4rem);font-weight:300;color:#fff;margin:12px 0 14px;line-height:1.2;text-transform:none !important;}
.pol-growth-path__sub{font-size:15px;color:rgba(255,255,255,0.4);max-width:480px;margin:0 auto;line-height:1.7;}
.pol-growth-path__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:52px;}
.pol-growth-path__card{border:1px solid rgba(255,255,255,0.08);border-radius:8px;padding:36px 28px;}
.pol-growth-path__num{font-size:10px;letter-spacing:3px;color:rgba(255,255,255,0.2);font-weight:700;margin-bottom:14px;}
.pol-growth-path__card-tag{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:#51FFB6;margin-bottom:12px;}
.pol-growth-path__card-title{font-size:1.15rem;font-weight:600;color:#fff;margin:0 0 12px;text-transform:none !important;}
.pol-growth-path__card-body{font-size:14px;color:rgba(255,255,255,0.5);line-height:1.75;margin:0;}
.pol-growth-path__ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.pol-growth-path__cta-primary{display:inline-block;background:linear-gradient(50deg,#51FFB6,#57A0FF);color:#0a0a0a !important;font-weight:700;font-size:13px;letter-spacing:1px;padding:14px 32px;border-radius:6px;text-decoration:none !important;transition:opacity 0.2s;}
.pol-growth-path__cta-primary:hover{opacity:0.88;color:#0a0a0a !important;}
.pol-growth-path__cta-ghost{display:inline-block;border:1px solid rgba(255,255,255,0.2);color:rgba(255,255,255,0.7) !important;font-size:13px;letter-spacing:1px;padding:14px 32px;border-radius:6px;text-decoration:none !important;transition:border-color 0.2s,color 0.2s;}
.pol-growth-path__cta-ghost:hover{border-color:rgba(255,255,255,0.45);color:#fff !important;}
@media(max-width:768px){
  .pol-growth-path{padding:60px 0;}
  .pol-growth-path__cards{grid-template-columns:1fr;}
  .pol-growth-path__ctas{flex-direction:column;align-items:center;}
  .pol-growth-path__cta-primary,.pol-growth-path__cta-ghost{width:100%;max-width:340px;text-align:center;}
}

/* ══════════════════════════════════════════
   PHASE 3 — GROWTH BLUEPRINT HELPER (pricing page)
══════════════════════════════════════════ */
.pol-blueprint-section{background:#EDF1FA;padding:72px 24px;}
.pol-blueprint-inner{max-width:680px;margin:0 auto;text-align:center;}
.pol-blueprint-tag{font-size:11px;letter-spacing:4px;color:#57A0FF;text-transform:uppercase;margin-bottom:16px;}
.pol-blueprint-headline{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:300;color:#0a0a0a;margin:0 0 20px;text-transform:none !important;}
.pol-blueprint-body{font-size:15px;color:#555;line-height:1.85;margin:0 0 36px;}
.pol-blueprint-cta-wrap{margin-bottom:20px;}
.pol-blueprint-cta{display:inline-block;background:linear-gradient(50deg,#51FFB6,#57A0FF);color:#0a0a0a !important;font-weight:700;font-size:13px;letter-spacing:1px;padding:15px 36px;border-radius:6px;text-decoration:none !important;transition:opacity 0.2s;}
.pol-blueprint-cta:hover{opacity:0.88;color:#0a0a0a !important;}
.pol-blueprint-disclaimer{font-size:12px;color:#aaa;line-height:1.6;margin:0 auto;max-width:560px;}
@media(max-width:768px){
  .pol-blueprint-section{padding:52px 24px;}
  .pol-blueprint-cta{display:block;}
}
