:root{
  --bg:#0d1118;
  --bg2:#171c23;
  --text:#ffffff;
  --muted:rgba(255,255,255,.78);
  --muted2:rgba(255,255,255,.68);
  --accent:#0ac8fd;
  --accent2:#1f4fe9;
  --btnText:#000000;

  --radius:9999px;
  --shadowGlow:0 0 10px rgba(10, 200, 253, 0.3), 0 0 30px rgba(10, 200, 253, 0.2), 0 0 60px rgba(10, 200, 253, 0.1);

  --fontHead:"Space Mono","Space Mono Fallback",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  --fontBody:"Roboto Mono","Roboto Mono Fallback",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;

  --container:1200px;
  --px:40px;
  --py:72px;
  --gap:12px;
}

*,
*::before,
*::after{
  box-sizing:border-box;
  overflow-wrap:break-word;
  word-wrap:break-word;
}

html{
  font-size:100%;
  -webkit-hyphens:auto;
  hyphens:auto;
  overflow-x:hidden;
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-size:1rem;
  font-family:var(--fontBody);
  color:var(--text);
  background:var(--bg);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
p{margin:0 0 1rem;color:var(--muted)}
ul{margin:0;padding-left:1.1rem}
li{margin:.35rem 0}
h1,h2,h3{margin:0 0 .8rem;font-family:var(--fontHead);letter-spacing:.2px}
h1{font-size:3rem;line-height:1.18}
h2{font-size:2.2rem;line-height:1.22}
h3{font-size:1.45rem;line-height:1.28}

.container{
  width:min(var(--container), 92vw);
  margin:0 auto;
}

.section{padding:var(--py) var(--px)}
.section-alt{
  padding:var(--py) var(--px);
  background:linear-gradient(180deg, rgba(23,28,35,.92), rgba(23,28,35,.92));
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.section-head{max-width:980px;margin:0 auto 28px;text-align:left}
.section-head p{margin:0;color:var(--muted)}

.sr-only{
  position:absolute !important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}

.skip-link{
  position:absolute;
  top:-40px;left:0;
  background:var(--accent);
  color:var(--btnText);
  padding:8px;
  z-index:10001;
  font-size:14px;
}
.skip-link:focus{top:0}

/* Header */
.site-header{
  position:sticky;
  top:0;
  z-index:999;
  background:rgba(13,17,24,.92);
  backdrop-filter:saturate(120%) blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.header-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px 0;
}

.logo{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
}
.logo-mark{
  width:14px;height:14px;
  border-radius:var(--radius);
  background:radial-gradient(circle at 30% 30%, var(--accent), var(--accent2));
  box-shadow:var(--shadowGlow);
  display:inline-block;
}
.logo-text{font-size:1.05rem;letter-spacing:.6px}

.nav-links{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.nav-links a{
  color:var(--muted);
  font-size:.92rem;
  padding:10px 12px;
  border-radius:var(--radius);
}
.nav-links a:hover{color:var(--text);background:rgba(255,255,255,.06)}
.nav-cta{
  border:1px solid rgba(10,200,253,.7);
  box-shadow:0 0 0 rgba(0,0,0,0);
}
.nav-cta:hover{
  background:rgba(10,200,253,.12);
  box-shadow:var(--shadowGlow);
}

.header-right{
  display:flex;
  align-items:center;
  gap:12px;
}

/* Language selector required CSS */
.lang-menu{position:relative}
.lang-select{
  appearance:none;
  -webkit-appearance:none;
  background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='currentColor' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 0.5rem center;
  border:1px solid currentColor;
  border-radius:4px;
  padding:0.35rem 1.8rem 0.35rem 0.6rem;
  font-size:0.85rem;
  cursor:pointer;
  color:inherit;
  opacity:0.75;
}
.lang-select:hover{opacity:1}

/* Language Dropdown - ALWAYS BLACK TEXT on WHITE background (dropdown only, not the trigger button) */
.lang-dropdown,.lang-list{background:#ffffff}
.lang-option{color:#000000 !important;background:#ffffff}
.lang-option:hover{background:rgba(0,0,0,.05);color:#000000 !important}
.lang-select option{color:#000000;background:#ffffff}

/* Mobile hamburger toggle - CSS only, no JavaScript */
.mobile-toggle-input{display:none}
.hamburger{
  display:none;
  background:transparent;
  border:1px solid currentColor;
  color:inherit;
  padding:10px 12px;
  cursor:pointer;
  opacity:0.75;
  border-radius:10px;
}
.hamburger:hover{opacity:1}
.hamburger-lines{
  width:22px;height:2px;background:currentColor;
  position:relative;display:block;
}
.hamburger-lines::before,
.hamburger-lines::after{
  content:"";
  position:absolute;left:0;
  width:22px;height:2px;background:currentColor;
}
.hamburger-lines::before{top:-7px}
.hamburger-lines::after{top:7px}

.mobile-menu{
  display:none;
  background:var(--bg, #111);
  border-top:1px solid rgba(255,255,255,.1);
}
.mobile-menu a{
  display:block;
  padding:12px 20px;
  color:var(--text, #fff);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.mobile-menu a:hover{background:rgba(255,255,255,.08)}
@media (max-width:768px){
  .nav-links{display:none}
  .hamburger{display:flex;align-items:center;justify-content:center}
  .mobile-toggle-input:checked ~ .mobile-menu{display:block}
}

/* Hero */
.hero{position:relative;min-height:600px
  padding: 32px 0 24px;
;contain:layout style}
.hero-bg{
  position:absolute;inset:0;
  z-index:-1;
  background:
    radial-gradient(900px 520px at 18% 26%, rgba(10,200,253,.16), transparent 60%),
    radial-gradient(750px 420px at 82% 38%, rgba(31,79,233,.16), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
  pointer-events:none; overflow:hidden;
  contain:strict; transform:translateZ(0); }
.hero-inner{
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:40px;
  padding:60px 0;
}
.hero-left{flex:1;min-width:0}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 14px;
  border-radius:var(--radius);
  border:1px dashed rgba(10,200,253,.55);
  background:rgba(23,28,35,.55);
  color:rgba(255,255,255,.9);
  margin:0 0 16px;
}
.eyebrow i{color:var(--accent)}
.hero-lead{font-size:1.05rem;color:var(--muted);max-width:64ch}

.mini-badges{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:18px 0 18px;
}
.badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:var(--radius);
  background:rgba(23,28,35,.6);
  border:1px dashed rgba(255,255,255,.14);
  color:rgba(255,255,255,.92);
}
.badge i{color:var(--accent)}
/* reserve icon space to prevent CLS */
.trust-badge i, [class*="fa-"]{
  display:inline-block;
  width:1em;height:1em;
  vertical-align:middle;
  line-height:1;
}

.trust-row{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-top:18px;
  contain:content;
}
.trust-badge{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px 16px;
  border-radius:22px;
  background:rgba(23,28,35,.55);
  border:1px dashed rgba(255,255,255,.12);
}
.trust-badge i{color:var(--accent);margin-top:2px}
.trust-text strong{display:block;font-family:var(--fontHead);font-size:.95rem}
.trust-text span{display:block;color:var(--muted2);font-size:.9rem;margin-top:2px}

.hero-form{
  width:100%;
  max-width:460px;
  flex-shrink:0;
}
.form-shell{
  background:rgba(23,28,35,.72);
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  box-shadow:var(--shadowGlow);
  padding:18px;
}
.form-head{padding:10px 10px 14px}
.form-title{font-size:1.35rem;line-height:1.25;margin:0 0 8px}
.form-sub{margin:0;color:var(--muted2);font-size:.92rem}

/* Form (all in CSS file) */
.signup-section{padding:0}
.form-message{
  padding:10px 12px;
  border-radius:14px;
  font-size:13px;
  margin:0 0 10px;
  display:none;
}
.form-message.error{
  background:#fff;
  border:1px solid rgba(255,0,0,.25);
  color:#111;
  display:block;
}
.form-message.success{
  background:#fff;
  border:1px solid rgba(0,180,90,.25);
  color:#111;
  display:block;
}

.signup-form{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:10px;
}

.input-group{display:flex;flex-direction:column;gap:6px}
.input-group label{font-size:.85rem;color:rgba(255,255,255,.92)}
.required{color:var(--accent)}
.input-group input{
  height:44px;
  padding:10px 14px;
  border-radius:var(--radius);
  border:1px solid rgba(10,200,253,.35);
  background:rgba(13,17,24,.7);
  color:var(--text);
  font-family:var(--fontBody);
  font-size:.95rem;
  outline:none;
  transition: transform .22s ease;
}
.input-group input::placeholder{color:rgba(255,255,255,.55)}
.input-group input:focus{
  box-shadow:0 0 0 3px rgba(10,200,253,.18), var(--shadowGlow);
  transform:translateY(-1px);
  background:rgba(13,17,24,.85);
}

.phone-input-wrapper{
  display:flex;
  align-items:center;
  border:1px solid rgba(10,200,253,.35);
  border-radius:var(--radius);
  background:rgba(13,17,24,.7);
  transition: transform .22s ease;
}
.phone-input-wrapper:focus-within{
  box-shadow:0 0 0 3px rgba(10,200,253,.18), var(--shadowGlow);
  transform:translateY(-1px);
  background:rgba(13,17,24,.85);
}
.phone-prefix{
  padding:10px 12px;
  color:rgba(255,255,255,.92);
  font-weight:700;
  font-size:.95rem;
  border-right:1px solid rgba(255,255,255,.12);
  white-space:nowrap;
  min-width:64px;
  text-align:center;
}
.phone-input-wrapper input{
  flex:1;
  border:none !important;
  background:transparent;
  height:44px;
  padding:10px 14px;
  color:var(--text);
  outline:none;
  font-family:var(--fontBody);
  font-size:.95rem;
}

.checkbox-group{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border-radius:18px;
  border:1px dashed rgba(255,255,255,.14);
  background:rgba(13,17,24,.55);
}
.checkbox-group input[type="checkbox"]{
  margin-top:2px;
  width:16px;height:16px;
  accent-color:var(--accent);
}
.checkbox-group label{
  font-size:.78rem;
  line-height:1.55;
  color:rgba(255,255,255,.86);
}
.checkbox-group a, .form-disclaimer a{color:var(--accent);text-decoration:underline;font-weight:700}
.checkbox-group a:hover, .form-disclaimer a:hover{color:rgba(10,200,253,.95)}
.terms-read-more{color:rgba(255,255,255,.92);font-weight:700;text-decoration:underline}

.submit-btn{
  min-height:46px;
  border-radius:var(--radius);
  border:1px solid rgba(10,200,253,.85);
  background:transparent;
  color:var(--text);
  font-family:var(--fontHead);
  font-weight:700;
  letter-spacing:.6px;
  cursor:pointer;
  text-transform:uppercase;
  transition: transform .22s ease;
}
.submit-btn:hover{
  transform:translateY(-1px);
  background:rgba(10,200,253,.12);
  box-shadow:var(--shadowGlow);
}
.submit-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Cards & grids */
.cards-grid,.features-grid,.steps-grid,.warning-grid{contain:layout}
.features-section,.steps-section,.faq-section{content-visibility:auto;contain-intrinsic-size:auto 500px}

.outlined-card{
  background:rgba(13,17,24,.55);
  border:1px dashed rgba(255,255,255,.16);
  border-radius:26px;
  padding:22px;
  transition: transform .22s ease;
}
.outlined-card:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadowGlow);
  background:rgba(13,17,24,.72);
}

/* Bento */
.bento-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:20px;
}
.bento-item{
  background:rgba(13,17,24,.55);
  border:1px dashed rgba(255,255,255,.16);
  border-radius:26px;
  padding:22px;
  transition: transform .22s ease;
}
.bento-item:hover{transform:translateY(-2px);box-shadow:var(--shadowGlow);background:rgba(13,17,24,.72)}
.bento-item.large{grid-column:span 2}
.bento-item.wide{grid-column:span 2}
.bento-item.tall{grid-row:span 2}
.bento-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.bento-icon{
  width:42px;height:42px;border-radius:var(--radius);
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg, rgba(10,200,253,.18), rgba(31,79,233,.16));
  border:1px solid rgba(10,200,253,.35);
  box-shadow:0 0 0 rgba(0,0,0,0);
}
.bento-icon i{color:var(--accent)}
.bullets{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px}
.bullets li{display:flex;gap:10px;align-items:flex-start;color:var(--muted2)}
.bullets i{color:var(--accent);margin-top:2px}

.mini-metrics{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:14px;
}
.metric{
  border-radius:18px;
  border:1px dashed rgba(255,255,255,.14);
  background:rgba(23,28,35,.55);
  padding:12px 12px;
}
.metric-k{display:block;color:var(--muted2);font-size:.78rem}
.metric-v{display:block;color:rgba(255,255,255,.92);font-family:var(--fontHead);font-weight:700;margin-top:2px}

/* Two-col diagonal */
.diagonal-card{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:0;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(23,28,35,.55);
  overflow:hidden;
}
.diagonal-left{
  background:
    radial-gradient(420px 280px at 30% 30%, rgba(10,200,253,.25), transparent 60%),
    radial-gradient(420px 280px at 70% 70%, rgba(31,79,233,.22), transparent 60%),
    linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,0));
  clip-path:polygon(0 0, 100% 0, 82% 100%, 0 100%);
  min-height:340px;
}
.diagonal-right{padding:34px}
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.pill{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:var(--radius);
  border:1px dashed rgba(255,255,255,.16);
  background:rgba(13,17,24,.55);
  color:rgba(255,255,255,.9);
}
.pill i{color:var(--accent)}

/* Steps */
.steps-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  margin-top:26px;
}
.step-card{position:relative}
.step-deco{
  position:absolute;
  top:14px;right:16px;
  font-family:var(--fontHead);
  font-weight:700;
  font-size:2.2rem;
  color:rgba(10,200,253,.22);
  z-index:0;
}
.step-card h3,.step-card p{position:relative;z-index:1}
.step-card h3 i{color:var(--accent);margin-right:10px}

/* FAQ tabs (CSS-only) */
.faq-tabs{margin-top:18px}
.faq-tabs-nav{
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin:18px 0 20px;
}
.tab-input{position:absolute;opacity:0;pointer-events:none}
.faq-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border-radius:var(--radius);
  border:1px dashed rgba(255,255,255,.18);
  background:rgba(23,28,35,.55);
  color:rgba(255,255,255,.9);
  cursor:pointer;
  transition: transform .22s ease;
  opacity:.85;
}
.faq-tab:hover{opacity:1;transform:translateY(-1px);box-shadow:var(--shadowGlow)}
#tabOps:checked ~ label[for="tabOps"],
#tabBots:checked ~ label[for="tabBots"],
#tabAccess:checked ~ label[for="tabAccess"]{
  opacity:1;
  background:rgba(10,200,253,.12);
  box-shadow:var(--shadowGlow);
}

.faq-tabs-content{max-width:1000px;margin:0 auto}
.faq-panel{display:none}
#tabOps:checked ~ .faq-tabs-content #panelOps{display:block}
#tabBots:checked ~ .faq-tabs-content #panelBots{display:block}
#tabAccess:checked ~ .faq-tabs-content #panelAccess{display:block}

.faq-two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.faq-column{display:flex;flex-direction:column;gap:12px}
.faq-card{
  background:rgba(13,17,24,.55);
  border:1px dashed rgba(255,255,255,.16);
  border-radius:22px;
  padding:0;
}
.faq-card summary{
  padding:16px 18px;
  cursor:pointer;
  list-style:none;
  font-family:var(--fontHead);
  font-weight:700;
}
.faq-card summary::-webkit-details-marker{display:none}
.faq-answer{padding:0 18px 16px}
.faq-answer p{margin:0;color:var(--muted2)}

/* CTA */
.cta-card{
  position:relative;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg, rgba(10,200,253,.12), rgba(31,79,233,.12));
  padding:34px;
  text-align:center;
  overflow:hidden;
}
.cta-glow{
  position:absolute;inset:-40px;
  background:radial-gradient(circle at 50% 50%, rgba(10,200,253,.22), transparent 55%);
  filter:blur(18px);
  pointer-events:none;
}
.countdown-timer{
  display:flex;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  margin:22px 0;
}
.countdown-item{
  min-width:110px;
  padding:16px 18px;
  border-radius:22px;
  background:rgba(13,17,24,.55);
  border:1px dashed rgba(255,255,255,.16);
}
.countdown-num{
  display:block;
  font-family:var(--fontHead);
  font-weight:700;
  font-size:2rem;
  color:var(--accent);
}
.countdown-label{
  display:block;
  font-size:.78rem;
  color:var(--muted2);
  text-transform:uppercase;
  letter-spacing:.6px;
}

/* Buttons */
.cta-actions{display:flex;gap:12px;justify-content:flex-start;flex-wrap:wrap;margin-top:18px}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:var(--radius);
  font-family:var(--fontHead);
  font-weight:700;
  letter-spacing:.5px;
  transition: transform .22s ease;
}
.btn-outline{
  border:1px solid rgba(10,200,253,.85);
  color:var(--text);
  background:transparent;
}
.btn-outline:hover{transform:translateY(-1px);background:rgba(10,200,253,.12);box-shadow:var(--shadowGlow)}
.btn-ghost{
  border:1px dashed rgba(255,255,255,.18);
  background:rgba(23,28,35,.35);
  color:rgba(255,255,255,.92);
}
.btn-ghost:hover{transform:translateY(-1px);box-shadow:var(--shadowGlow)}
.cta-card .cta-actions{justify-content:center}

/* Risk */
.warning-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  margin-top:26px;
}
.warning-card .warn-head{
  display:flex;align-items:center;gap:12px;margin-bottom:10px
}
.warning-card .warn-head i{color:var(--accent)}
.risk-cta-card{
  margin-top:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
  padding:22px;
  border-radius:28px;
  border:1px dashed rgba(255,255,255,.16);
  background:rgba(23,28,35,.55);
}
.risk-cta-text{flex:1;min-width:260px}
.risk-cta-text p{margin:0;color:var(--muted2)}
.risk-cta-actions{display:flex;gap:12px;flex-wrap:wrap}

/* Footer */
.site-footer{
  background:rgba(23,28,35,.92);
  border-top:1px solid rgba(255,255,255,.08);
  padding:56px 0 18px;
}
.footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:26px;
  align-items:start;
}
.footer-title{font-size:1.35rem}
.footer-links{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.footer-links a{color:var(--muted);padding:6px 0;display:inline-block}
.footer-links a:hover{color:var(--text)}
.footer-disclaimer-wrap{
  margin-top:26px;
  padding:22px 0;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
  background:transparent;
}
.footer-disclaimer-inner{padding:0}
.footer-disclaimer{width:100%;height:auto}

/* Desktop/Mobile visibility - CRITICAL: These rules must NOT be overridden! */
.desktop-only{display:block !important}
.mobile-only{display:none !important}
@media (max-width:640px){
  .desktop-only{display:none !important}
  .mobile-only{display:block !important}
}

.footer-bottom{
  text-align:center;
  padding-top:18px;
  margin-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
}
.footer-bottom p{margin:0;color:var(--muted2);font-size:.9rem}

/* Cookie Consent - fixed bottom banner with BLACK text */
.cookie-consent{display:none;position:fixed;bottom:0;left:0;right:0;background:#ffffff;border-top:1px solid rgba(0,0,0,.1);padding:16px 24px;z-index:9999;box-shadow:0 -2px 10px rgba(0,0,0,.1)}
.cookie-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#000000}
.cookie-content p{color:#000000;margin:0}
.cookie-content a{color:#0066cc !important;text-decoration:underline;font-weight:600}
.cookie-content a:hover{color:#004499 !important}
.cookie-btn{padding:10px 24px;background:var(--accent);color:#000;border:none;border-radius:4px;font-weight:700;cursor:pointer}

/* Disclaimer Popup - Full width bottom banner with Read More */
.disclaimer-popup-overlay{position:fixed;bottom:0;left:0;width:100%;z-index:10000;pointer-events:none;opacity:0;transition: opacity 0.3s ease}
.disclaimer-popup-overlay.active{opacity:1;pointer-events:auto}
.disclaimer-popup{background:#ffffff;color:#333;width:100%;box-shadow:0 -2px 15px rgba(0,0,0,.1);border-top:1px solid #e5e5e5;transform:translateY(100%);transition: transform 0.3s ease;pointer-events:auto}
.disclaimer-popup-overlay.active .disclaimer-popup{transform:translateY(0)}
.disclaimer-popup-header{display:flex;justify-content:flex-start;align-items:center;padding:10px 30px;border-bottom:1px solid #eee}
.disclaimer-popup-header h4{margin:0;font-size:13px;font-weight:600;color:#1a1a1a;flex:1}
.disclaimer-close-btn{background:none;border:none;font-size:18px;color:#999;cursor:pointer;padding:0;line-height:1}
.disclaimer-close-btn:hover{color:#333}
.disclaimer-popup-body{padding:12px 30px}
.disclaimer-popup-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.disclaimer-popup-content{flex:1}
.disclaimer-main-text{font-size:12px;line-height:1.5;color:#555;margin:0 0 6px 0}
.disclaimer-main-text a,.disclaimer-popup-body a{color:#0066cc !important;text-decoration:underline;font-weight:600}
.disclaimer-main-text a:hover,.disclaimer-popup-body a:hover{color:#004499 !important}
.disclaimer-read-more{font-size:12px;color:#0066cc;text-decoration:underline;cursor:pointer}
.disclaimer-read-more:hover{color:#004499}
.disclaimer-more-text{max-height:0;overflow:hidden;transition: max-height 0.4s ease, margin 0.3s ease, padding 0.3s ease;margin-top:0;padding-top:0;border-top:none}
.disclaimer-more-text.expanded{max-height:400px;margin-top:12px;padding-top:12px;border-top:1px solid #eee;overflow-y:auto}
.popup-svg{width:100%;height:auto;max-width:540px;display:block;margin:0 auto}
.popup-svg-mobile{display:none}
.disclaimer-popup-footer{flex-shrink:0}
.disclaimer-understand-btn{padding:10px 24px;background:var(--accent);color:#000;border:none;border-radius:4px;font-weight:600;cursor:pointer;font-size:13px}
.disclaimer-understand-btn:hover{opacity:0.9}
@media (max-width:768px){
  .disclaimer-popup-header{padding:8px 16px}
  .disclaimer-popup-body{padding:10px 16px}
  .disclaimer-popup-row{flex-direction:column;gap:12px}
  .disclaimer-popup-footer{width:100%}
  .popup-svg{display:none}
  .popup-svg-mobile{display:block;width:100%;height:auto}
}

/* Terms Popup - centered overlay */
.terms-popup-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:10000;align-items:center;justify-content:center;padding:20px}
.terms-popup-content{background:#fff;color:#333;border-radius:8px;max-width:700px;width:100%;max-height:90vh;overflow:auto;position:relative;padding:20px}
.terms-popup-content .close-btn{position:absolute;top:12px;right:12px;background:none;border:none;font-size:28px;color:#333;cursor:pointer}
.terms-img{width:100%;height:auto}

/* Terms checkbox - label only wraps clickable text, links are outside label */
.form-checkbox .terms-text{font-size:inherit;color:inherit;line-height:inherit}
.form-checkbox label{display:inline;cursor:pointer}

/* Focus */
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Responsive */
@media (max-width:768px){
  .section,.section-alt{padding:30px 16px}
  .hero{min-height:auto}
  .hero-inner{flex-direction:column;align-items:flex-start;padding:0}
  .hero-left{text-align:center}
  .section-head{text-align:center}
  .mini-badges{justify-content:center}
  .trust-row{grid-template-columns:1fr;justify-items:center}
  .hero-form{width:100%;max-width:520px}
  h1{font-size:1.8rem}
  .bento-grid{grid-template-columns:1fr !important}
  .steps-grid{grid-template-columns:1fr !important}
  .warning-grid{grid-template-columns:1fr !important}
  .faq-two-col{grid-template-columns:1fr}
  .diagonal-card{grid-template-columns:1fr}
  .diagonal-left{clip-path:none;min-height:220px}
  .cta-actions{justify-content:center}
  body{overflow-x:hidden}
}

@media (max-width:480px){
  h1{font-size:1.5rem}
  h2{font-size:1.3rem}
  .cta-actions{justify-content:center}
  .risk-cta-card{flex-direction:column;text-align:center;align-items:center}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
    scroll-behavior:auto !important;
  }
  .hero-bg{ display:none; }
}
/* === translation-safe: prevent text overflow with longer languages (DE, FR, etc.) === */
body {
  overflow-wrap: break-word;
  word-wrap: break-word;
}
h1, h2, h3, h4, p, span, a, li, label, button, .btn, .submit-btn,
.kicker, .kicker-pill, .kicker-chip, .kicker-text,
.chip, .tag, .badge, .pill, .pill-text,
.circular-label, .progress-label,
.stat-title, .stat-desc, .stat-kicker, .stat-label,
.metric-label, .metric-value,
.glow-stat-card, .feature-card, .step-card,
.faq-question, .faq-q,
.card h3, .card p,
.form-disclaimer,
.terms-read-more,
.nav-links a, .mobile-menu a,
.footer-links a {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* translation-safe: kicker pills and mobile overflow */
.kicker-pill, .kicker-chip, .kicker-text {
  hyphens: auto;
  -webkit-hyphens: auto;
}
.terms-read-more {
  white-space: normal;
}
@media (max-width: 480px) {
  .kicker-pill, .kicker-chip {
    font-size: 0.8rem;
    padding: 6px 10px;
    white-space: normal;
    text-align: center;
  }
  .phone-prefix {
    min-width: auto;
    padding: 0 6px;
    font-size: 12px;
  }
}

/* translation-safe: mobile layout */
@media (max-width: 768px) {
  .step-card { max-width: 100%; width: 100%; min-width: 0; }
  .steps-arrows, .steps-grid { align-items: stretch; }
  .numbered-card, .feature-card { min-height: auto; overflow: visible; }
  .logo-item { min-width: 0; width: 100%; }
  .logos-grid { flex-direction: column; align-items: stretch; }
  .mini-trust-item { min-width: 0; flex-basis: 100%; }
  .chip { max-width: 100%; }
  .hero-metrics { flex-direction: column; }
  .metric { min-width: 0; width: 100%; }
}
@media (max-width: 480px) {
  .step-card h3 { font-size: 1.15rem; }
  .numbered-card h3, .feature-card h3 { font-size: 1.15rem; }
  .chip { font-size: 0.85rem; padding: 8px 12px; }
  .check-item { font-size: 0.9rem; padding: 12px; }
  .trust-badge { padding: 12px; }
  .trust-badge strong { font-size: 12px; }
  .trust-badge span { font-size:12px; }
}
