:root {
  --q-blue: #2D5BFF;
  --q-blue-2: #3B82F6;
  --q-dark: #030712;
  --q-navy: #0A1931;
  --q-text: #0F172A;
  --q-muted: #64748B;
  --q-soft: #F8FAFC;
  --q-card: #FFFFFF;
  --q-border: #E2E8F0;
  --q-success: #10B981;
  --q-danger: #EF4444;
  --q-warning: #F59E0B;
  --q-radius: 22px;
  --q-shadow: 0 20px 55px rgba(15, 23, 42, 0.10);
  --q-shadow-soft: 0 12px 35px rgba(15, 23, 42, 0.08);
  --card: #F8FAFC;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.qoryia-landing {
  margin: 0;
  font-family: Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--q-text);
  background: #FFFFFF;
  line-height: 1.6;
  overflow-x: hidden;
}
body.qoryia-landing a { color: inherit; text-decoration: none; }
body.qoryia-landing button,
body.qoryia-landing input,
body.qoryia-landing textarea,
body.qoryia-landing select { font: inherit; }
body.qoryia-landing img { max-width: 100%; height: auto; }

.qnav {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  right: 0;
  height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 6vw;
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(226,232,240,.8);
  transition: box-shadow .2s ease, background .2s ease;
}
.qnav.is-scrolled { background: rgba(255,255,255,.96); box-shadow: 0 10px 35px rgba(15,23,42,.08); }
.qnav-left, .qnav-right, .qnav-links { display: flex; align-items: center; }
.qnav-left { gap: 2rem; }
.qnav-logo, .footer-logo {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  flex: 0 0 auto;
}
.qoryia-logo-c {
  display: inline-flex;
  align-items: center;
  gap: .52rem;
  line-height: 1;
  white-space: nowrap;
}
.qoryia-logo-c__mark {
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  border-radius: 50%;
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  gap: 2.5px;
  padding: 7px 6px;
  background: linear-gradient(145deg,#7C3AED 0%,#4F46E5 46%,#2D5BFF 100%);
  box-shadow: 0 7px 18px rgba(79,70,229,.24), inset 0 1px 0 rgba(255,255,255,.22);
}
.qoryia-logo-c__bar {
  display: block;
  width: 3.4px;
  background: #fff;
  border-radius: 4px 4px 1px 1px;
  transform-origin: bottom;
}
.qoryia-logo-c__bar--1 { height: 8px; opacity: .78; }
.qoryia-logo-c__bar--2 { height: 12px; opacity: .9; }
.qoryia-logo-c__bar--3 { height: 17px; }
.qoryia-logo-c__word {
  display: inline-flex;
  align-items: baseline;
  font-family: Manrope, system-ui, sans-serif;
  font-size: 1.52rem;
  font-weight: 900;
  letter-spacing: -.075em;
  line-height: .95;
}
.qoryia-logo-c__primary { color: #4F46E5; }
.qoryia-logo-c__secondary {
  color: var(--q-dark);
  margin-left: -.105em;
}
.qoryia-logo-c--light .qoryia-logo-c__primary { color: #A5B4FC; }
.qoryia-logo-c--light .qoryia-logo-c__secondary { color: #FFFFFF; }
.footer-logo .qoryia-logo-c__mark { box-shadow: 0 7px 20px rgba(45,91,255,.32), inset 0 1px 0 rgba(255,255,255,.2); }
.qnav-links { list-style: none; margin: 0; padding: 0; gap: 1.3rem; }
.qnav-links a {
  font-size: .88rem;
  color: #475569;
  font-weight: 600;
  transition: color .2s ease;
}
.qnav-links a:hover { color: var(--q-blue); }
.qnav-right { gap: .85rem; }
.qnav-login {
  color: #334155;
  font-size: .9rem;
  font-weight: 700;
  padding: .7rem .95rem;
  border-radius: 999px;
}
.qnav-login:hover { background: #F1F5F9; }
.qnav-cta, .cta-main, .pc-cta, .cf-submit {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: 0;
  background: linear-gradient(135deg,var(--q-blue),var(--q-blue-2));
  color: #fff !important;
  font-weight: 800;
  border-radius: 999px;
  padding: .85rem 1.25rem;
  box-shadow: 0 12px 28px rgba(45,91,255,.25);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.qnav-cta:hover, .cta-main:hover, .pc-cta:hover, .cf-submit:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(45,91,255,.30); }
.qnav-hamburger { display: none; width: 44px; height: 44px; border: 0; background: #F1F5F9; border-radius: 12px; padding: 10px; cursor: pointer; }
.qnav-hamburger span { display: block; height: 2px; background: #0F172A; margin: 5px 0; border-radius: 99px; transition: transform .2s ease, opacity .2s ease; }
.qnav-hamburger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.qnav-hamburger.is-open span:nth-child(2) { opacity: 0; }
.qnav-hamburger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.qnav-mobile {
  display: none;
  position: fixed;
  z-index: 998;
  left: 14px;
  right: 14px;
  top: 88px;
  padding: 1rem;
  border: 1px solid var(--q-border);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--q-shadow);
}
.qnav-mobile.is-open { display: block; }
.qnav-mobile ul { list-style: none; margin: 0; padding: 0; }
.qnav-mobile li a { display: block; padding: .8rem .5rem; color: #334155; font-weight: 700; border-bottom: 1px solid #F1F5F9; }
.mobile-btns { display: grid; gap: .6rem; margin-top: .8rem; }

.hero {
  position: relative;
  min-height: 760px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 7rem 6vw 5rem;
  background:
    radial-gradient(circle at 20% 20%, rgba(45,91,255,.14), transparent 28%),
    radial-gradient(circle at 80% 15%, rgba(139,92,246,.13), transparent 26%),
    linear-gradient(180deg,#F8FBFF 0%,#FFFFFF 82%);
  overflow: hidden;
}
.hero-inner { position: relative; z-index: 2; max-width: 1050px; text-align: center; }
.orb { position: absolute; border-radius: 999px; filter: blur(2px); opacity: .75; pointer-events: none; }
.orb1 { width: 220px; height: 220px; top: 18%; left: -80px; background: rgba(45,91,255,.12); }
.orb2 { width: 280px; height: 280px; right: -120px; top: 16%; background: rgba(139,92,246,.12); }
.orb3 { width: 150px; height: 150px; left: 60%; bottom: 8%; background: rgba(16,185,129,.10); }
.hero-badge {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-bottom: 1.3rem;
  padding: .55rem .9rem;
  border: 1px solid rgba(45,91,255,.16);
  border-radius: 999px;
  background: rgba(255,255,255,.75);
  color: #1E40AF;
  font-weight: 800;
  font-size: .82rem;
  box-shadow: 0 10px 25px rgba(15,23,42,.06);
}
.badge-dot { width: 9px; height: 9px; border-radius: 999px; background: var(--q-success); box-shadow: 0 0 0 5px rgba(16,185,129,.12); }
.hero h1 {
  font-family: Manrope, system-ui, sans-serif;
  font-size: clamp(2.25rem, 4.4vw, 4.4rem);
  line-height: 1.05;
  margin: 0 auto 1.25rem;
  letter-spacing: -0.055em;
  color: var(--q-dark);
  max-width: 1100px;
}
.hero .accent { color: var(--q-blue); }
.hero p {
  max-width: 850px;
  margin: 0 auto;
  color: #475569;
  font-size: clamp(1rem, 1.7vw, 1.2rem);
}
.hero-ctas, .cta-btns { display: flex; justify-content: center; flex-wrap: wrap; gap: .9rem; margin-top: 2rem; }
.cta-main, .cta-sec { min-height: 52px; padding-inline: 1.45rem; }
.cta-sec {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--q-border);
  background: #FFFFFF;
  color: #0F172A;
  font-weight: 800;
  border-radius: 999px;
  padding: .85rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15,23,42,.07);
  transition: transform .18s ease, border-color .18s ease;
}
.cta-sec:hover { transform: translateY(-2px); border-color: rgba(45,91,255,.35); }
.hero-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin: 3rem auto 0;
  max-width: 890px;
}
.stat-item {
  padding: 1.25rem 1rem;
  border: 1px solid rgba(226,232,240,.85);
  border-radius: 20px;
  background: rgba(255,255,255,.76);
  box-shadow: 0 10px 28px rgba(15,23,42,.06);
}
.stat-num { font-family: Manrope, system-ui, sans-serif; font-size: 1.65rem; font-weight: 900; letter-spacing: -.04em; color: var(--q-blue); }
.stat-label { margin-top: .2rem; color: #64748B; font-size: .78rem; font-weight: 700; }

.logos-bar { padding: 2rem 6vw; background: #fff; border-top: 1px solid #F1F5F9; border-bottom: 1px solid #F1F5F9; text-align: center; }
.logos-bar p { margin: 0 0 1rem; color: #94A3B8; font-size: .8rem; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; }
.logos-row { display: flex; justify-content: center; flex-wrap: wrap; gap: .9rem; }
.logo-item { color: #64748B; font-weight: 900; background: #F8FAFC; border: 1px solid #E2E8F0; padding: .7rem 1rem; border-radius: 999px; }

section { padding: 5.5rem 6vw; }
.sec-inner { max-width: 1180px; margin: 0 auto; }
.sec-label { color: var(--q-blue); font-weight: 900; text-transform: uppercase; letter-spacing: .14em; font-size: .78rem; margin-bottom: .65rem; }
.sec-title {
  font-family: Manrope, system-ui, sans-serif;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1.05;
  letter-spacing: -.055em;
  margin: 0;
  color: var(--q-dark);
  max-width: 880px;
}
.sec-bar { width: 74px; height: 5px; border-radius: 999px; background: linear-gradient(90deg,var(--q-blue),#7C3AED); margin: .9rem 0 1rem; }
.sec-sub { max-width: 740px; color: #64748B; font-size: 1rem; }

.tests-grid, .pricing-grid, .testi-grid, .faq-grid { display: grid; gap: 1.25rem; margin-top: 3rem; }
.test-card, .price-card, .testi-card, .faq-card, .feat-item, .dp-metric, .contact-form {
  background: var(--q-card);
  border: 1px solid var(--q-border);
  border-radius: var(--q-radius);
  box-shadow: var(--q-shadow-soft);
}
.how-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 92% 12%, rgba(45,91,255,.09), transparent 24%),
    linear-gradient(180deg,#FFFFFF 0%,#F8FAFC 100%);
}
.how-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; }
.how-section-summary { flex: 0 0 auto; min-width: 235px; padding: 1rem 1.15rem; border: 1px solid #DBEAFE; border-radius: 18px; background: #EFF6FF; }
.how-section-summary strong, .how-section-summary span { display: block; }
.how-section-summary strong { color: #1D4ED8; font-family: Manrope,sans-serif; font-size: 1.2rem; }
.how-section-summary span { margin-top: .15rem; color: #64748B; font-size: .72rem; }
.how-process { margin-top: 2.6rem; padding: 1rem; border: 1px solid rgba(148,163,184,.26); border-radius: 32px; background: rgba(255,255,255,.88); box-shadow: 0 28px 75px rgba(15,23,42,.10); }
.how-process-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .25rem .35rem .95rem; }
.how-process-live { display: inline-flex; align-items: center; gap: .55rem; color: #334155; font-size: .73rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.how-process-live > span { width: 9px; height: 9px; border-radius: 999px; background: #10B981; box-shadow: 0 0 0 5px rgba(16,185,129,.12); animation: howLivePulse 2s ease-in-out infinite; }
.how-process-toggle { display: inline-flex; align-items: center; gap: .45rem; min-height: 36px; padding: .48rem .72rem; border: 1px solid #E2E8F0; border-radius: 999px; background: #F8FAFC; color: #475569; cursor: pointer; font-size: .7rem; font-weight: 800; transition: border-color .18s ease,background .18s ease,color .18s ease; }
.how-process-toggle:hover, .how-process-toggle:focus-visible { border-color: #93C5FD; background: #EFF6FF; color: #1D4ED8; outline: none; }
.how-toggle-icon { font-family: Manrope,sans-serif; font-weight: 900; letter-spacing: -.18em; }
.how-step-nav { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4,1fr); gap: .75rem; padding: 1rem 1rem 1.25rem; }
.how-step-track { position: absolute; z-index: -1; top: 34px; left: 13%; right: 13%; height: 3px; overflow: hidden; border-radius: 999px; background: #E2E8F0; }
.how-step-track span { display: block; width: var(--how-progress,0%); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#2D5BFF,#7C3AED); transition: width .55s cubic-bezier(.22,1,.36,1); }
.how-step-tab { display: flex; flex-direction: column; align-items: center; gap: .5rem; border: 0; background: transparent; color: #64748B; cursor: pointer; font: inherit; }
.how-step-node { display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 3px solid #fff; border-radius: 999px; background: #E2E8F0; color: #64748B; box-shadow: 0 0 0 1px #CBD5E1,0 7px 18px rgba(15,23,42,.08); font-family: Manrope,sans-serif; font-size: .78rem; font-weight: 900; transition: transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease; }
.how-step-label { font-size: .72rem; font-weight: 800; transition: color .2s ease; }
.how-step-tab:hover .how-step-node, .how-step-tab:focus-visible .how-step-node { transform: translateY(-2px); box-shadow: 0 0 0 2px #93C5FD,0 10px 22px rgba(30,64,175,.14); }
.how-step-tab:focus-visible { outline: none; }
.how-step-tab.is-complete .how-step-node { background: #DBEAFE; color: #1D4ED8; box-shadow: 0 0 0 1px #93C5FD,0 7px 18px rgba(30,64,175,.12); }
.how-step-tab.is-active .how-step-node { transform: scale(1.12); background: linear-gradient(135deg,#2D5BFF,#7C3AED); color: #fff; box-shadow: 0 0 0 5px rgba(45,91,255,.12),0 12px 28px rgba(45,91,255,.28); }
.how-step-tab.is-active .how-step-label { color: #1D4ED8; }
.how-panels { min-height: 340px; }
.how-panel { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.82fr); gap: clamp(2rem,5vw,4.5rem); align-items: center; min-height: 340px; padding: clamp(2rem,5vw,3.75rem); overflow: hidden; border-radius: 24px; background:
  radial-gradient(circle at 8% 8%, rgba(45,91,255,.08), transparent 31%),
  linear-gradient(135deg,#F8FAFC,#EEF4FF);
}
.how-process.is-ready .how-panel { display: none; }
.how-process.is-ready .how-panel.is-active { display: grid; animation: howPanelIn .48s cubic-bezier(.22,1,.36,1) both; }
.how-panel-kicker { color: #2563EB; font-size: .72rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.how-panel-copy h3 { margin: .7rem 0 0; color: #030712; font-family: Manrope,sans-serif; font-size: clamp(2rem,4vw,3.25rem); line-height: 1.03; letter-spacing: -.055em; }
.how-panel-copy > p { max-width: 610px; margin: 1rem 0 0; color: #475569; font-size: 1rem; line-height: 1.75; }
.how-panel-points { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.5rem; }
.how-panel-points span { position: relative; padding: .48rem .72rem .48rem 1.7rem; border: 1px solid #DBEAFE; border-radius: 999px; background: rgba(255,255,255,.85); color: #334155; font-size: .7rem; font-weight: 800; }
.how-panel-points span:before { content:"✓"; position:absolute; left:.65rem; color:#059669; font-weight:900; }
.how-panel-visual { overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 24px; background: linear-gradient(145deg,#081226,#102B68 58%,#2D5BFF); box-shadow: 0 24px 55px rgba(15,23,42,.24); color: #fff; transform: rotate(1.2deg); }
.how-visual-bar { display: flex; align-items: center; gap: .36rem; padding: .78rem .9rem; border-bottom: 1px solid rgba(255,255,255,.10); background: rgba(3,7,18,.22); }
.how-visual-bar i { width: 7px; height: 7px; border-radius: 999px; background: #60A5FA; }
.how-visual-bar i:nth-child(2) { background: #A78BFA; }
.how-visual-bar i:nth-child(3) { background: #34D399; }
.how-visual-bar span { margin-left: .35rem; color: #BFDBFE; font-size: .62rem; font-weight: 800; letter-spacing: .05em; }
.how-visual-content { display: flex; flex-direction: column; align-items: center; padding: 2.1rem 1.4rem; text-align: center; }
.how-visual-icon { display: flex; align-items: center; justify-content: center; width: 74px; height: 74px; border: 1px solid rgba(255,255,255,.18); border-radius: 23px; background: rgba(255,255,255,.10); box-shadow: inset 0 1px 0 rgba(255,255,255,.12); }
.how-visual-icon svg { width: 38px; height: 38px; fill: none; stroke: #fff; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.how-visual-content small { margin-top: 1.15rem; color: #93C5FD; font-size: .67rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.how-visual-content strong { margin-top: .3rem; font-family: Manrope,sans-serif; font-size: 1.15rem; }
.how-visual-tags { display: flex; flex-wrap: wrap; justify-content: center; gap: .45rem; margin-top: 1.1rem; }
.how-visual-tags span { padding: .38rem .58rem; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; background: rgba(255,255,255,.08); color: #DBEAFE; font-size: .62rem; font-weight: 700; }
.how-process-footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem .5rem .25rem; }
.how-process-counter { display: flex; align-items: center; gap: .65rem; }
.how-process-counter strong { color: #1D4ED8; font-size: .72rem; }
.how-process-counter span { color: #64748B; font-size: .72rem; }
.how-process-note { display: flex; align-items: center; gap: .45rem; color: #64748B; font-size: .7rem; }
.how-process-note > span { display: inline-flex; align-items: center; justify-content: center; width: 19px; height: 19px; border-radius: 999px; background: #DCFCE7; color: #047857; font-size: .66rem; font-weight: 900; }
@keyframes howPanelIn { from { opacity:0; transform:translateY(14px) scale(.985); } to { opacity:1; transform:none; } }
@keyframes howLivePulse { 0%,100% { box-shadow:0 0 0 5px rgba(16,185,129,.12); } 50% { box-shadow:0 0 0 8px rgba(16,185,129,.04); } }

.integrity-section {
  padding-top: 1rem;
  background:
    radial-gradient(circle at 8% 20%, rgba(45,91,255,.08), transparent 30%),
    linear-gradient(180deg,#fff 0%,#F8FAFF 100%);
}
.integrity-shell {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(330px,.85fr);
  gap: 3rem;
  align-items: center;
  padding: clamp(2rem,4vw,4rem);
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 34px;
  background: linear-gradient(135deg,#061126 0%,#10265B 58%,#2D5BFF 130%);
  box-shadow: 0 30px 80px rgba(15,23,42,.18);
  color: #fff;
}
.integrity-shell:before {
  content:"";
  position:absolute;
  width: 520px;
  height: 520px;
  right: -230px;
  top: -260px;
  border-radius: 50%;
  background: radial-gradient(circle,rgba(96,165,250,.28),transparent 66%);
  pointer-events:none;
}
.integrity-intro { position: relative; z-index: 1; }
.integrity-label { color:#93C5FD; font-size:.72rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.integrity-title { max-width: 760px; margin:.75rem 0 0; font-family:Manrope,sans-serif; font-size:clamp(2.25rem,4.5vw,4.6rem); line-height:.98; letter-spacing:-.06em; color:#fff; }
.integrity-sub { max-width: 760px; margin:1.25rem 0 0; color:#D7E3F7; font-size:1rem; line-height:1.75; }
.integrity-trust-note { display:inline-flex; align-items:center; gap:.65rem; margin-top:1.45rem; padding:.65rem .85rem; border:1px solid rgba(255,255,255,.13); border-radius:999px; background:rgba(255,255,255,.08); color:#E0ECFF; font-size:.73rem; font-weight:800; }
.integrity-trust-icon { display:inline-flex; align-items:center; justify-content:center; width:25px; height:25px; border-radius:999px; background:rgba(52,211,153,.16); color:#6EE7B7; }
.integrity-trust-icon svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.integrity-visual { position:relative; z-index:1; min-height:360px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:28px; background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.035)); box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 25px 60px rgba(3,7,18,.28); backdrop-filter:blur(12px); }
.integrity-visual-top { display:flex; align-items:center; gap:.38rem; padding:.9rem 1rem; border-bottom:1px solid rgba(255,255,255,.09); background:rgba(3,7,18,.22); }
.integrity-visual-top i { width:7px; height:7px; border-radius:50%; background:#60A5FA; }
.integrity-visual-top i:nth-child(2) { background:#A78BFA; }
.integrity-visual-top i:nth-child(3) { background:#34D399; }
.integrity-visual-top span { margin-left:.35rem; color:#BFDBFE; font-size:.63rem; font-weight:800; letter-spacing:.05em; }
.integrity-radar { position:relative; width:230px; height:230px; margin:1.5rem auto .65rem; border-radius:50%; background:radial-gradient(circle,rgba(96,165,250,.12),rgba(15,23,42,.08) 62%,rgba(3,7,18,.18)); box-shadow:0 0 60px rgba(45,91,255,.22); }
.integrity-radar:before,.integrity-radar:after { content:""; position:absolute; background:rgba(147,197,253,.16); }
.integrity-radar:before { left:50%; top:7%; width:1px; height:86%; }
.integrity-radar:after { top:50%; left:7%; height:1px; width:86%; }
.integrity-radar-ring { position:absolute; left:50%; top:50%; border:1px solid rgba(147,197,253,.23); border-radius:50%; transform:translate(-50%,-50%); }
.integrity-radar-ring--1 { width:92%; height:92%; }
.integrity-radar-ring--2 { width:65%; height:65%; }
.integrity-radar-ring--3 { width:38%; height:38%; }
.integrity-radar-sweep { position:absolute; inset:7%; border-radius:50%; background:conic-gradient(from 20deg,transparent 0 73%,rgba(96,165,250,.34) 92%,transparent 100%); animation:integritySweep 5s linear infinite; }
.integrity-radar-dot { position:absolute; width:10px; height:10px; border-radius:50%; background:#6EE7B7; box-shadow:0 0 0 5px rgba(52,211,153,.10),0 0 22px rgba(52,211,153,.8); }
.integrity-radar-dot--1 { top:27%; left:68%; }
.integrity-radar-dot--2 { top:66%; left:31%; background:#FBBF24; box-shadow:0 0 0 5px rgba(251,191,36,.10),0 0 22px rgba(251,191,36,.7); }
.integrity-radar-core { position:absolute; z-index:2; left:50%; top:50%; display:flex; align-items:center; justify-content:center; width:62px; height:62px; border:1px solid rgba(255,255,255,.18); border-radius:20px; background:linear-gradient(145deg,rgba(96,165,250,.32),rgba(124,58,237,.32)); transform:translate(-50%,-50%); box-shadow:0 12px 35px rgba(3,7,18,.35); }
.integrity-radar-core svg { width:32px; height:32px; fill:none; stroke:#fff; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.integrity-status { display:flex; align-items:center; justify-content:center; gap:.55rem; color:#DBEAFE; font-size:.68rem; }
.integrity-status span { width:8px; height:8px; border-radius:50%; background:#34D399; box-shadow:0 0 0 5px rgba(52,211,153,.10); }
.integrity-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:1rem; }
.integrity-card { min-height:190px; padding:1.4rem; border:1px solid #E2E8F0; border-radius:24px; background:#fff; box-shadow:0 14px 38px rgba(15,23,42,.07); }
.integrity-card-icon { display:flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:16px; background:#EEF4FF; color:#2D5BFF; }
.integrity-card-icon svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.integrity-card h3 { margin:1rem 0 .45rem; font-family:Manrope,sans-serif; color:#0F172A; font-size:1rem; font-weight:900; letter-spacing:-.02em; }
.integrity-card p { margin:0; color:#64748B; font-size:.86rem; line-height:1.65; }
@keyframes integritySweep { to { transform:rotate(360deg); } }

.tests-section {
  background:
    radial-gradient(circle at 15% 20%, rgba(45,91,255,.25), transparent 32%),
    radial-gradient(circle at 85% 0%, rgba(139,92,246,.20), transparent 30%),
    linear-gradient(135deg, #030712 0%, #0A1931 100%);
  color: #fff;
}
.tests-section .sec-sub { color: #CBD5E1; }
.tests-grid { grid-template-columns: repeat(3, 1fr); }
.test-card { padding: 1.45rem; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.12); color: #fff; box-shadow: none; backdrop-filter: blur(10px); }
.test-card:hover { transform: translateY(-4px); transition: transform .18s ease; }
.test-icon { font-size: 2rem; margin-bottom: .85rem; }
.test-tag { display: inline-flex; align-items: center; border-radius: 999px; padding: .35rem .65rem; font-size: .72rem; font-weight: 900; margin-bottom: .85rem; }
.tag-disc { background: linear-gradient(135deg,#2D5BFF,#60A5FA); color:#fff; }
.tag-wond { background: linear-gradient(135deg,#EF4444,#F87171); color:#fff; }
.tag-thur { background: linear-gradient(135deg,#8B5CF6,#A78BFA); color:#fff; }
.tag-tma { background: linear-gradient(135deg,#10B981,#34D399); color:#fff; }
.tag-16pf { background: linear-gradient(135deg, #6366F1, #8B5CF6); color: #fff; }
.tag-bigfive { background: linear-gradient(135deg, #8B5CF6, #A78BFA); color: #fff; }
.tag-kostick { background: linear-gradient(135deg, #F97316, #F59E0B); color: #fff; }
.tag-eneatipos { background: linear-gradient(135deg, #0F766E, #14B8A6); color: #fff; }
.test-name { font-family: Manrope; font-size: 1.55rem; font-weight: 900; letter-spacing: -.04em; }
.test-full { color: #DBEAFE; font-size: .88rem; font-weight: 800; margin-top: .2rem; }
.test-desc { color: #CBD5E1; font-size: .9rem; margin-top: .75rem; }
.test-meta { display: flex; gap: .6rem; flex-wrap: wrap; color: #E0F2FE; font-size: .78rem; font-weight: 700; margin-top: 1rem; }
.test-card-link { display: inline-flex; margin-top: 1.15rem; color: #fff !important; font-size: .84rem; font-weight: 900; }
.test-card-link:hover { color: #BFDBFE !important; }

.features-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 2rem; align-items: stretch; }
.feat-list { display: grid; gap: 1rem; }
.feat-item { display: flex; gap: 1rem; padding: 1.2rem; }
.feat-icon-wrap { flex: 0 0 48px; width: 48px; height: 48px; border-radius: 16px; background: #EEF4FF; display: flex; align-items: center; justify-content: center; font-size: 1.35rem; }
.feat-text h4 { margin: 0 0 .35rem; font-family: Manrope; font-weight: 900; color: #0F172A; }
.feat-text p { margin: 0; color: #64748B; font-size: .92rem; }
.dash-preview { background: #0F172A; border: 1px solid rgba(255,255,255,.10); border-radius: 28px; padding: 1rem; box-shadow: var(--q-shadow); color: #fff; }
.dp-header { display: flex; align-items: center; gap: .45rem; padding: .6rem .4rem 1rem; }
.dp-dot { width: 11px; height: 11px; border-radius: 999px; }
.dp-title { margin-left: .6rem; color: #CBD5E1; font-size: .78rem; font-weight: 800; letter-spacing: .04em; }
.dp-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: .8rem; }
.dp-metric { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.10); padding: 1rem; box-shadow: none; }
.dp-m-val { font-family: Manrope; font-size: 1.8rem; font-weight: 900; color: #fff; }
.dp-m-label { color: #CBD5E1; font-size: .78rem; }
.dp-m-change { color: #86EFAC; font-size: .72rem; margin-top: .3rem; }
.dp-bar-section { margin-top: 1rem; padding: 1rem; border-radius: 20px; background: rgba(255,255,255,.05); }
.dp-bar-title { color: #CBD5E1; font-size: .76rem; font-weight: 900; letter-spacing: .08em; margin-bottom: 1rem; }
.dp-bar-row { display: grid; grid-template-columns: 90px 1fr 46px; gap: .7rem; align-items: center; margin: .8rem 0; }
.dp-bar-label, .dp-bar-pct { color: #E2E8F0; font-size: .8rem; font-weight: 800; }
.dp-bar-track { height: 10px; border-radius: 999px; background: rgba(255,255,255,.10); overflow: hidden; }
.dp-bar-fill { height: 100%; border-radius: 999px; }

.pricing-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 18%, rgba(45,91,255,.10), transparent 26%),
    radial-gradient(circle at 94% 38%, rgba(124,58,237,.08), transparent 25%),
    linear-gradient(180deg,#F8FAFC 0%,#EEF4FF 54%,#F8FAFC 100%);
}
.pricing-section:before,
.pricing-section:after {
  content: "";
  position: absolute;
  z-index: -1;
  border: 1px solid rgba(45,91,255,.10);
  border-radius: 999px;
}
.pricing-section:before { width: 440px; height: 440px; left: -260px; top: 160px; }
.pricing-section:after { width: 620px; height: 620px; right: -390px; top: 520px; }
.pricing-section .sec-title { max-width: 820px; margin-inline: auto; }
.pricing-section .sec-sub { max-width: 800px; color: #475569; }
.pricing-showcase { max-width: 1080px; margin: 3.25rem auto 0; }
.pricing-plan-card {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(330px,.75fr);
  overflow: hidden;
  border: 1px solid rgba(45,91,255,.18);
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 30px 85px rgba(30,64,175,.16);
}
.pricing-plan-copy { padding: clamp(2rem,4vw,3.35rem); }
.pricing-plan-kicker {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: #1D4ED8;
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.pricing-plan-kicker span { width: 8px; height: 8px; border-radius: 999px; background: var(--q-blue); box-shadow: 0 0 0 5px rgba(45,91,255,.10); }
.pricing-plan-copy h3 { margin: .75rem 0 0; color: #0F172A; font-family: Manrope,sans-serif; font-size: clamp(2.15rem,4vw,3.25rem); line-height: 1; letter-spacing: -.055em; }
.pricing-plan-lead { max-width: 590px; margin: .9rem 0 0; color: #64748B; font-size: 1rem; }
.pricing-plan-features { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.15rem 1.5rem; margin-top: 2rem; }
.pricing-feature { display: flex; gap: .75rem; align-items: flex-start; }
.pricing-feature-icon { flex: 0 0 25px; display: inline-flex; align-items: center; justify-content: center; width: 25px; height: 25px; margin-top: .1rem; border-radius: 999px; background: #DCFCE7; color: #047857; font-size: .78rem; font-weight: 900; }
.pricing-feature strong { display: block; color: #0F172A; font-size: .88rem; }
.pricing-feature small { display: block; margin-top: .15rem; color: #64748B; font-size: .76rem; line-height: 1.45; }
.pricing-plan-offer {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(2rem,4vw,3.25rem);
  background:
    radial-gradient(circle at 90% 5%, rgba(96,165,250,.38), transparent 32%),
    linear-gradient(145deg,#0A1931 0%,#1737A4 55%,#2D5BFF 100%);
  color: #fff;
}
.pricing-plan-offer:before { content:""; position:absolute; width:180px; height:180px; right:-110px; bottom:-110px; border:1px solid rgba(255,255,255,.18); border-radius:999px; }
.pricing-offer-label { color: #BFDBFE; font-size: .75rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.pricing-offer-price { margin-top: .7rem; font-family: Manrope,sans-serif; font-size: clamp(3.4rem,6vw,5.1rem); font-weight: 900; line-height: .95; letter-spacing: -.075em; }
.pricing-offer-price span { font-family: Poppins,sans-serif; font-size: .9rem; font-weight: 800; letter-spacing: .08em; vertical-align: top; }
.pricing-offer-period { margin-top: .45rem; color: #DBEAFE; font-size: .92rem; }
.pricing-credit-highlight { display: flex; align-items: center; gap: .85rem; margin-top: 1.6rem; padding: .85rem 1rem; border: 1px solid rgba(255,255,255,.18); border-radius: 18px; background: rgba(255,255,255,.10); backdrop-filter: blur(8px); }
.pricing-credit-highlight strong { font-family: Manrope,sans-serif; font-size: 2.15rem; line-height: 1; }
.pricing-credit-highlight span { color: #E0E7FF; font-size: .78rem; font-weight: 700; line-height: 1.4; }
.pricing-main-cta { position: relative; margin-top: 1.25rem; background: #fff; color: #1D4ED8 !important; box-shadow: 0 15px 32px rgba(3,7,18,.25); }
.pricing-main-cta:hover { box-shadow: 0 19px 38px rgba(3,7,18,.32); }
.pricing-main-cta span { margin-left: .45rem; font-size: 1.2rem; line-height: 1; }
.pricing-provider-pill { display: flex; justify-content: center; align-items: center; gap: .4rem; margin-top: .9rem; color: #DBEAFE; font-size: .7rem; font-weight: 700; }

.credit-packs-panel { margin-top: 2rem; padding: clamp(1.35rem,3vw,2.25rem); border: 1px solid rgba(148,163,184,.28); border-radius: 30px; background: rgba(255,255,255,.82); box-shadow: 0 24px 65px rgba(15,23,42,.10); backdrop-filter: blur(14px); }
.credit-packs-heading { display: flex; justify-content: space-between; gap: 2rem; align-items: flex-end; }
.credit-packs-heading h3 { margin: .65rem 0 0; color: #0F172A; font-family: Manrope,sans-serif; font-size: clamp(1.65rem,3vw,2.35rem); line-height: 1.08; letter-spacing: -.05em; }
.credit-packs-heading p { max-width: 650px; margin: .55rem 0 0; color: #64748B; font-size: .9rem; }
.credit-packs-rule { flex: 0 0 auto; min-width: 170px; padding: .8rem 1rem; border: 1px solid #DBEAFE; border-radius: 16px; background: #EFF6FF; text-align: right; }
.credit-packs-rule strong, .credit-packs-rule span { display: block; }
.credit-packs-rule strong { color: #1D4ED8; font-family: Manrope,sans-serif; font-size: 1rem; }
.credit-packs-rule span { margin-top: .1rem; color: #64748B; font-size: .72rem; }
.qoryia-packs-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-top: 1.75rem; align-items: stretch; }
.credit-pack-card { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 1.35rem; border: 1px solid #E2E8F0; border-radius: 24px; background: #fff; box-shadow: 0 10px 28px rgba(15,23,42,.06); transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.credit-pack-card:hover { transform: translateY(-4px); border-color: #BFDBFE; box-shadow: 0 18px 38px rgba(30,64,175,.12); }
.credit-pack-card.is-featured { border: 1.5px solid rgba(45,91,255,.55); background: linear-gradient(180deg,#F5F8FF 0%,#FFFFFF 48%); box-shadow: 0 18px 45px rgba(45,91,255,.15); }
.credit-pack-badge { position: absolute; top: -13px; right: 1rem; padding: .38rem .72rem; border-radius: 999px; background: linear-gradient(135deg,#2D5BFF,#7C3AED); color: #fff; box-shadow: 0 8px 20px rgba(45,91,255,.25); font-size: .66rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.credit-pack-top { display: flex; align-items: center; gap: .8rem; min-height: 60px; }
.credit-pack-number { flex: 0 0 52px; display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 17px; background: linear-gradient(135deg,#EEF4FF,#DBEAFE); color: #1D4ED8; font-family: Manrope,sans-serif; font-size: 1.25rem; font-weight: 900; }
.is-featured .credit-pack-number { background: linear-gradient(135deg,#2D5BFF,#7C3AED); color: #fff; box-shadow: 0 10px 24px rgba(45,91,255,.20); }
.credit-pack-top h4 { margin: 0; color: #0F172A; font-family: Manrope,sans-serif; font-size: 1.05rem; letter-spacing: -.03em; }
.credit-pack-top p { margin: .15rem 0 0; color: #64748B; font-size: .7rem; line-height: 1.35; }
.credit-pack-price { margin-top: 1.35rem; color: #030712; font-family: Manrope,sans-serif; font-size: 2.25rem; font-weight: 900; line-height: 1; letter-spacing: -.06em; }
.credit-pack-price span { font-family: Poppins,sans-serif; color: #64748B; font-size: .7rem; font-weight: 800; letter-spacing: .07em; vertical-align: top; }
.credit-pack-tax { margin-top: .35rem; color: #64748B; font-size: .75rem; }
.credit-pack-value { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; min-height: 52px; margin-top: 1rem; padding-top: .9rem; border-top: 1px solid #E2E8F0; }
.credit-pack-value span { color: #475569; font-size: .72rem; font-weight: 800; }
.credit-pack-value strong { padding: .28rem .5rem; border-radius: 999px; background: #DCFCE7; color: #047857; font-size: .62rem; font-weight: 900; white-space: nowrap; }
.credit-pack-cta { min-height: 46px; margin-top: 1rem; padding: .7rem 1rem; font-size: .78rem; box-shadow: 0 10px 24px rgba(45,91,255,.18); }
.pricing-volume-banner { display: flex; align-items: center; gap: 1rem; margin-top: 1.2rem; padding: 1rem 1.15rem; overflow: hidden; border-radius: 20px; background: linear-gradient(115deg,#0A1931,#1737A4 72%,#2D5BFF); color: #fff; box-shadow: 0 14px 32px rgba(15,23,42,.14); }
.pricing-volume-icon { flex: 0 0 54px; display: flex; align-items: center; justify-content: center; width: 54px; height: 54px; border: 1px solid rgba(255,255,255,.20); border-radius: 16px; background: rgba(255,255,255,.10); font-family: Manrope,sans-serif; font-size: 1rem; font-weight: 900; }
.pricing-volume-banner strong, .pricing-volume-banner span { display: block; }
.pricing-volume-banner strong { font-family: Manrope,sans-serif; font-size: .95rem; }
.pricing-volume-banner span { margin-top: .15rem; color: #DBEAFE; font-size: .78rem; }
.pricing-tax-note { margin: 1rem 0 0; color: #64748B; font-size: .76rem; text-align: center; }
.pricing-grid { grid-template-columns: repeat(3,1fr); align-items: stretch; }
.price-card { position: relative; padding: 1.45rem; display: flex; flex-direction: column; }
.price-card.popular { border-color: rgba(45,91,255,.35); box-shadow: 0 22px 60px rgba(45,91,255,.16); transform: translateY(-8px); }
.pop-badge { position: absolute; right: 1rem; top: -15px; background: var(--q-dark); color: #fff; border-radius: 999px; padding: .45rem .75rem; font-size: .78rem; font-weight: 900; }
.pc-name { font-family: Manrope; font-weight: 900; font-size: 1.3rem; letter-spacing: -.04em; }
.pc-desc { color: #64748B; font-size: .9rem; margin-top: .25rem; }
.pc-price { padding: 1.15rem 0; border-top: 1px solid #E2E8F0; border-bottom: 1px solid #E2E8F0; margin: 1rem 0; }
.pc-amount { font-family: Manrope; font-size: 2rem; font-weight: 900; letter-spacing: -.05em; color: var(--q-dark); }
.pc-period, .pc-paypal { color: #64748B; font-size: .82rem; }
.pc-paypal { margin-top: .45rem; font-weight: 800; color: #334155; }
.pc-feats { list-style: none; margin: 0; padding: 0; display: grid; gap: .68rem; color: #334155; font-size: .9rem; }
.pfi { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; margin-right: .5rem; color: #fff; background: var(--q-success); border-radius: 999px; font-size: .72rem; font-weight: 900; }
.pc-cta { width: 100%; margin-top: auto; margin-top: 1.35rem; min-height: 50px; }

.testi-grid { grid-template-columns: repeat(3,1fr); }
.testi-card { padding: 1.35rem; }
.testi-stars { color: #F59E0B; letter-spacing: .08em; margin-bottom: .9rem; }
.testi-text { color: #334155; font-size: .95rem; }
.testi-author { display: flex; align-items: center; gap: .8rem; margin-top: 1.2rem; }
.testi-avatar { width: 46px; height: 46px; border-radius: 999px; background: linear-gradient(135deg,var(--q-blue),#60A5FA); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:900; }
.testi-name { font-weight: 900; color: #0F172A; }
.testi-role { color: #64748B; font-size: .82rem; }

.faq-grid { grid-template-columns: repeat(2,1fr); }
.faq-card { padding: 1.25rem; box-shadow: none; }
.faq-card h3 { margin: 0 0 .5rem; font-family: Manrope; font-size: 1.05rem; }
.faq-card p { margin: 0; color: #64748B; font-size: .92rem; }

.contact-section { background: #FFFFFF; }
.contact-inner { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: .85fr 1.15fr; gap: 2rem; align-items: center; }
.contact-info h2 { font-family: Manrope; font-size: clamp(2rem,4vw,3.3rem); line-height: 1.08; letter-spacing: -.055em; margin: 0; }
.contact-info p { color: #64748B; }
.contact-detail { display: flex; gap: .85rem; align-items: center; margin-top: 1rem; }
.contact-detail-icon { width: 44px; height: 44px; border-radius: 14px; background: #EEF4FF; display:flex; align-items:center; justify-content:center; }
.contact-detail-text { color: #334155; font-size: .92rem; }
.contact-detail-text strong { display: block; color: #0F172A; }
.contact-form { padding: 1.4rem; }
.cf-title { font-family: Manrope; font-size: 1.45rem; font-weight: 900; letter-spacing: -.04em; }
.cf-sub { color: #64748B; font-size: .9rem; margin-bottom: 1rem; }
.cf-row { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; }
.cf-field { margin-bottom: .9rem; }
.cf-field label { display: block; color: #334155; font-size: .78rem; font-weight: 900; margin-bottom: .3rem; text-transform: uppercase; letter-spacing: .06em; }
.cf-field input, .cf-field textarea, .cf-field select {
  width: 100%;
  border: 1.5px solid #E2E8F0;
  border-radius: 14px;
  padding: .85rem .95rem;
  background: #fff;
  outline: 0;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.cf-field input:focus, .cf-field textarea:focus, .cf-field select:focus { border-color: var(--q-blue); box-shadow: 0 0 0 4px rgba(45,91,255,.10); }
.cf-field textarea { min-height: 120px; resize: vertical; }
.cf-submit { width: 100%; min-height: 52px; }
.cf-submit.is-loading { opacity: .65; cursor: progress; transform: none; }
.cf-success { display: none; text-align: center; padding: 2rem 1rem; }
.cf-success.is-visible { display: block; }
.cf-success-icon { font-size: 2.6rem; }
.cf-success h3 { font-family: Manrope; font-size: 1.6rem; margin: .6rem 0 .2rem; }
.cf-success p { color: #64748B; margin: 0; }

.cta-section {
  background:
    radial-gradient(circle at 25% 25%, rgba(45,91,255,.22), transparent 32%),
    linear-gradient(135deg,#030712,#0A1931);
  color: #fff;
  text-align: center;
}
.cta-inner { max-width: 900px; margin: 0 auto; }
.cta-inner h2 { font-family: Manrope; font-size: clamp(2rem,4vw,4rem); line-height: 1.05; letter-spacing: -.055em; margin: 0; }
.cta-inner p { color: #CBD5E1; max-width: 700px; margin: 1rem auto 0; }
.cta-section .cta-sec { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.16); }

footer { background: #020617; color: #CBD5E1; padding: 3.5rem 6vw 1.8rem; }
.footer-inner { max-width: 1180px; margin: 0 auto; }
.footer-top { display: grid; grid-template-columns: 1.45fr repeat(3, .75fr); gap: 2rem; }
.footer-brand p { color: #94A3B8; max-width: 360px; }
.footer-social { display: flex; gap: .55rem; margin-top: 1rem; }
.footer-social a { width: 36px; height: 36px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.12); border-radius:999px; color:#fff; font-weight:900; }
.footer-paypal-badge { color: #DBEAFE; font-size: .85rem; }
.footer-col h4 { margin: 0 0 .8rem; color: #fff; font-family: Manrope; }
.footer-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .45rem; }
.footer-col a { color: #94A3B8; font-size: .9rem; }
.footer-col a:hover { color: #fff; }
.footer-bottom { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 1rem; border-top: 1px solid rgba(255,255,255,.10); margin-top: 2.2rem; padding-top: 1.2rem; color: #94A3B8; font-size: .84rem; }
.footer-bottom p { margin: 0; }

.qoryia-page {
  min-height: 100vh;
  padding: 130px 6vw 70px;
  background: linear-gradient(180deg,#F8FBFF,#FFFFFF);
}
.qoryia-page .page-card {
  max-width: 920px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--q-border);
  border-radius: 28px;
  padding: clamp(1.4rem, 4vw, 3rem);
  box-shadow: var(--q-shadow-soft);
}
.qoryia-page h1 { font-family: Manrope; font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1.05; letter-spacing: -.055em; margin: 0 0 1rem; color: var(--q-dark); }
.qoryia-page p, .qoryia-page li { color: #475569; }
.qoryia-page a { color: var(--q-blue); font-weight: 800; }

/* Catálogo interno de evaluaciones */
.qoryia-inner-page .page-card { max-width: 1180px; }
.inner-test-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.15rem; margin-top: 2rem; }
.inner-test-card { display: flex; flex-direction: column; min-height: 100%; padding: 1.35rem; border: 1px solid var(--q-border); border-radius: 22px; background: #fff; box-shadow: var(--q-shadow-soft); }
.inner-test-icon { font-size: 2rem; }
.inner-test-card small { display: block; margin-top: .7rem; color: var(--q-blue); font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.inner-test-card h2 { margin: .35rem 0 .45rem; color: var(--q-dark); font-family: Manrope, sans-serif; font-size: 1.35rem; line-height: 1.12; letter-spacing: -.035em; }
.inner-test-card p { margin: 0; font-size: .9rem; }
.inner-test-meta { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: 1rem; color: #475569; font-size: .78rem; font-weight: 800; }
.inner-test-link { display: inline-flex; margin-top: auto; padding-top: 1.1rem; }

/* Landings individuales de evaluaciones */
.qoryia-test-landing { background: #fff; }
.tl-main { padding-top: 78px; }
.tl-shell { width: min(1180px, calc(100% - 12vw)); margin: 0 auto; }
.tl-hero { position: relative; padding: 2.2rem 0 5.5rem; background: radial-gradient(circle at 85% 20%, rgba(139,92,246,.13), transparent 28%), radial-gradient(circle at 12% 40%, rgba(45,91,255,.12), transparent 30%), linear-gradient(180deg,#F8FBFF 0%,#FFFFFF 100%); overflow: hidden; }
.tl-breadcrumbs { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; margin-bottom: 3rem; color: #64748B; font-size: .78rem; font-weight: 700; }
.tl-breadcrumbs a:hover { color: var(--q-blue); }
.tl-breadcrumbs span:last-child { color: #334155; }
.tl-hero-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(290px,.65fr); gap: clamp(2rem,6vw,5rem); align-items: center; }
.tl-kicker { display: inline-flex; align-items: center; gap: .55rem; color: #1D4ED8; font-size: .8rem; font-weight: 900; text-transform: uppercase; letter-spacing: .12em; }
.tl-kicker span { font-size: 1.25rem; }
.tl-hero h1 { max-width: 820px; margin: .8rem 0 1.1rem; color: var(--q-dark); font-family: Manrope, sans-serif; font-size: clamp(2.75rem,6vw,5.4rem); line-height: .98; letter-spacing: -.075em; }
.tl-lead { max-width: 740px; margin: 0; color: #475569; font-size: clamp(1rem,1.8vw,1.2rem); }
.tl-pills { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.35rem; }
.tl-pills span { padding: .55rem .75rem; border: 1px solid #DBEAFE; border-radius: 999px; background: rgba(255,255,255,.85); color: #334155; font-size: .78rem; font-weight: 800; }
.tl-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.8rem; }
.tl-fact-card { padding: 1.45rem; border: 1px solid rgba(45,91,255,.14); border-radius: 28px; background: rgba(255,255,255,.88); box-shadow: 0 28px 70px rgba(15,23,42,.12); backdrop-filter: blur(12px); }
.tl-fact-icon { display: flex; align-items: center; justify-content: center; width: 62px; height: 62px; border-radius: 20px; background: #EEF4FF; font-size: 2rem; }
.tl-fact-label { margin: 1rem 0 .55rem; color: #64748B; font-size: .76rem; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.tl-fact-card dl { margin: 0; }
.tl-fact-card dl div { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 0; border-top: 1px solid #E2E8F0; }
.tl-fact-card dt { color: #64748B; font-size: .84rem; }
.tl-fact-card dd { margin: 0; color: #0F172A; font-size: .84rem; font-weight: 900; text-align: right; }
.tl-public-card { padding: 1.5rem; border: 1px solid rgba(45,91,255,.18); border-radius: 28px; background: rgba(255,255,255,.94); box-shadow: 0 28px 70px rgba(15,23,42,.14); }
.tl-public-icon { display: flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 18px; background: linear-gradient(135deg,var(--q-blue),#7C3AED); color: #fff; font-size: 1.5rem; box-shadow: 0 12px 28px rgba(45,91,255,.25); }
.tl-public-card h2 { margin: 0 0 .5rem; color: var(--q-dark); font-family: Manrope,sans-serif; font-size: 1.55rem; line-height: 1.1; letter-spacing: -.04em; }
.tl-public-card > p:not(.tl-fact-label) { margin: 0 0 1rem; color: #64748B; font-size: .9rem; }
.tl-public-card form > label:first-child { display: block; margin-bottom: .35rem; color: #334155; font-size: .76rem; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.tl-public-card input[type="email"] { width: 100%; min-height: 50px; padding: .8rem .9rem; border: 1.5px solid #CBD5E1; border-radius: 14px; background: #fff; color: #0F172A; outline: 0; font: inherit; }
.tl-public-card input[type="email"]:focus { border-color: var(--q-blue); box-shadow: 0 0 0 4px rgba(45,91,255,.1); }
.tl-public-consent { display: flex; gap: .65rem; align-items: flex-start; margin: .85rem 0; color: #64748B; font-size: .72rem; line-height: 1.5; }
.tl-public-consent input { flex: 0 0 auto; width: 17px; height: 17px; margin-top: 2px; accent-color: var(--q-blue); }
.tl-public-consent a { color: var(--q-blue); font-weight: 800; }
.tl-public-card button { width: 100%; min-height: 50px; }
.tl-public-card button:disabled { opacity: .62; cursor: wait; transform: none; }
.tl-public-card > small { display: block; margin-top: .8rem; color: #94A3B8; font-size: .68rem; line-height: 1.45; text-align: center; }
.tl-public-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.tl-public-status { min-height: 20px; margin: .65rem 0 0; color: #64748B; font-size: .75rem; text-align: center; }
.tl-public-status.is-error { color: #DC2626; }
.tl-public-status.is-loading { color: var(--q-blue); }
.tl-section { padding: 5.5rem 0; }
.tl-soft { background: #F8FAFC; }
.tl-heading { max-width: 780px; margin-bottom: 2.3rem; }
.tl-heading-centered { margin-inline: auto; text-align: center; }
.tl-heading h2, .tl-interpret-grid h2, .tl-final-cta h2 { margin: 0; color: var(--q-dark); font-family: Manrope, sans-serif; font-size: clamp(2rem,4vw,3.4rem); line-height: 1.05; letter-spacing: -.055em; }
.tl-heading p { margin: .8rem 0 0; color: #64748B; }
.tl-explore-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; }
.tl-info-card { min-height: 230px; padding: 1.3rem; border: 1px solid var(--q-border); border-radius: 22px; background: #fff; box-shadow: var(--q-shadow-soft); }
.tl-card-number { color: #BFDBFE; font-family: Manrope, sans-serif; font-size: 2.2rem; font-weight: 900; letter-spacing: -.07em; }
.tl-info-card h3, .tl-use-card h3, .tl-process-grid h3, .tl-caution h3 { margin: .75rem 0 .4rem; color: #0F172A; font-family: Manrope, sans-serif; font-size: 1.05rem; }
.tl-info-card p, .tl-use-card p, .tl-process-grid p, .tl-caution p { margin: 0; color: #64748B; font-size: .9rem; }
.tl-use-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.tl-use-card { display: flex; gap: .9rem; padding: 1.3rem; border: 1px solid var(--q-border); border-radius: 22px; background: #fff; }
.tl-use-card > span { flex: 0 0 34px; display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 999px; background: #DCFCE7; color: #15803D; font-weight: 900; }
.tl-use-card h3 { margin-top: .1rem; }
.tl-process-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; }
.tl-process-grid article { position: relative; padding: 1.35rem; border-left: 3px solid #DBEAFE; }
.tl-process-grid article > span { color: var(--q-blue); font-family: Manrope, sans-serif; font-size: .8rem; font-weight: 900; letter-spacing: .1em; }
.tl-dark-section { background: radial-gradient(circle at 85% 20%,rgba(45,91,255,.25),transparent 30%),linear-gradient(135deg,#020617,#0F172A); color: #fff; }
.tl-interpret-grid { display: grid; grid-template-columns: 1fr .85fr; gap: 3rem; align-items: center; }
.tl-dark-section .sec-label { color: #93C5FD; }
.tl-interpret-grid h2 { color: #fff; }
.tl-check-list { display: grid; gap: .8rem; margin: 1.5rem 0 0; padding: 0; list-style: none; }
.tl-check-list li { display: flex; gap: .75rem; align-items: flex-start; color: #CBD5E1; }
.tl-check-list li span { color: #86EFAC; font-weight: 900; }
.tl-caution { display: flex; gap: 1rem; padding: 1.4rem; border: 1px solid rgba(255,255,255,.14); border-radius: 24px; background: rgba(255,255,255,.07); }
.tl-caution-icon { flex: 0 0 38px; display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 1px solid #93C5FD; border-radius: 999px; color: #BFDBFE; font-family: Georgia,serif; font-weight: 900; }
.tl-caution h3 { margin-top: .1rem; color: #fff; }
.tl-caution p { color: #CBD5E1; }
.tl-faq-list { max-width: 920px; }
.tl-faq-list details { border-top: 1px solid var(--q-border); }
.tl-faq-list details:last-child { border-bottom: 1px solid var(--q-border); }
.tl-faq-list summary { display: flex; justify-content: space-between; gap: 1rem; padding: 1.15rem 0; color: #0F172A; font-family: Manrope,sans-serif; font-weight: 900; cursor: pointer; list-style: none; }
.tl-faq-list summary::-webkit-details-marker { display: none; }
.tl-faq-list summary span { color: var(--q-blue); font-size: 1.35rem; transition: transform .2s ease; }
.tl-faq-list details[open] summary span { transform: rotate(45deg); }
.tl-faq-list details p { max-width: 760px; margin: -.35rem 0 1.25rem; color: #64748B; }
.tl-related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.tl-related-card { display: flex; flex-direction: column; min-height: 235px; padding: 1.25rem; border: 1px solid var(--q-border); border-radius: 22px; background: #fff; box-shadow: var(--q-shadow-soft); transition: transform .18s ease,border-color .18s ease; }
.tl-related-card:hover { transform: translateY(-3px); border-color: #BFDBFE; }
.tl-related-icon { font-size: 1.8rem; }
.tl-related-category { margin-top: .7rem; color: var(--q-blue); font-size: .7rem; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.tl-related-card strong { margin-top: .35rem; color: #0F172A; font-family: Manrope,sans-serif; font-size: 1.2rem; line-height: 1.15; }
.tl-related-card small { margin-top: .45rem; color: #64748B; }
.tl-related-card em { margin-top: auto; padding-top: 1rem; color: var(--q-blue); font-size: .84rem; font-style: normal; font-weight: 900; }
.tl-final-cta { padding: 4.5rem 0; background: #EEF4FF; }
.tl-final-cta .tl-shell { display: flex; justify-content: space-between; gap: 2rem; align-items: center; }
.tl-final-cta h2 { max-width: 720px; margin-top: .25rem; font-size: clamp(1.8rem,3vw,3rem); }
.tl-final-cta p { margin: .65rem 0 0; color: #475569; }
.tl-final-cta > .tl-shell > div:first-child > span { color: var(--q-blue); font-size: .76rem; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.tl-final-cta .tl-actions { flex: 0 0 auto; margin-top: 0; }
.tl-footer { padding-top: 1rem; }
.tl-footer a { color: #CBD5E1; }

@media (max-width: 1100px) {
  .qnav-links { display: none; }
  .features-grid, .contact-inner { grid-template-columns: 1fr; }
  .how-panel { grid-template-columns: minmax(0,1fr) minmax(310px,.8fr); gap: 2rem; }
  .tl-explore-grid, .tl-process-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 900px) {
  .qnav { height: 72px; padding: 0 18px; }
  .qnav-right { display: none; }
  .qnav-hamburger { display: block; }
  .hero { min-height: auto; padding-top: 6.5rem !important; }
  .hero-stats, .pricing-grid, .testi-grid, .faq-grid, .tests-grid { grid-template-columns: 1fr; }
  .price-card.popular { transform: none; }
  .pricing-plan-card { grid-template-columns: 1fr; }
  .pricing-plan-offer { min-height: 0; }
  .qoryia-packs-grid { grid-template-columns: 1fr; }
  .credit-pack-card { padding: 1.5rem; }
  .credit-pack-value { min-height: 0; }
  .how-section-heading { align-items: flex-start; }
  .how-section-summary { min-width: 205px; }
  .how-panel, .how-process.is-ready .how-panel.is-active { grid-template-columns: 1fr; }
  .how-panels, .how-panel { min-height: 0; }
  .integrity-shell { grid-template-columns: 1fr; }
  .integrity-visual { width:min(100%,560px); }
  .integrity-grid { grid-template-columns:1fr; }
  .how-panel-visual { width: min(100%,520px); transform: none; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .inner-test-grid, .tl-use-grid, .tl-related-grid { grid-template-columns: 1fr; }
  .tl-hero-grid, .tl-interpret-grid { grid-template-columns: 1fr; }
  .tl-final-cta .tl-shell { display: block; }
  .tl-final-cta .tl-actions { margin-top: 1.5rem; }
}
@media (max-width: 620px) {
  section { padding: 4rem 18px; }
  .hero { padding-inline: 18px; }
  .hero-badge { font-size: .72rem; align-items: flex-start; text-align: left; }
  .cf-row, .dp-metrics { grid-template-columns: 1fr; }
  .how-section-heading { display: block; }
  .how-section-summary { min-width: 0; margin-top: 1.25rem; }
  .how-process { margin-top: 2rem; padding: .65rem; border-radius: 24px; }
  .how-process-toolbar { padding: .3rem .25rem .8rem; }
  .how-process-live { font-size: .61rem; letter-spacing: .04em; }
  .how-process-toggle { width: 36px; min-height: 36px; justify-content: center; padding: 0; }
  .how-process-toggle [data-how-toggle-text] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .how-step-nav { gap: .2rem; padding: .8rem .25rem 1rem; }
  .how-step-track { top: 31px; left: 12%; right: 12%; }
  .how-step-node { width: 42px; height: 42px; font-size: .7rem; }
  .how-step-label { font-size: .6rem; }
  .how-panel { padding: 1.4rem; border-radius: 19px; }
  .how-panel-copy h3 { font-size: 2rem; }
  .how-panel-copy > p { font-size: .88rem; line-height: 1.65; }
  .how-panel-points { display: grid; gap: .45rem; }
  .how-panel-points span { width: fit-content; }
  .how-visual-content { padding: 1.5rem 1rem; }
  .how-process-footer { display: block; padding: .85rem .3rem .2rem; }
  .how-process-note { margin-top: .6rem; }
  .integrity-section { padding-top:.5rem; }
  .integrity-shell { gap:2rem; padding:1.4rem; border-radius:24px; }
  .integrity-title { font-size:2.35rem; }
  .integrity-sub { font-size:.88rem; line-height:1.65; }
  .integrity-trust-note { align-items:flex-start; border-radius:18px; }
  .integrity-visual { min-height:320px; border-radius:22px; }
  .integrity-radar { width:205px; height:205px; }
  .integrity-grid { margin-top:.75rem; }
  .integrity-card { min-height:0; border-radius:20px; }
  .pricing-showcase { margin-top: 2.25rem; }
  .pricing-plan-card, .credit-packs-panel { border-radius: 24px; }
  .pricing-plan-copy, .pricing-plan-offer { padding: 1.5rem; }
  .pricing-plan-features { grid-template-columns: 1fr; gap: 1rem; margin-top: 1.5rem; }
  .pricing-offer-price { font-size: 3.5rem; }
  .credit-packs-panel { padding: 1rem; }
  .credit-packs-heading { display: block; }
  .credit-packs-rule { min-width: 0; margin-top: 1rem; text-align: left; }
  .credit-pack-card { padding: 1.25rem; border-radius: 20px; }
  .pricing-volume-banner { align-items: flex-start; }
  .pricing-volume-icon { flex-basis: 46px; width: 46px; height: 46px; }
  .dp-bar-row { grid-template-columns: 78px 1fr 38px; gap: .45rem; }
  .footer-top, .footer-bottom { grid-template-columns: 1fr; display: grid; }
  .qoryia-page { padding: 110px 18px 50px; }
  .tl-main { padding-top: 72px; }
  .tl-shell { width: calc(100% - 36px); }
  .tl-hero { padding-top: 1.4rem; padding-bottom: 4rem; }
  .tl-breadcrumbs { margin-bottom: 2rem; }
  .tl-section { padding: 4rem 0; }
  .tl-explore-grid, .tl-process-grid { grid-template-columns: 1fr; }
  .tl-info-card { min-height: 0; }
  .tl-actions .cta-main, .tl-actions .cta-sec { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .how-process-live > span { animation: none; }
  .how-process.is-ready .how-panel.is-active { animation: none; }
  .how-step-track span, .how-step-node { transition: none; }
  .integrity-radar-sweep { animation:none; }
}
