/* Product page: risk assessment - pixel-ish clone of provided Tailwind prototype (no Tailwind, CSP-safe) */
:root{
  --deep-950:#020408;
  --deep-900:#050b14;
  --deep-800:#0f172a;

  --concrete-50:#f8fafc;
  --concrete-100:#f1f5f9;
  --concrete-200:#e2e8f0;
  --concrete-300:#cbd5e1;
  --concrete-800:#1e293b;
  --concrete-900:#0f172a;

  --neon-cyan:#06b6d4;
  --neon-blue:#3b82f6;
  --neon-safe:#10b981;
  --neon-warn:#f59e0b;
  --neon-alert:#f43f5e;

  --grid-pattern: linear-gradient(to right, rgba(255,255,255,0.03) 1px, transparent 1px),
                 linear-gradient(to bottom, rgba(255,255,255,0.03) 1px, transparent 1px);
  --grid-light: linear-gradient(to right, rgba(15, 23, 42, 0.03) 1px, transparent 1px),
               linear-gradient(to bottom, rgba(15, 23, 42, 0.03) 1px, transparent 1px);
  --cta-glow: radial-gradient(circle at center, rgba(6, 182, 212, 0.15) 0%, transparent 70%);
}

/* Scope EVERYTHING to the product wrapper to avoid overriding global (navbar/footer/app shell). */
.product-risk-page,
.product-risk-page *{ box-sizing:border-box; }

.product-risk-page{
  background: var(--concrete-50);
  color: var(--concrete-800);
  overflow-x:hidden;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.product-risk-page .font-mono{ font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

/* "Fireworks" reveal */
.product-risk-page .reveal-on-scroll{
  /* Domyślnie WIDOCZNE (ważne dla public/SEO i gdy JS nie zadziała).
     Animacje traktujemy jako progressive enhancement. */
  opacity:1;
  transform: none;
  transition: none;
}
.product-risk-page .reveal-on-scroll.is-visible{ opacity:1; transform: none; }
.product-risk-page .stagger-parent .reveal-child{
  opacity:1;
  transform: none;
  transition: none;
}
.product-risk-page .stagger-parent.is-visible .reveal-child{ opacity:1; transform: translateY(0); }
.product-risk-page .stagger-parent.is-visible .reveal-child:nth-child(1){ transition-delay:0.1s; }
.product-risk-page .stagger-parent.is-visible .reveal-child:nth-child(2){ transition-delay:0.2s; }
.product-risk-page .stagger-parent.is-visible .reveal-child:nth-child(3){ transition-delay:0.3s; }
.product-risk-page .stagger-parent.is-visible .reveal-child:nth-child(4){ transition-delay:0.4s; }

/* Layout containers */
.p-container{ max-width:1440px; margin:0 auto; padding:0 24px; }
.p-container-1200{ max-width:1200px; margin:0 auto; padding:0 24px; }
.p-container-1000{ max-width:1000px; margin:0 auto; padding:0 24px; }
.p-container-800{ max-width:800px; margin:0 auto; padding:0 24px; }
.p-container-4xl{ max-width:896px; margin:0 auto; padding:0 24px; } /* max-w-4xl */
.p-container-5xl{ max-width:1024px; margin:0 auto; padding:0 24px; } /* max-w-5xl */

/* NAVBAR */
.p-nav{
  position: sticky;
  top:0;
  z-index:50;
  width:100%;
  background: var(--deep-950);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,0.10);
}
.p-nav__row{
  height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.p-nav__brand{
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
  text-decoration:none;
}
.p-nav__brandMark{
  width:32px;
  height:32px;
  background: var(--neon-cyan);
  color:#000;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  font-size:14px;
  border-radius:2px; /* rounded-sm */
}
.p-nav__brandText{
  font-size:14px;
  font-weight:700;
  letter-spacing:-0.01em;
}
.p-nav__brandText .cyan{ color: var(--neon-cyan); }
.p-nav__links{
  display:none;
  gap:32px;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.2em;
  color:#94a3b8; /* slate-400 */
}
.p-nav__links a{ color:#94a3b8; text-decoration:none; }
.p-nav__links a:hover{ color:#fff; }
.p-nav__links a.is-active{ color:#fff; }
.p-nav__cta{
  display:inline-flex;
  align-items:center;
  padding:8px 16px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.05em;
  border:1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.10);
  color:#fff;
  border-radius:2px;
  text-decoration:none;
  transition: background-color 0.2s;
}
.p-nav__cta:hover{ background: rgba(255,255,255,0.20); }
@media (min-width:768px){ .p-nav__links{ display:flex; } }

/* HERO */
.p-hero{
  background: var(--deep-900);
  position:relative;
  overflow:hidden;
  padding:112px 0 136px; /* hero: a bit taller / more breathing room */
  border-bottom:1px solid rgba(255,255,255,0.05);
  color:#fff;
}
.landing-cinematic.has-front-nav .p-hero{
  /* navbar jest fixed i nachodzi na hero -> daj większy oddech od góry */
  padding-top:160px;
}
.p-hero__grid{
  position:absolute; inset:0;
  background-image: var(--grid-pattern);
  background-size:40px 40px;
  opacity:0.20;
  pointer-events:none;
}
.p-hero__glow{
  position:absolute;
  top:0;
  left:50%;
  transform: translateX(-50%);
  width:1000px;
  height:600px;
  background: rgba(6,182,212,0.05);
  filter: blur(120px);
  border-radius:9999px;
  pointer-events:none;
}
.p-hero__center{ text-align:center; position:relative; z-index:10; }
.p-hero__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:32px; /* mb-8 */
  padding:6px 16px; /* px-4 py-1.5 */
  border-radius:9999px;
  border:1px solid rgba(6,182,212,0.30);
  background: rgba(6,182,212,0.05);
  color: var(--neon-cyan);
  font-size:10px;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:0.1em;
}
.p-hero__badgeDot{
  width:6px; height:6px; border-radius:9999px;
  background: var(--neon-cyan);
  animation: p-pulse 2s infinite;
}
@keyframes p-pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.55; } }

.p-hero__h1{
  margin:0 0 24px;
  font-weight:700;
  letter-spacing:-0.025em; /* tracking-tight */
  line-height:1.1; /* leading-[1.1] */
  font-size:36px; /* text-4xl */
  color:#fff;
}
@media (min-width:768px){ .p-hero__h1{ font-size:60px; } } /* md:text-6xl */
@media (min-width:1280px){ .p-hero__h1{ font-size:72px; } } /* xl:text-7xl */
.p-hero__grad{
  background: linear-gradient(to right, var(--neon-cyan), var(--neon-blue));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.p-hero__lead{
  margin:0 auto 40px; /* mb-10 */
  max-width:672px; /* max-w-2xl */
  font-size:18px; /* text-lg */
  color:#94a3b8; /* slate-400 */
  font-weight:300; /* font-light */
  line-height:1.625; /* leading-relaxed */
}
.p-hero__ctas{
  display:flex;
  flex-direction:column;
  gap:16px; /* gap-4 */
  justify-content:center;
  margin-bottom:80px; /* mb-20 */
}
@media (min-width:640px){ .p-hero__ctas{ flex-direction:row; } }
.p-btn-primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 32px; /* px-8 py-4 */
  background: var(--neon-cyan);
  color:#000;
  font-weight:700;
  font-size:14px; /* text-sm */
  text-transform:uppercase;
  letter-spacing:0.05em; /* tracking-wide */
  border-radius:2px; /* rounded-sm */
  box-shadow: 0 0 40px rgba(6,182,212,0.25);
  transition: transform .2s, background-color .2s, box-shadow .2s;
}
.p-btn-primary:hover{
  background:#22d3ee; /* cyan-400-ish */
  transform: translateY(-4px); /* -translate-y-1 */
}
.p-btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:16px 32px;
  border:1px solid rgba(255,255,255,0.20);
  color:#fff;
  font-weight:700;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:0.05em;
  border-radius:2px;
  background: transparent;
  transition: background-color .2s;
}
.p-btn-secondary:hover{ background: rgba(255,255,255,0.05); }

/* Browser mockup */
.p-mockWrap{ position:relative; max-width:1024px; margin:0 auto; }
.p-mockSection{
  background: var(--deep-900);
  padding:0 0 128px;
  border-bottom:1px solid rgba(255,255,255,0.05);
}
.p-browser{
  background: var(--deep-800);
  border-radius:8px; /* rounded-lg */
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.10);
  position:relative;
  z-index:10;
  transform: translateZ(0);
  transition: transform 0.7s;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.1), 0 40px 80px -20px rgba(0,0,0,0.5);
}
.p-browser:hover{ transform: scale(1.01); }
.p-browser__bar{
  height:36px; /* h-9 */
  background: rgba(0,0,0,0.40);
  border-bottom:1px solid rgba(255,255,255,0.10);
  display:flex;
  align-items:center;
  padding:0 16px;
  gap:8px;
}
.p-browser__dots{ display:flex; gap:6px; }
.p-browser__dot{ width:10px; height:10px; border-radius:9999px; background:#475569; }
.p-browser__urlWrap{ flex:1; text-align:center; }
.p-browser__url{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:2px 12px; /* py-0.5 px-3 */
  border-radius:6px;
  background: rgba(0,0,0,0.30);
  border:1px solid rgba(255,255,255,0.05);
  font-size:9px;
  color:#94a3b8;
}
.p-browser__url i{ color: var(--neon-cyan); }
.p-browser__img{ display:block; width:100%; height:auto; opacity:0.90; transition: opacity 0.7s; }
.p-browser:hover .p-browser__img{ opacity:1; }
.p-browser__shade{
  position:absolute; inset:0;
  background: linear-gradient(to top, var(--deep-900), transparent);
  opacity:0.50;
  pointer-events:none;
}

/* SOCIAL PROOF */
.p-proof{ background: var(--deep-900); border-bottom:1px solid rgba(255,255,255,0.05); padding:48px 0; color:#fff; }
.p-proof__kicker{
  font-size:10px;
  font-family: "JetBrains Mono", monospace;
  color:#475569; /* slate-600 */
  text-transform:uppercase;
  letter-spacing:0.1em;
  margin:0 0 24px;
}
.p-proof__logos{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:64px; /* gap-16 */
  opacity:0.75;
  filter: grayscale(0.65);
  transition: all .5s;
}
.p-proof__logos:hover{ opacity:1; filter: grayscale(0); }
.p-proof__logo{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:20px;
  font-weight:700;
  color:#fff;
}
.p-proof__logoText{ display:flex; flex-direction:column; line-height:1.1; }
.p-proof__logoMain{ font-size:16px; font-weight:800; }
.p-proof__logoDesc{ font-size:11px; color:#64748b; font-weight:600; letter-spacing:0.02em; }

/* VIDEO */
.p-video{ padding:96px 0; background: var(--deep-950); position:relative; overflow:hidden; }
.p-video__bg{ position:absolute; inset:0; z-index:0; }
.p-video__bgImg{ width:100%; height:100%; object-fit:cover; opacity:0.20; filter: blur(4px); transform: scale(1.10); }
.p-video__bgShade{ position:absolute; inset:0; background: rgba(2,4,8,0.80); }
.p-video__inner{ position:relative; z-index:10; text-align:center; }
.p-video__h2{ margin:0 0 32px; color:#fff; font-size:30px; font-weight:700; }
.p-player{
  position:relative;
  aspect-ratio: 16 / 9;
  background:#000;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.10);
  box-shadow: 0 25px 50px rgba(0,0,0,0.35);
  overflow:hidden;
  cursor:pointer;
}
.p-player__img{ width:100%; height:100%; object-fit:cover; opacity:0.60; transition: opacity .5s; }
.p-player:hover .p-player__img{ opacity:0.80; }
.p-player__playWrap{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.p-player__play{
  width:80px; height:80px;
  background: rgba(255,255,255,0.10);
  backdrop-filter: blur(12px);
  border-radius:9999px;
  display:flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,0.20);
  transition: transform .3s;
}
.p-player:hover .p-player__play{ transform: scale(1.10); }
.p-player__play i{ font-size:40px; color:#fff; margin-left:4px; }
.p-player__footer{
  position:absolute;
  left:16px; right:16px; bottom:16px;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
}
.p-player__meta{ text-align:left; }
.p-player__metaTitle{ font-size:12px; font-weight:700; color:#fff; margin:0 0 4px; }
.p-player__metaSub{ font-size:10px; color:#94a3b8; font-family:"JetBrains Mono", monospace; }
.p-player__tag{
  padding:4px 8px;
  background: rgba(0,0,0,0.50);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:4px;
  font-size:10px;
  font-weight:700;
  color:#fff;
}

/* FEATURES */
.p-features{ background: var(--deep-900); padding:96px 0; border-top:1px solid rgba(255,255,255,0.05); }
.p-features__stack{ display:flex; flex-direction:column; gap:128px; }
.p-feature{
  display:grid;
  grid-template-columns: 1fr;
  gap:64px;
  align-items:center;
}
@media (min-width:1024px){ .p-feature{ grid-template-columns: 1fr 1fr; } }
.p-feature__imgBox{ position:relative; border-radius:8px; overflow:hidden; border:1px solid rgba(255,255,255,0.10); }
.p-feature__img{ width:100%; height:auto; display:block; opacity:0.82; filter: grayscale(0.65); transition: all .5s; }
.p-feature__imgBox:hover .p-feature__img{ opacity:1; filter: grayscale(0); }
.p-feature__imgShade{ position:absolute; inset:0; background: linear-gradient(to top, rgba(0,0,0,0.80), transparent); }
.p-feature__card{
  position:absolute;
  left:24px; right:24px; bottom:24px;
  background: var(--deep-800);
  border:1px solid rgba(245,158,11,0.30);
  padding:16px;
  border-radius:8px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.45);
}
.p-feature__cardTop{ display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:8px; }
.p-feature__cardTitle{ font-size:12px; font-weight:700; color:#fff; }
.p-feature__cardTitle i{ color: var(--neon-warn); margin-right:8px; }
.p-feature__cardTag{ font-size:9px; font-family:"JetBrains Mono", monospace; color:#64748b; }
.p-feature__cardDesc{ font-size:10px; color:#94a3b8; }

.p-feature__kicker{
  color: var(--neon-cyan);
  font-family:"JetBrains Mono", monospace;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:0.1em;
  margin-bottom:16px;
}
.p-feature__h2{ margin:0 0 24px; font-size:36px; color:#fff; }
@media (min-width:768px){ .p-feature__h2{ font-size:40px; } }
.p-feature__p{ margin:0; color:#94a3b8; }
.p-feature__rich{ color:#94a3b8; line-height:1.7; }
.p-feature__rich p{ margin:0 0 12px; }
.p-feature__rich p:last-child{ margin-bottom:0; }
.p-feature__list{ margin-top:16px; padding:0; list-style:none; }
.p-feature__li{ display:flex; align-items:center; gap:12px; color:#64748b; font-size:14px; margin-top:8px; }
.p-feature__li i{ color: var(--neon-cyan); }

/* ZIGZAG (product) */
.p-zigzag{
  background: var(--deep-900);
  padding:120px 0;
  border-top:1px solid rgba(255,255,255,0.05);
  border-bottom:1px solid rgba(255,255,255,0.05);
}
.p-zigzag .p-feature{
  gap:88px;
  margin-bottom:120px;
}
.p-zigzag .p-feature:last-child{ margin-bottom:0; }
.p-zigzag .p-feature__h2{
  font-size:44px;
  line-height:1.15;
  letter-spacing:-0.02em;
  margin-bottom:18px;
}
@media (min-width:768px){ .p-zigzag .p-feature__h2{ font-size:52px; } }
.p-zigzag .p-feature__kicker{ margin-bottom:12px; }
.p-zigzag .p-feature__li{ color:#94a3b8; font-size:15px; }
.p-zigzag .p-feature__imgBox{ border-radius:12px; }
.p-zigzag .p-code{ border-radius:12px; }

.p-code{
  margin:0;
  padding:20px;
  border-radius:12px;
  background: rgba(15, 23, 42, 0.85);
  border: 1px solid rgba(255,255,255,0.10);
  color:#e2e8f0;
  overflow:auto;
  box-shadow: 0 20px 50px rgba(0,0,0,0.35);
}
.p-code code{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size:13px; }

/* Feature 2 "matrix" */
.p-matrix{
  position:relative;
  background: var(--deep-800);
  border:1px solid rgba(255,255,255,0.10);
  padding:32px;
  border-radius:8px;
  box-shadow: 0 25px 50px rgba(0,0,0,0.35);
  overflow:hidden;
}
.p-matrix__icon{
  position:absolute;
  top:0; right:0;
  padding:16px;
  opacity:0.10;
}
.p-matrix__icon i{ font-size:64px; color:#fff; }
.p-matrix__grid{
  display:grid;
  grid-template-columns: repeat(5, 1fr);
  gap:4px;
  margin-bottom:24px;
}
.p-matrix__cell{ height:32px; border-radius:2px; }
.p-matrix__cell.green{ background: rgba(16,185,129,0.20); }
.p-matrix__cell.yellow{ background: rgba(245,158,11,0.20); }
.p-matrix__cell.red{ background: rgba(244,63,94,0.20); }
.p-matrix__cell.selected{
  border:1px solid #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  font-weight:700;
  color:#fff;
}
.p-matrix__footer{
  border-top:1px solid rgba(255,255,255,0.10);
  padding-top:16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.p-matrix__label{ font-size:12px; color:#94a3b8; font-family:"JetBrains Mono", monospace; }
.p-matrix__value{ font-size:24px; font-weight:700; color: var(--neon-alert); }
.p-matrix__value small{ font-size:10px; font-weight:400; color:#64748b; }

/* ROI */
.p-roi{ padding:96px 0; background: var(--concrete-50); color: var(--concrete-800); }
.p-roi__head{ text-align:center; margin-bottom:64px; }
.p-roi__h2{ margin:0 0 8px; font-size:30px; font-weight:700; color: var(--concrete-900); }
.p-roi__sub{ margin:0; color:#64748b; }
.p-roi__box{
  background: var(--deep-800);
  border-radius:8px;
  padding:40px;
  color:#fff;
  box-shadow: 0 25px 50px rgba(0,0,0,0.35);
  display:flex;
  flex-direction:column;
  gap:48px;
}
@media (min-width:768px){ .p-roi__box{ flex-direction:row; } }
.p-roi__half{ flex:1; }
.p-roi__group{ margin-bottom:32px; }
.p-roi__label{
  display:flex; justify-content:space-between;
  font-size:12px; font-weight:700;
  color:#94a3b8; text-transform:uppercase;
  letter-spacing:0.1em;
  margin-bottom:16px;
}
.p-roi__label .val{ color: var(--neon-cyan); }
.p-range{
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  background: transparent;
}
.p-range::-webkit-slider-thumb{
  -webkit-appearance:none;
  height:24px; width:24px;
  border-radius:9999px;
  background: var(--neon-cyan);
  cursor:pointer;
  margin-top:-10px;
  box-shadow: 0 0 15px rgba(6,182,212,0.5);
}
.p-range::-webkit-slider-runnable-track{
  width:100%;
  height:4px;
  cursor:pointer;
  background:#334155;
  border-radius:2px;
}
.p-range::-moz-range-thumb{
  height:24px; width:24px;
  border-radius:9999px;
  background: var(--neon-cyan);
  cursor:pointer;
  box-shadow: 0 0 15px rgba(6,182,212,0.5);
  border:none;
}
.p-range::-moz-range-track{
  height:4px;
  background:#334155;
  border-radius:2px;
}
.p-roi__result{
  background: rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:8px;
  padding:24px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
}
.p-roi__resLabel{ color:#94a3b8; margin-bottom:8px; }
.p-roi__resVal{ font-size:48px; font-weight:700; color: var(--neon-safe); margin-bottom:8px; }
.p-roi__note{ font-size:10px; color:#64748b; max-width:320px; }

/* Compare table (dark theme for consistency with public product page) */
.p-compare{
  padding:112px 0;
  background: var(--deep-900);
  color:#e2e8f0;
  border-top:1px solid rgba(255,255,255,0.05);
  border-bottom:1px solid rgba(255,255,255,0.05);
}
.p-compare__head{ text-align:center; margin-bottom:56px; }
.p-compare__h2{
  margin:0 0 12px;
  font-size:40px;
  font-weight:800;
  color:#fff;
  letter-spacing:-0.03em;
  line-height:1.1;
}
@media (min-width:768px){ .p-compare__h2{ font-size:46px; } }
.p-compare__sub{
  margin:0 auto;
  max-width:820px;
  color:#94a3b8;
  font-size:16px;
  line-height:1.7;
}
.p-compare__tableWrap{
  background: linear-gradient(180deg, rgba(15,23,42,0.80), rgba(2,6,23,0.65));
  border:1px solid rgba(255,255,255,0.12);
  border-radius:16px;
  overflow:hidden;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.06),
    0 30px 80px rgba(0,0,0,0.45);
}
.p-compare__table{ width:100%; border-collapse:collapse; }
.p-compare__table th,
.p-compare__table td{
  padding:16px 18px;
  border-bottom:1px solid rgba(255,255,255,0.08);
  vertical-align:top;
}
.p-compare__table thead th{
  background: rgba(255,255,255,0.06);
  color:#e2e8f0;
  font-weight:900;
  letter-spacing:0.06em;
  font-size:12px;
  text-transform:uppercase;
}
.p-compare__table tbody th{
  color:#fff;
  font-weight:800;
  width:42%;
  letter-spacing:0.01em;
  font-size:13px;
  text-transform:uppercase;
}
.p-compare__table td{
  color:#94a3b8;
  font-size:14px;
  line-height:1.6;
}
.p-compare__table tbody tr:hover th,
.p-compare__table tbody tr:hover td{
  background: rgba(255,255,255,0.05);
}
.p-compare__table tbody td:nth-child(2){ color:#cbd5e1; }
.p-compare__table tbody td:nth-child(3){ color:#a7f3d0; }
.p-compare__table tbody td:nth-child(2)::before{
  content:"✕";
  display:inline-block;
  width:18px;
  color:#fb7185;
  font-weight:900;
  margin-right:8px;
}
.p-compare__table tbody td:nth-child(3)::before{
  content:"✓";
  display:inline-block;
  width:18px;
  color:#34d399;
  font-weight:900;
  margin-right:8px;
}
.p-compare__table tbody tr:nth-child(even) th,
.p-compare__table tbody tr:nth-child(even) td{ background: rgba(255,255,255,0.03); }
.p-compare__table tr:last-child th,
.p-compare__table tr:last-child td{ border-bottom:none; }

/* PROCESS */
.p-process{ padding:96px 0; background:#fff; border-top:1px solid var(--concrete-200); }
.p-process__h2{ text-align:center; font-size:30px; font-weight:700; color: var(--concrete-900); margin:0 0 64px; }
.p-process__wrap{ position:relative; }
.p-process__line{ display:none; position:absolute; top:24px; left:0; width:100%; height:4px; background: var(--concrete-100); border-radius:9999px; }
@media (min-width:768px){ .p-process__line{ display:block; } }
.p-process__grid{ display:grid; grid-template-columns:1fr; gap:32px; }
@media (min-width:768px){ .p-process__grid{ grid-template-columns: repeat(4, 1fr); } }
.p-step{ position:relative; padding-top:48px; text-align:center; }
@media (min-width:768px){ .p-step{ padding-top:64px; text-align:left; } }
.p-step__dot{
  position:absolute;
  top:0;
  left:50%;
  transform: translateX(-50%);
  width:48px; height:48px;
  border-radius:9999px;
  display:flex; align-items:center; justify-content:center;
  font-weight:700;
  border:4px solid #fff;
  z-index:10;
}
@media (min-width:768px){
  .p-step__dot{ left:0; transform:none; }
}
.p-step__dot.dark{ background: var(--concrete-900); color:#fff; }
.p-step__dot.light{ background: var(--concrete-100); color:#64748b; }
.p-step__dot.cyan{ background: var(--neon-cyan); color:#000; }

/* Points (dark theme) */
.p-points{ padding:104px 0; background: var(--deep-950); border-top:1px solid rgba(255,255,255,0.05); }
.p-points__h2{ text-align:center; font-size:34px; font-weight:750; color:#fff; margin:0 0 56px; letter-spacing:-0.02em; }
.p-points__grid{ display:grid; grid-template-columns:1fr; gap:16px; }
@media (min-width:900px){ .p-points__grid{ grid-template-columns: repeat(3, 1fr); } }
.p-point{
  border:1px solid rgba(255,255,255,0.12);
  border-radius:16px;
  padding:22px;
  background: linear-gradient(180deg, rgba(15,23,42,0.75), rgba(2,6,23,0.62));
  box-shadow: 0 18px 45px rgba(0,0,0,0.28);
  transition: transform .25s, box-shadow .25s, border-color .25s;
}
.p-point:hover{
  transform: translateY(-3px);
  border-color: rgba(6,182,212,0.35);
  box-shadow: 0 28px 70px rgba(0,0,0,0.40);
}
.p-point__icon{ width:42px; height:42px; border-radius:12px; display:flex; align-items:center; justify-content:center; background: rgba(6,182,212,0.12); color: var(--neon-cyan); margin-bottom:12px; }
.p-point__title{ font-weight:800; color:#fff; margin-bottom:6px; }
.p-point__text{ color:#94a3b8; line-height:1.7; }
.p-step__h4{ margin:0 0 8px; font-size:18px; font-weight:700; color: var(--concrete-900); }
.p-step__p{ margin:0; font-size:14px; color:#64748b; }

/* FAQ (light theme) */
.p-faq{ padding:96px 0; background: var(--concrete-50); border-top:1px solid var(--concrete-200); }
.p-faq__h2{
  text-align:center;
  margin:0 0 48px;
  font-size:34px;
  font-weight:800;
  color: var(--concrete-900);
  letter-spacing:-0.02em;
}
.p-accordion{ display:flex; flex-direction:column; gap:16px; }
.p-details{
  border:1px solid var(--concrete-200);
  border-radius:12px;
  background:#fff;
  box-shadow: 0 18px 40px rgba(15,23,42,0.06);
  transition: box-shadow .2s, transform .2s, border-color .2s;
}
.p-details:hover{
  transform: translateY(-1px);
  box-shadow: 0 28px 70px rgba(15,23,42,0.10);
}
.p-details[open]{ border-color: rgba(6,182,212,0.45); box-shadow: 0 0 0 2px rgba(6,182,212,0.20), 0 28px 70px rgba(15,23,42,0.10); }
.p-summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:24px;
  font-weight:800;
  color: var(--concrete-800);
  cursor:pointer;
  list-style:none;
}
.p-summary::-webkit-details-marker{ display:none; }
.p-summary:hover{ color: var(--neon-blue); }
.p-details__body{
  padding:0 24px 24px;
  font-size:14px;
  color:#64748b;
  line-height:1.7;
}
.p-chevron{ transition: transform .2s; }
.p-details[open] .p-chevron{ transform: rotate(180deg); }

/* CTA */
.p-cta{
  padding:128px 0;
  background: var(--deep-950);
  position:relative;
  overflow:hidden;
  text-align:center;
  color:#fff;
}

/* Product rich_text */
.p-rich{ padding:96px 0; border-top:1px solid rgba(255,255,255,0.05); }
.p-rich--dark{ background: var(--deep-900); color:#e2e8f0; }
.p-rich--dark .p-rich__content{ color:#cbd5e1; }
.p-rich--dark .p-rich__content h2,
.p-rich--dark .p-rich__content h3{ color:#fff; }
.p-rich--dark .p-rich__content a{ color: var(--neon-cyan); }
.p-rich--light{ background: var(--concrete-50); border-top:1px solid var(--concrete-200); color: var(--concrete-900); }
.p-rich__content{ line-height:1.75; font-size:16px; }
.p-rich__content p{ margin:0 0 14px; }
.p-rich__content p:last-child{ margin-bottom:0; }
.p-rich__content ul, .p-rich__content ol{ margin: 12px 0 16px 20px; }
.p-rich__content li{ margin: 6px 0; }
.p-cta__glow{ position:absolute; inset:0; background: var(--cta-glow); opacity:0.20; pointer-events:none; }
.p-cta__inner{ position:relative; z-index:10; }
.p-cta__h2{ margin:0 0 24px; font-size:48px; font-weight:700; color:#fff; }
@media (min-width:768px){ .p-cta__h2{ font-size:56px; } }
.p-cta__p{ margin:0 0 40px; font-size:18px; color:#94a3b8; }
.p-cta__note{ margin-top:24px; font-size:12px; color:#64748b; font-family:"JetBrains Mono", monospace; }

/* FOOTER */
.p-footer{
  background: var(--deep-950);
  border-top:1px solid rgba(255,255,255,0.10);
  padding:48px 0;
  text-align:center;
  color:#64748b;
  font-size:12px;
  font-family:"JetBrains Mono", monospace;
}


