:root{
    --blue:#2563EB;
    --blue-hover:#1D4ED8;
    --blue-light:#DBEAFE;
    --navy:#0F1E3D;
    --navy-soft:#16264A;
    --gold:#B45309;
    --gold-bg:#FEF3C7;
    --gold-border:#FDE68A;
    --purple:#7C3AED;
    --purple-light:#EDE9FE;
    --red:#EF4444;
    --bg:#F8FAFC;
    --card:#FFFFFF;
    --border:#E5E7EB;
    --text:#111827;
    --text-dim:#6B7280;
    --text-faint:#9CA3AF;
    --radius:14px;
    --radius-lg:20px;
    --max:1180px;
    --serif:'Source Serif 4', Georgia, serif;
    --safe-t: env(safe-area-inset-top, 0px);
    --safe-b: env(safe-area-inset-bottom, 0px);
    --safe-l: env(safe-area-inset-left, 0px);
    --safe-r: env(safe-area-inset-right, 0px);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
    background:var(--bg);
    color:var(--text);
    -webkit-font-smoothing:antialiased;
    line-height:1.5;
    overflow-x:hidden;
    padding-left:var(--safe-l);
    padding-right:var(--safe-r);
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(16px,4vw,40px);}

  a:focus-visible, button:focus-visible{
    outline:2px solid var(--blue);
    outline-offset:3px;
    border-radius:8px;
  }

  button, .btn{
    font-family:inherit;
    cursor:pointer;
    border:none;
    border-radius:var(--radius);
    font-weight:600;
    font-size:15px;
    min-height:48px;
    min-width:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:transform .15s ease, background .15s ease, border-color .15s ease;
  }
  button:active, .btn:active{transform:scale(.97);}
  .btn-primary{background:var(--blue);color:#fff;padding:0 26px;}
  .btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border);padding:0 26px;}
  .btn-ghost{background:transparent;color:var(--text-dim);border:1px solid var(--border);padding:0 16px;min-height:40px;}
  .btn-navy{background:var(--navy);color:#fff;padding:0 26px;}
  @media (hover:hover){
    .btn-primary:hover{background:var(--blue-hover);}
    .btn-secondary:hover{border-color:var(--blue);color:var(--blue);}
    .btn-ghost:hover{color:var(--text);}
    .btn-navy:hover{background:var(--navy-soft);}
  }

  section{padding:clamp(40px,7vw,80px) 0;}
  section.tight{padding:clamp(20px,3vw,32px) 0;}

  /* ---------- Header ---------- */
  header{
    position:sticky;top:0;z-index:50;
    background:rgba(248,250,252,.92);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border);
    padding-top:var(--safe-t);
  }
  .header-row{display:flex;align-items:center;justify-content:space-between;height:64px;gap:12px;}
  .brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:clamp(16px,3vw,18px);letter-spacing:.4px;flex-shrink:0;min-width:0;color:var(--navy);}
  .brand img{width:30px;height:30px;border-radius:8px;flex-shrink:0;}
  .brand span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  nav.primary-nav{display:none;gap:28px;font-size:14.5px;color:var(--text-dim);}
  @media (hover:hover){ nav.primary-nav a:hover{ color:var(--text); } }
  .header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;}
  .header-actions .btn{padding:0 16px;min-height:40px;font-size:14px;}
  @media(min-width:860px){
    nav.primary-nav{display:flex;}
    .header-actions .btn{padding:0 20px;min-height:42px;}
  }

  /* ---------- Hero ---------- */
  .hero{padding-top:clamp(28px,5vw,52px);}
  .hero-inner{display:grid;gap:clamp(28px,6vw,56px);align-items:center;grid-template-columns:1fr;}
  @media(min-width:960px){ .hero-inner{grid-template-columns:1.05fr .95fr;} }
  .eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-size:13px;font-weight:600;color:var(--navy);
    background:var(--blue-light);border:1px solid #BFDBFE;
    padding:6px 14px;border-radius:999px;margin-bottom:20px;
  }
  h1{font-size:clamp(30px,6.5vw,50px);font-weight:800;letter-spacing:-.02em;line-height:1.1;max-width:17ch;}
  h1 .accent{color:var(--blue);}
  .hero p.lead{margin-top:16px;font-size:clamp(15px,2.2vw,18px);color:var(--text);font-weight:500;max-width:44ch;}
  .hero p.support{margin-top:10px;font-size:14.5px;color:var(--text-dim);max-width:48ch;}
  .scripture{
    font-family:var(--serif);
    font-style:italic;
    font-size:15.5px;
    color:var(--navy);
    margin-top:18px;
    padding-left:14px;
    border-left:3px solid var(--gold);
    max-width:42ch;
  }
  .scripture cite{display:block;font-style:normal;font-size:12.5px;color:var(--text-faint);margin-top:4px;font-family:'Inter',sans-serif;}
  .hero-actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap;}
  .signin-link{display:block;margin-top:16px;font-size:13.5px;color:var(--text-dim);}
  .signin-link a{color:var(--blue);font-weight:600;}

  /* ---------- Trust strip ---------- */
  .trust-strip{padding:22px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;}
  .trust-strip .wrap{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;}
  .trust-label{font-size:12.5px;color:var(--text-faint);font-weight:600;}
  .trust-pillars{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 10px;font-size:14.5px;font-weight:700;color:var(--navy);}
  .trust-pillars .dot{color:var(--text-faint);font-weight:400;}

  /* ---------- Product preview (mirrors real feed UI) ---------- */
  .preview{
    border-radius:var(--radius-lg);
    padding:2px;
    background:linear-gradient(155deg,var(--blue),var(--purple));
    max-width:400px;margin:0 auto;width:100%;
  }
  .preview-inner{background:var(--bg);border-radius:calc(var(--radius-lg) - 2px);padding:14px;}
  .mock-topbar{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 12px;}
  .mock-brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14px;color:var(--blue);}
  .mock-brand img{width:22px;height:22px;border-radius:6px;}
  .mock-tabs{display:flex;gap:14px;font-size:12.5px;color:var(--text-faint);}
  .mock-tabs .active{color:var(--blue);font-weight:700;}
  .mock-live-row{display:flex;gap:10px;margin-bottom:12px;overflow:hidden;}
  .mock-live{flex:1;min-width:0;background:linear-gradient(135deg,var(--purple),#5B21B6);border-radius:12px;padding:12px;}
  .mock-live-badge{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;color:#fff;background:var(--red);padding:2px 8px;border-radius:999px;margin-bottom:8px;}
  .mock-live-badge::before{content:"";width:5px;height:5px;border-radius:50%;background:#fff;}
  .mock-live-title{font-size:12.5px;font-weight:700;color:#fff;}
  .mock-live-sub{font-size:10.5px;color:#E9D5FF;margin-top:2px;}
  .mock-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;}
  .mock-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;justify-content:space-between;}
  .mock-who{display:flex;align-items:center;gap:10px;min-width:0;}
  .mock-avatar{width:34px;height:34px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--blue),var(--purple));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;}
  .mock-name{font-size:13.5px;font-weight:600;}
  .mock-sub{font-size:11.5px;color:var(--text-faint);}
  .mock-follow{font-size:11.5px;font-weight:600;color:var(--blue);border:1px solid var(--blue);border-radius:999px;padding:4px 12px;flex-shrink:0;}
  .mock-text{font-size:12.5px;color:var(--text-dim);line-height:1.55;}
  .mock-verse{display:inline-block;margin-top:8px;font-size:11.5px;color:var(--gold);background:var(--gold-bg);padding:3px 10px;border-radius:8px;}
  .mock-actions{display:flex;gap:16px;margin-top:12px;font-size:11.5px;color:var(--text-faint);}
  .mock-actions span{display:flex;align-items:center;gap:4px;}
  .preview-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:16px;}
  .preview-tags span{font-size:11.5px;color:var(--text-dim);background:#fff;border:1px solid var(--border);padding:5px 12px;border-radius:999px;}

  /* ---------- Section headers ---------- */
  .section-head{max-width:58ch;margin-bottom:clamp(24px,4vw,36px);}
  .section-head.center{margin-left:auto;margin-right:auto;text-align:center;}
  .eyebrow-plain{font-size:13px;font-weight:600;color:var(--blue);margin-bottom:10px;display:block;}
  h2{font-size:clamp(22px,4vw,32px);font-weight:800;letter-spacing:-.01em;}
  .section-head p{margin-top:10px;color:var(--text-dim);font-size:15.5px;}

  /* ---------- What is FAITHIN / pillars ---------- */
  .pillars{display:grid;grid-template-columns:1fr;gap:14px;}
  @media(min-width:640px){.pillars{grid-template-columns:1fr 1fr;}}
  @media(min-width:1024px){.pillars{grid-template-columns:repeat(3,1fr);}}
  .pillar{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(18px,2.4vw,24px);}
  .pillar .icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:19px;margin-bottom:14px;}
  .icon.blue{background:var(--blue-light);color:var(--blue);}
  .icon.gold{background:var(--gold-bg);color:var(--gold);}
  .icon.purple{background:var(--purple-light);color:var(--purple);}
  .pillar h3{font-size:16px;font-weight:700;margin-bottom:6px;}
  .pillar p{font-size:14px;color:var(--text-dim);}

  /* ---------- Ecosystem ---------- */
  .ecosystem{background:var(--navy);color:#fff;border-radius:var(--radius-lg);padding:clamp(28px,5vw,48px);}
  .ecosystem .section-head p{color:#B7C3DD;}
  .ecosystem .eyebrow-plain{color:#93C5FD;}
  .eco-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.12);border-radius:var(--radius);overflow:hidden;margin-top:8px;}
  @media(min-width:640px){.eco-grid{grid-template-columns:repeat(4,1fr);}}
  .eco-item{background:var(--navy-soft);padding:20px 16px;}
  .eco-item .glyph{font-size:20px;margin-bottom:10px;}
  .eco-item h4{font-size:14px;font-weight:700;margin-bottom:4px;}
  .eco-item p{font-size:12.5px;color:#AEBBD6;line-height:1.5;}

  /* ---------- Journey / steps ---------- */
  .journey-list{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--border);}
  @media(min-width:760px){.journey-list{grid-template-columns:1fr 1fr;}}
  .journey-item{display:flex;gap:14px;padding:16px 4px;border-bottom:1px solid var(--border);}
  @media(min-width:760px){.journey-item:nth-child(odd){border-right:1px solid var(--border);padding-right:20px;} .journey-item:nth-child(even){padding-left:20px;}}
  .journey-num{font-family:var(--serif);font-size:14px;color:var(--gold);flex-shrink:0;width:22px;}
  .journey-item p{font-size:14.5px;color:var(--text);}

  /* ---------- Why FAITHIN ---------- */
  .why-grid{display:grid;gap:14px;grid-template-columns:1fr;}
  @media(min-width:700px){ .why-grid{grid-template-columns:repeat(3,1fr);} }
  .why-item h3{font-size:15.5px;font-weight:700;margin-bottom:6px;}
  .why-item p{font-size:14px;color:var(--text-dim);}

  /* ---------- Feature grid ---------- */
  .grid{display:grid;grid-template-columns:1fr;gap:14px;}
  @media(min-width:640px){.grid{grid-template-columns:1fr 1fr;}}
  @media(min-width:1024px){.grid{grid-template-columns:repeat(3,1fr);}}
  .feature{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(18px,2.4vw,24px);}
  .feature .icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:19px;margin-bottom:14px;}
  .feature h3{font-size:16px;font-weight:700;margin-bottom:6px;}
  .feature p{font-size:14px;color:var(--text-dim);}

  /* ---------- Split sections (churches / creators / live) ---------- */
  .split{background:#F1F5F9;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
  .split .wrap{display:grid;gap:clamp(24px,4vw,40px);grid-template-columns:1fr;align-items:center;}
  @media(min-width:900px){.split .wrap{grid-template-columns:1fr 1fr;}}
  .split.reverse .wrap{direction:rtl;}
  .split.reverse .wrap > *{direction:ltr;}
  .check-list{margin-top:20px;display:flex;flex-direction:column;gap:12px;}
  .check-list li{display:flex;gap:10px;font-size:14.5px;color:var(--text-dim);}
  .check-list li::before{content:"✓";color:var(--blue);font-weight:700;flex-shrink:0;}
  .split-visual{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(20px,3vw,28px);}
  .split-visual .row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);}
  .split-visual .row:last-child{border-bottom:none;}
  .split-visual .row .glyph{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;background:var(--blue-light);color:var(--blue);}
  .split-visual .row .label{font-size:13.5px;font-weight:600;}
  .split-visual .row .desc{font-size:12px;color:var(--text-faint);}
  .split-cta{margin-top:24px;}

  /* live band accents */
  .live-band .split-visual{background:var(--navy);border-color:var(--navy-soft);color:#fff;}
  .live-band .split-visual .row{border-color:rgba(255,255,255,.12);}
  .live-band .split-visual .row .label{color:#fff;}
  .live-band .split-visual .row .desc{color:#AEBBD6;}
  .live-band .split-visual .row .glyph{background:rgba(255,255,255,.1);color:#93C5FD;}

  /* prayer band accents */
  .prayer-band{background:linear-gradient(180deg,#fff,var(--gold-bg) 220%);}

  /* ---------- AI section ---------- */
  .ai-card{background:linear-gradient(155deg,#FFFFFF,var(--purple-light));border:1px solid #DDD6FE;border-radius:var(--radius-lg);padding:clamp(24px,4vw,36px);}
  .ai-card .icon{width:48px;height:48px;border-radius:12px;background:#fff;color:var(--purple);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:16px;box-shadow:0 1px 2px rgba(0,0,0,.06);}
  .ai-card h2{font-size:clamp(20px,3.2vw,26px);}
  .ai-card p{color:var(--text-dim);margin-top:10px;max-width:56ch;font-size:15px;}
  .ai-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
  .ai-tags span{font-size:12.5px;color:var(--text-dim);background:#fff;border:1px solid var(--border);padding:5px 12px;border-radius:999px;}
  .ai-note{margin-top:18px;font-size:12.5px;color:var(--text-faint);border-top:1px solid #DDD6FE;padding-top:14px;max-width:60ch;}

  /* ---------- Global community ---------- */
  .globe-grid{display:grid;grid-template-columns:1fr;gap:14px;}
  @media(min-width:640px){.globe-grid{grid-template-columns:repeat(2,1fr);}}
  @media(min-width:1024px){.globe-grid{grid-template-columns:repeat(4,1fr);}}
  .globe-item{border:1px solid var(--border);border-radius:var(--radius);padding:18px;background:#fff;}
  .globe-item h4{font-size:14.5px;font-weight:700;margin-bottom:4px;}
  .globe-item p{font-size:13px;color:var(--text-dim);}

  /* ---------- How it works ---------- */
  .steps{display:grid;grid-template-columns:1fr;gap:20px;}
  @media(min-width:760px){.steps{grid-template-columns:repeat(4,1fr);}}
  .step .num{font-family:var(--serif);font-size:26px;color:var(--gold);}
  .step h3{font-size:15.5px;font-weight:700;margin-top:6px;margin-bottom:4px;}
  .step p{font-size:13.5px;color:var(--text-dim);}

  /* ---------- Final CTA ---------- */
  .final-cta{text-align:center;padding:clamp(56px,10vw,90px) clamp(16px,4vw,20px);background:var(--navy);color:#fff;}
  .final-cta h2{font-size:clamp(24px,5vw,36px);}
  .final-cta p{color:#B7C3DD;margin:12px auto 28px;max-width:42ch;}
  .final-cta .hero-actions{justify-content:center;}
  .final-cta .scripture{color:#DCE4F5;border-left-color:var(--gold);margin:0 auto 28px;text-align:left;display:inline-block;}
  .final-cta .scripture cite{color:#8FA0C4;}

  /* ---------- Footer ---------- */
  footer{border-top:1px solid var(--border);padding:32px 0 calc(32px + var(--safe-b));}
  .footer-row{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center;}
  .footer-links{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:13.5px;color:var(--text-dim);}
  @media (hover:hover){ .footer-links a:hover{color:var(--text);} }
  .footer-bottom{margin-top:20px;font-size:12.5px;color:var(--text-faint);}

  @media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto;}
    *{animation:none !important;transition:none !important;}
  }


