/* LocalFox landing page */
.land { background:#F8FAFC; overflow-x:hidden; }
.land-nav { position:fixed; top:0; left:0; right:0; z-index:90; display:flex; align-items:center; gap:32px; padding:16px 6vw; background:rgba(248,250,252,.75); backdrop-filter:blur(18px); border-bottom:1px solid transparent; transition:border-color .3s; }
.land-nav.scrolled { border-color:var(--border); }
.land-brand { display:flex; align-items:center; gap:10px; font-family:var(--font-display); font-weight:800; font-size:20px; }
.land-brand img { width:34px; }
.land-links { display:flex; gap:26px; margin-left:auto; }
.land-links a { font-size:14px; font-weight:600; color:var(--muted); transition:color .18s; }
.land-links a:hover { color:var(--orange); }
.land-nav .nav-cta { display:flex; gap:10px; }
.hamburger { display:none; margin-left:auto; background:none; border:none; font-size:20px; cursor:pointer; }

.hero { padding:150px 6vw 90px; display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:center; position:relative; }
.hero::before { content:''; position:absolute; width:700px; height:700px; top:-250px; right:-200px; border-radius:50%; background:radial-gradient(circle, rgba(249,115,22,.14), transparent 65%); pointer-events:none; }
.hero-pill { display:inline-flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--border); padding:7px 16px; border-radius:99px; font-size:13px; font-weight:600; color:var(--muted); box-shadow:var(--shadow); margin-bottom:22px; }
.hero-pill .pulse { width:8px; height:8px; border-radius:50%; background:var(--green); animation:pulse 1.8s infinite; }
@keyframes pulse { 0%,100%{box-shadow:0 0 0 0 rgba(16,185,129,.4)} 50%{box-shadow:0 0 0 7px rgba(16,185,129,0)} }
.hero h1 { font-size:clamp(38px, 5vw, 62px); line-height:1.06; letter-spacing:-.035em; }
.hero h1 .grad-text { background:linear-gradient(120deg, #F97316, #FB923C, #F59E0B); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero p.sub { font-size:18px; color:var(--muted); margin:22px 0 32px; max-width:520px; }
.hero-ctas { display:flex; gap:14px; flex-wrap:wrap; }
.hero-trust { display:flex; gap:26px; margin-top:44px; flex-wrap:wrap; }
.hero-trust .ht { font-size:13.5px; color:var(--muted); display:flex; align-items:center; gap:8px; }
.hero-trust .ht i { color:var(--green); }

/* Hero visual: floating fox + cards */
.hero-visual { position:relative; height:480px; }
.fox-orb { position:absolute; inset:0; margin:auto; width:300px; height:300px; border-radius:50%; background:radial-gradient(circle at 35% 30%, #FFEDD5, #FED7AA 55%, #FDBA74); display:grid; place-items:center; box-shadow:0 40px 90px -30px rgba(249,115,22,.5); }
.fox-orb img { width:240px; animation:floaty 4.5s ease-in-out infinite; filter:drop-shadow(0 18px 30px rgba(154,52,18,.35)); }
@keyframes floaty { 0%,100%{transform:translateY(0) rotate(-2deg)} 50%{transform:translateY(-16px) rotate(2deg)} }
.float-card { position:absolute; background:rgba(255,255,255,.85); backdrop-filter:blur(14px); border:1px solid rgba(255,255,255,.9); border-radius:18px; padding:14px 18px; box-shadow:var(--shadow-lg); font-size:13px; animation:floaty 5s ease-in-out infinite; }
.float-card strong { display:block; font-size:14px; }
.fc-1 { top:30px; left:-10px; animation-delay:.4s; }
.fc-2 { bottom:70px; left:0; animation-delay:1.2s; }
.fc-3 { top:110px; right:-6px; animation-delay:.8s; }
.fc-4 { bottom:8px; right:30px; animation-delay:1.7s; }
.fc-stars { color:#F59E0B; font-size:12px; }

/* Stats band */
.stats-band { background:var(--ink); color:#fff; padding:56px 6vw; display:grid; grid-template-columns:repeat(4,1fr); gap:30px; text-align:center; }
.stats-band .sb-num { font-family:var(--font-display); font-weight:800; font-size:clamp(30px,3.4vw,44px); background:linear-gradient(120deg,#FB923C,#FDBA74); -webkit-background-clip:text; background-clip:text; color:transparent; }
.stats-band .sb-label { color:#9CA3AF; font-size:14px; margin-top:6px; }

.section { padding:96px 6vw; }
.section-head { text-align:center; max-width:640px; margin:0 auto 56px; }
.section-tag { display:inline-block; background:var(--orange-soft); color:var(--orange-dark); font-size:12.5px; font-weight:700; padding:6px 16px; border-radius:99px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:16px; }
.section-head h2 { font-size:clamp(28px,3.6vw,42px); letter-spacing:-.03em; }
.section-head p { color:var(--muted); font-size:16.5px; margin-top:14px; }

.feat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.feat-card { background:#fff; border:1px solid var(--border); border-radius:22px; padding:30px; transition:transform .25s ease, box-shadow .25s ease; position:relative; overflow:hidden; }
.feat-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); }
.feat-card::after { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--grad); opacity:0; transition:opacity .25s; }
.feat-card:hover::after { opacity:1; }
.feat-icon { width:52px; height:52px; border-radius:16px; background:var(--grad); color:#fff; display:grid; place-items:center; font-size:20px; margin-bottom:20px; box-shadow:0 10px 20px -8px rgba(249,115,22,.5); }
.feat-card h3 { font-size:18px; margin-bottom:10px; }
.feat-card p { color:var(--muted); font-size:14.5px; }

/* How it works */
.hiw { background:var(--ink); color:#fff; }
.hiw .section-head h2 { color:#fff; }
.hiw-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; counter-reset:step; }
.hiw-step { background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.09); border-radius:22px; padding:34px 28px; position:relative; transition:background .25s, transform .25s; }
.hiw-step:hover { background:rgba(255,255,255,.08); transform:translateY(-5px); }
.hiw-step .num { font-family:var(--font-display); font-size:48px; font-weight:800; background:linear-gradient(120deg,#FB923C,#F97316); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hiw-step h3 { font-size:19px; margin:14px 0 10px; color:#fff; }
.hiw-step p { color:#9CA3AF; font-size:14.5px; }

/* Pricing */
.price-toggle { display:flex; align-items:center; justify-content:center; gap:14px; margin-bottom:44px; font-weight:600; font-size:14px; }
.switch { width:52px; height:28px; background:var(--border); border-radius:99px; position:relative; cursor:pointer; transition:background .2s; }
.switch.on { background:var(--orange); }
.switch::after { content:''; position:absolute; width:22px; height:22px; background:#fff; border-radius:50%; top:3px; left:3px; transition:left .2s; box-shadow:0 2px 5px rgba(0,0,0,.2); }
.switch.on::after { left:27px; }
.price-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; align-items:stretch; }
.price-card { background:#fff; border:1.5px solid var(--border); border-radius:22px; padding:32px 26px; display:flex; flex-direction:column; transition:transform .25s, box-shadow .25s; position:relative; }
.price-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); }
.price-card.popular { border-color:var(--orange); box-shadow:0 24px 55px -22px rgba(249,115,22,.45); }
.pop-tag { position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:var(--grad); color:#fff; font-size:11.5px; font-weight:800; padding:5px 16px; border-radius:99px; letter-spacing:.05em; }
.price-card h3 { font-size:19px; }
.price-card .amount { font-family:var(--font-display); font-size:40px; font-weight:800; margin:16px 0 2px; letter-spacing:-.03em; }
.price-card .amount span { font-size:15px; color:var(--muted); font-weight:500; font-family:var(--font-body); }
.price-feats { list-style:none; margin:22px 0 26px; flex:1; }
.price-feats li { display:flex; gap:10px; font-size:13.5px; margin-bottom:11px; color:var(--ink-2); }
.price-feats li i { color:var(--green); margin-top:3px; }

/* Testimonials */
.testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.testi-card { background:#fff; border:1px solid var(--border); border-radius:22px; padding:28px; transition:transform .25s, box-shadow .25s; }
.testi-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-lg); }
.testi-card .t-stars { color:#F59E0B; margin-bottom:14px; font-size:13px; }
.testi-card p { font-size:14.5px; color:var(--ink-2); }
.t-by { display:flex; align-items:center; gap:12px; margin-top:20px; }
.t-by .avatar { width:42px; height:42px; }
.t-by strong { font-size:14px; display:block; }
.t-by span { font-size:12.5px; color:var(--muted); }

/* FAQ */
.faq-list { max-width:720px; margin:0 auto; }
.faq-item { background:#fff; border:1px solid var(--border); border-radius:18px; margin-bottom:12px; overflow:hidden; }
.faq-q { padding:20px 24px; display:flex; justify-content:space-between; align-items:center; cursor:pointer; font-weight:700; font-size:15.5px; font-family:var(--font-display); }
.faq-q i { transition:transform .25s; color:var(--orange); }
.faq-item.open .faq-q i { transform:rotate(180deg); }
.faq-a { max-height:0; overflow:hidden; transition:max-height .3s ease; color:var(--muted); font-size:14.5px; }
.faq-item.open .faq-a { max-height:200px; }
.faq-a > div { padding:0 24px 22px; }

/* CTA */
.cta-band { margin:0 6vw 96px; background:linear-gradient(135deg, #111827, #1F2937); border-radius:28px; padding:80px 40px; text-align:center; color:#fff; position:relative; overflow:hidden; }
.cta-band::before { content:''; position:absolute; width:500px; height:500px; border-radius:50%; background:radial-gradient(circle, rgba(249,115,22,.3), transparent 70%); bottom:-250px; left:50%; transform:translateX(-50%); }
.cta-band h2 { font-size:clamp(28px,3.6vw,42px); position:relative; }
.cta-band p { color:#9CA3AF; margin:16px auto 32px; max-width:480px; position:relative; }

/* Footer */
.land-footer { background:var(--ink); color:#9CA3AF; padding:64px 6vw 34px; }
.foot-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; margin-bottom:44px; }
.foot-grid h4 { color:#fff; font-size:14px; margin-bottom:16px; }
.foot-grid a { display:block; font-size:13.5px; margin-bottom:10px; transition:color .18s; }
.foot-grid a:hover { color:#FB923C; }
.foot-bottom { border-top:1px solid rgba(255,255,255,.08); padding-top:26px; display:flex; justify-content:space-between; font-size:13px; flex-wrap:wrap; gap:12px; }

.reveal { opacity:0; transform:translateY(30px); }

@media (max-width: 1024px) {
  .hero { grid-template-columns:1fr; padding-top:120px; }
  .hero-visual { display:none; }
  .feat-grid, .testi-grid, .hiw-steps { grid-template-columns:1fr 1fr; }
  .price-grid { grid-template-columns:1fr 1fr; }
  .stats-band { grid-template-columns:1fr 1fr; }
}
@media (max-width: 700px) {
  .land-links, .land-nav .nav-cta { display:none; }
  .hamburger { display:block; }
  .land-links.mobile-open { display:flex; flex-direction:column; position:absolute; top:100%; left:0; right:0; background:#fff; padding:20px 6vw; border-bottom:1px solid var(--border); box-shadow:var(--shadow-lg); }
  .feat-grid, .testi-grid, .hiw-steps, .price-grid { grid-template-columns:1fr; }
  .foot-grid { grid-template-columns:1fr 1fr; }
}
