:root{
  --navy:#071936;
  --navy-2:#0d274f;
  --ink:#101827;
  --muted:#5f6b7a;
  --gold:#d99a17;
  --gold-2:#f2b633;
  --cream:#fbf8f1;
  --line:#e8e2d8;
  --card:#ffffff;
  --shadow:0 24px 70px rgba(7,25,54,.12);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.55;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{width:min(1160px, calc(100% - 40px)); margin:0 auto}
.eyebrow{letter-spacing:.16em; text-transform:uppercase; color:var(--gold); font-weight:800; font-size:.78rem}
h1,h2,h3{margin:0; line-height:1.04; letter-spacing:-.045em}
h1{font-size:clamp(2.1rem,4.2vw,4.1rem); max-width:680px}
h2{font-size:clamp(2.1rem,4.2vw,4.1rem)}
h3{font-size:1.25rem; letter-spacing:-.02em}
p{margin:0;color:var(--muted);font-size:1.02rem}
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.65rem;
  min-height:52px; padding:0 22px; border-radius:10px; font-weight:800;
  border:1px solid transparent; transition:.2s ease; white-space:nowrap;
}
.btn.primary{background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:#071936; box-shadow:0 12px 28px rgba(217,154,23,.28)}
.btn.primary:hover{transform:translateY(-1px); box-shadow:0 16px 35px rgba(217,154,23,.34)}
.btn.secondary{background:white; border-color:#cdd5df; color:var(--navy)}
.btn.dark{background:var(--navy); color:white}
.btn.ghost{border-color:rgba(255,255,255,.3); color:white}
.site-header{
  position:sticky; top:0; z-index:50; background:rgba(255,255,255,.88);
  backdrop-filter:blur(16px); border-bottom:1px solid rgba(7,25,54,.08)
}
.nav{height:86px; display:flex; align-items:center; justify-content:space-between; gap:24px}

/* --- FIXED LOGO STYLES --- */
.logo{display:flex; align-items:center; gap:14px}
.logo-mark {
  width: 70px;
  height: 54px;
  display: grid; 
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 1fr;
  align-items: center;
  justify-items: center;
  font-family: Georgia, serif;
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 0.8;
  color: var(--navy);
  border-right: 1px solid var(--line);
  padding-right: 14px;
}
.logo-mark .f {
  grid-row: 1;
  transform: translateX(-4px);
}
.logo-mark .s {
  grid-row: 2;
  color: var(--gold);
  transform: translateX(-2px);
}
.logo-text strong{display:block; letter-spacing:.22em; font-size:1.1rem; color:var(--navy)}
.logo-text small{display:block; letter-spacing:.22em; color:var(--muted); font-size:.63rem; margin-top:5px}

.nav-links{display:flex; align-items:center; gap:28px; font-size:.82rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em}
.nav-links a{position:relative}
.nav-links a:hover{color:var(--gold)}
.mobile-toggle{display:none; border:0; background:var(--navy); color:white; border-radius:10px; padding:10px 12px; font-weight:800}

.hero{
  position:relative; overflow:hidden; background:
    radial-gradient(circle at 72% 45%, rgba(217,154,23,.18), transparent 24%),
    linear-gradient(90deg,#fff 0%,#fff 44%,#f7f3ec 100%);
}
.hero-grid{display:grid; grid-template-columns:1fr 1.05fr; gap:52px; align-items:center; min-height:720px; padding:72px 0}
.hero h1 .gold{color:var(--gold)}
.hero-copy{display:grid; gap:26px}
.hero-copy .lead{font-size:1.22rem; color:#263244; max-width:650px}
.cta-row{display:flex; gap:16px; flex-wrap:wrap; margin-top:8px}
.hero-visual{min-height:520px; position:relative; border-radius:34px; overflow:hidden}
.signal-field{
  position:absolute; inset:0; background:
    radial-gradient(circle at 56% 45%, rgba(217,154,23,.22), transparent 8%),
    radial-gradient(circle at 62% 52%, rgba(7,25,54,.65), transparent 35%),
    linear-gradient(135deg, rgba(255,255,255,.35), rgba(7,25,54,.95));
}
.signal-field:before{
  content:""; position:absolute; inset:-20%;
  background-image:
    linear-gradient(110deg, rgba(255,255,255,.15) 1px, transparent 1px),
    radial-gradient(circle, rgba(217,154,23,.75) 1px, transparent 3px);
  background-size:42px 42px, 52px 52px;
  transform:rotate(-12deg); opacity:.7
}
.orb{
  position:absolute; left:43%; top:33%; width:190px; height:190px; border-radius:50%;
  background:rgba(255,255,255,.92); display:grid; place-items:center; text-align:center;
  color:var(--navy); font-weight:900; box-shadow:0 0 0 1px rgba(217,154,23,.45), 0 0 80px rgba(217,154,23,.75)
}
.orb span{display:block; font-size:.78rem; color:var(--gold); margin-top:4px; letter-spacing:.1em}
.float-card{
  position:absolute; width:245px; background:rgba(255,255,255,.92); border:1px solid rgba(255,255,255,.55);
  border-radius:16px; box-shadow:0 22px 45px rgba(7,25,54,.18); padding:20px
}
.float-card strong{display:block; color:var(--navy); margin-bottom:6px}
.float-card p{font-size:.93rem; color:#364152}
.float-card.one{left:3%; top:36%}
.float-card.two{right:8%; top:10%}
.float-card.three{right:2%; bottom:16%}
.float-card.four{left:14%; bottom:8%}
.trust-strip{border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff}
.trust-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:0}
.trust-item{display:flex; gap:16px; align-items:center; padding:28px 24px; border-right:1px solid var(--line)}
.trust-item:last-child{border-right:0}
.icon{
  width:46px; height:46px; border-radius:50%; background:#fff8e8; border:1px solid #f0d59a; display:grid; place-items:center;
  color:var(--gold); font-weight:900; flex:0 0 auto
}
.section{padding:94px 0}
.section.alt{background:linear-gradient(180deg,#f9fafb,#fff)}
.center{text-align:center; max-width:830px; margin:0 auto 42px}
.card-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px}
.card{
  background:var(--card); border:1px solid var(--line); border-radius:20px; padding:30px; box-shadow:0 8px 25px rgba(7,25,54,.05)
}
.card .icon{margin-bottom:18px}
.card p{font-size:.96rem; margin-top:12px}
.flow-wrap{background:#fff; border:1px solid var(--line); border-radius:28px; box-shadow:var(--shadow); padding:28px}
.flow{display:grid; grid-template-columns:repeat(5,1fr); gap:0; align-items:stretch}
.step{position:relative; padding:22px 18px; text-align:center; border-right:1px solid var(--line)}
.step:last-child{border-right:0}
.step:after{content:"→"; position:absolute; right:-10px; top:50%; color:var(--gold); font-weight:900; font-size:1.4rem}
.step:last-child:after{display:none}
.num{display:inline-grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--gold); color:var(--navy); font-weight:900; margin-bottom:12px}
.step .circle{width:68px; height:68px; margin:0 auto 16px; border-radius:50%; background:var(--navy); color:white; display:grid; place-items:center; font-size:1.5rem}
.step p{font-size:.88rem}
.dark-section{background:linear-gradient(135deg,var(--navy),#031022); color:white}
.dark-section h2,.dark-section h3{color:white}
.dark-section p{color:#cbd5e1}
.proof-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.proof-card{border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.04); border-radius:20px; padding:28px}
.tag{font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; color:var(--gold); font-weight:900}
.proof-meta{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:20px 0; padding-top:20px; border-top:1px solid rgba(255,255,255,.14)}
.proof-meta small{display:block; color:var(--gold); font-weight:900; text-transform:uppercase; margin-bottom:6px}
.outcome{color:var(--gold-2); font-size:1.6rem; font-weight:900; letter-spacing:-.04em}
.split{display:grid; grid-template-columns:.9fr 1.1fr; gap:56px; align-items:center}
.panel{border-radius:28px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow); padding:38px}
.check-list{display:grid; gap:15px; margin-top:24px}
.check{display:flex; gap:12px; align-items:flex-start}
.check b{color:var(--navy)}
.final-cta{text-align:center; padding:88px 0; background:radial-gradient(circle at 50% 0%,rgba(217,154,23,.18),transparent 32%), var(--navy); color:white}
.final-cta p{color:#dce5ef; margin:16px auto 26px; max-width:620px}
.footer{padding:28px 0; border-top:1px solid var(--line); color:var(--muted); font-size:.9rem}
.footer .container{display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap}

.page-hero{padding:90px 0; background:linear-gradient(135deg,#fff,#fbf8f1)}
.page-hero h1{font-size:clamp(2rem,3.6vw,3.5rem)}
.content{padding:72px 0}
.two-col{display:grid; grid-template-columns:1fr 1fr; gap:24px}
.service-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px}
.muted-box{background:var(--cream); border:1px solid var(--line); border-radius:22px; padding:30px}

@media(max-width:980px){
  .mobile-toggle{display:block}
  .nav-links{display:none; position:absolute; top:86px; left:0; right:0; background:white; padding:22px; border-bottom:1px solid var(--line); flex-direction:column; align-items:flex-start}
  .nav-links.open{display:flex}
  .nav-links .btn{width:100%}
  .hero-grid,.split,.two-col{grid-template-columns:1fr}
  .hero-grid{min-height:auto}
  .hero-visual{min-height:480px}
  .card-grid,.proof-grid,.service-grid{grid-template-columns:1fr 1fr}
  .flow{grid-template-columns:1fr}
  .step{border-right:0; border-bottom:1px solid var(--line)}
  .step:after{content:"↓"; right:50%; top:auto; bottom:-15px}
}
@media(max-width:640px){
  .container{width:min(100% - 28px, 1160px)}
  .nav{height:78px}
  .logo-mark {
    width: 54px;
    font-size: 1.8rem;
    padding-right: 8px;
  }
  .logo-text strong{font-size:.9rem}
  .logo-text small{display:none}
  .nav-links{top:78px}
  .hero-grid{padding:46px 0}
  h1{font-size:2.05rem}
  .hero-visual{min-height:420px}
  .float-card{
    max-width:260px;
    padding:24px 26px;
  }
  .orb{width:140px;height:140px; font-size:.85rem}
  .trust-grid,.card-grid,.proof-grid,.service-grid{grid-template-columns:1fr}
  .trust-item{border-right:0; border-bottom:1px solid var(--line)}
  .section{padding:68px 0}
  .cta-row .btn{width:100%}
}

/* --- Premium Additions --- */
.diagnostic-band{background:linear-gradient(135deg,#fff,#fbf8f1)}
.diagnostic-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.diagnostic-stats div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 10px 25px rgba(7,25,54,.05)}
.diagnostic-stats strong{display:block;color:var(--navy);font-size:1.35rem;letter-spacing:-.04em}
.diagnostic-stats span{display:block;color:var(--muted);font-size:.85rem;margin-top:4px}
.diagnostic-card .btn{margin-top:24px;width:100%}
.diagnostic-output-grid{grid-template-columns:repeat(3,1fr)}
.roi-section{background:#fff}
.roi-card{background:var(--navy);color:#fff;border-radius:28px;padding:32px;box-shadow:var(--shadow);display:grid;gap:14px}
.roi-card label{display:grid;gap:7px;font-weight:800;color:#eaf1f9;font-size:.9rem}
.roi-card input{width:100%;border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:13px 14px;background:rgba(255,255,255,.08);color:#fff;font-size:1rem}
.roi-card input:focus{outline:2px solid var(--gold)}
.roi-result{margin-top:10px;background:#fff;border-radius:18px;padding:22px;color:var(--navy);display:flex;justify-content:space-between;align-items:center;gap:20px}
.roi-result span{color:var(--muted);font-weight:800;text-transform:uppercase;font-size:.76rem;letter-spacing:.08em}.roi-result strong{font-size:2rem;color:var(--gold);letter-spacing:-.05em}.small-note{font-size:.9rem;margin-top:16px;color:var(--muted)}
.founder-section{background:linear-gradient(180deg,#fff,#fbf8f1)}
.founder-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.founder-photo-card{position:relative;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);background:#fff;border:1px solid var(--line)}.founder-photo-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.founder-badge{position:absolute;left:22px;right:22px;bottom:22px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.6);border-radius:18px;padding:18px}.founder-badge strong{display:block;color:var(--navy);font-size:1.1rem}.founder-badge span{display:block;color:var(--muted);font-size:.9rem}.founder-lead{margin:20px 0;font-size:1.13rem;color:#263244}.founder-section blockquote{margin:24px 0;padding:22px 26px;border-left:4px solid var(--gold);background:#fff;border-radius:0 18px 18px 0;font-size:1.25rem;color:var(--navy);font-weight:800;letter-spacing:-.03em}.founder-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.founder-cloud span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-weight:800;color:var(--navy);font-size:.82rem}
.testimonial-section{background:#fff}.testimonial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.testimonial{border:1px solid var(--line);border-radius:24px;padding:30px;background:#fff;box-shadow:0 12px 32px rgba(7,25,54,.06)}.quote-mark{font-size:3rem;line-height:1;color:var(--gold);font-family:Georgia,serif}.testimonial p{font-size:1.08rem;color:#243044}.testimonial-name{margin-top:20px;color:var(--navy);font-weight:900}.testimonial-role{color:var(--muted);font-size:.9rem}
.fs-chatbot{position:fixed;right:22px;bottom:22px;z-index:9999}.chat-toggle{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:var(--navy);border:0;border-radius:999px;padding:14px 18px;font-weight:900;box-shadow:0 15px 35px rgba(7,25,54,.22);cursor:pointer}.chat-panel{display:none;position:absolute;right:0;bottom:64px;width:min(360px,calc(100vw - 34px));background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.chat-panel.open{display:block}.chat-head{background:var(--navy);color:#fff;padding:16px 18px;display:flex;justify-content:space-between;align-items:center}.chat-close{background:transparent;border:0;color:#fff;font-size:1.5rem;cursor:pointer}.chat-body{padding:18px;display:grid;gap:10px}.bot-msg,.bot-response{background:#f6f8fb;border-radius:14px;padding:12px;color:#243044}.chat-body button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px;text-align:left;font-weight:800;color:var(--navy);cursor:pointer}.chat-body button:hover{border-color:var(--gold)}
@media(max-width:980px){.diagnostic-stats,.founder-grid,.diagnostic-output-grid{grid-template-columns:1fr}.testimonial-grid{grid-template-columns:1fr}}
@media(max-width:640px){.diagnostic-stats{grid-template-columns:1fr}.roi-result{display:block}.roi-result strong{display:block;margin-top:8px}.chat-panel{right:-8px}}

/* --- Final mobile layout for hero orb + float cards --- */
@media(max-width:768px){
  .hero-visual{
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    min-height:auto !important;
    padding:28px 16px 24px !important;
    overflow:hidden !important;
    border-radius:28px !important;
    display:block !important;
  }

  .hero-visual .signal-field{
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
  }

  .hero-visual .orb{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:170px !important;
    height:170px !important;
    min-width:170px !important;
    min-height:170px !important;
    margin:0 auto 18px auto !important;
    text-align:center !important;
    font-size:.9rem !important;
    line-height:1.25 !important;
    opacity:1 !important;
    z-index:2 !important;
  }

  .hero-visual .orb span{
    display:none !important;
  }

  .hero-visual .float-card,
  .hero-visual .float-card.one,
  .hero-visual .float-card.two,
  .hero-visual .float-card.three,
  .hero-visual .float-card.four{
    position:relative !important;
    display:block !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:92% !important;
    max-width:420px !important;
    margin:0 auto 14px auto !important;
    padding:18px 20px !important;
    box-sizing:border-box !important;
    border-radius:22px !important;
    z-index:2 !important;
  }

  .hero-visual .float-card:last-child{
    margin-bottom:0 !important;
  }

  .hero-visual .float-card strong{
    display:block !important;
    font-size:1.05rem !important;
    line-height:1.25 !important;
    margin-bottom:7px !important;
  }

  .hero-visual .float-card p{
    font-size:.95rem !important;
    line-height:1.42 !important;
  }
}
