:root{
  --navy:#14213d; --navy2:#0c1830; --gold:#c99a3e; --cream:#f7f1e6; --paper:#ffffff;
  --mist:#eef3f8; --ink:#182133; --muted:#667386; --line:#dbe3ee; --blue:#1f64ff;
  --green:#168755; --amber:#c78500; --red:#cf3f3f; --shadow:0 24px 70px rgba(12,24,48,.13);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;overflow-x:hidden} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,#fbfaf6 0%,#eef3f8 52%,#f7f9fc 100%);color:var(--ink);overflow-x:hidden}
button,a{font:inherit} button{border:0;cursor:pointer} .site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:1.25rem;padding:.9rem clamp(1rem,4vw,4rem);background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(219,227,238,.85)}
.brand{display:flex;align-items:center;gap:.75rem;color:var(--navy);text-decoration:none;min-width:max-content}.mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--navy);color:var(--gold);font-weight:900;letter-spacing:-.04em}.brand small{display:block;color:var(--muted);font-size:.78rem}.site-header nav{display:flex;gap:.25rem;margin-left:auto}.site-header nav a{color:var(--muted);text-decoration:none;padding:.7rem .85rem;border-radius:999px;font-weight:750}.site-header nav a:hover,.site-header nav a.active{background:#edf3ff;color:var(--blue)}
.primary,.secondary,.ghost{border-radius:999px;padding:.82rem 1.1rem;font-weight:850}.primary{background:var(--navy);color:white;box-shadow:0 14px 30px rgba(20,33,61,.18)}.secondary{background:#edf3ff;color:var(--blue)}.ghost{background:transparent;color:var(--navy);border:1px solid var(--line)}
main{padding:0 clamp(1rem,4vw,4rem) 4rem}.route{display:none;animation:fade .25s ease}.route.active{display:block}@keyframes fade{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
.hero{display:grid;grid-template-columns:minmax(0,1.12fr) 440px;gap:2rem;min-height:650px;align-items:center;padding:2.4rem 0}.eyebrow{text-transform:uppercase;color:var(--gold);font-size:.78rem;letter-spacing:.14em;font-weight:950;margin:0 0 .75rem}.hero h1,.page-head h1{font-family:Georgia,"Times New Roman",serif;color:var(--navy2);font-size:clamp(2.35rem,6vw,5.25rem);line-height:.96;margin:.2rem 0 1rem}.lede,.page-head p,.section-title p{color:var(--muted);font-size:1.08rem;line-height:1.65;max-width:850px}.cta-row,.trust-row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.trust-row{margin-top:1.25rem;color:var(--muted);font-size:.92rem}.trust-row span{padding:.45rem .75rem;background:white;border:1px solid var(--line);border-radius:999px}
.hero-card{display:grid;place-items:center}.phone-shell{width:min(360px,100%);border-radius:34px;padding:1.15rem;background:linear-gradient(155deg,#fff,#eef4ff);box-shadow:var(--shadow);border:1px solid white}.phone-top{width:88px;height:7px;background:#d7dfec;border-radius:99px;margin:0 auto 1rem}.phone-shell h3{margin:.25rem 0;color:var(--navy)}.progress-ring{margin:1rem auto;display:grid;place-items:center;width:142px;height:142px;border-radius:50%;background:conic-gradient(var(--green) 0 72%,#e5ebf3 72%);font-size:2.2rem;font-weight:950;color:var(--navy);position:relative}.progress-ring:before{content:"";position:absolute;inset:14px;background:white;border-radius:50%}.progress-ring{isolation:isolate}.progress-ring>*{z-index:1}.progress-ring{line-height:142px;text-align:center}.mini-list{display:grid;gap:.5rem}.mini-list span,.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.38rem .7rem;font-weight:850;font-size:.82rem}.ok{background:#e7f7ef;color:var(--green)}.warn{background:#fff4d8;color:var(--amber)}.risk{background:#ffe8e8;color:var(--red)}.info{background:#eaf0ff;color:var(--blue)}
.panel{background:rgba(255,255,255,.92);border:1px solid rgba(219,227,238,.92);border-radius:28px;box-shadow:var(--shadow);padding:1.4rem}.process-panel{margin:1rem 0 2rem}.section-title{display:grid;grid-template-columns:360px minmax(0,1fr);gap:1rem;align-items:end}.section-title h2,.panel h2{margin:.15rem 0 .45rem;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:2rem}.process-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.75rem;margin-top:1.2rem}.stage{padding:.85rem;border-radius:18px;background:#fbfdff;border:1px solid var(--line);min-height:128px}.stage strong{display:block;color:var(--navy);font-size:.96rem}.stage small{display:block;color:var(--muted);margin-top:.45rem;line-height:1.4}.stage-num{display:grid;place-items:center;width:32px;height:32px;background:var(--navy);color:var(--gold);border-radius:10px;font-weight:950;margin-bottom:.6rem}
.page-head{padding:2.2rem 0 1.2rem}.split-head{display:flex;justify-content:space-between;gap:1rem;align-items:end}.matter-badge{background:white;border:1px solid var(--line);border-radius:22px;padding:1rem 1.2rem;box-shadow:var(--shadow);min-width:280px}.matter-badge span{display:block;color:var(--muted);font-size:.8rem}.matter-badge strong{display:block;color:var(--navy);margin-top:.25rem}.matter-badge.dark{background:var(--navy);border-color:var(--navy);color:white}.matter-badge.dark strong{color:white}.journey-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:1rem}.steps-card{position:sticky;top:92px;align-self:start;background:var(--navy);color:white;border-radius:28px;padding:1.2rem;box-shadow:var(--shadow)}.steps-card h3{margin-top:0}.steps-card ol{padding-left:1.2rem;margin:0}.steps-card li{margin:.8rem 0;color:#b9c5d8}.steps-card li.active{color:white;font-weight:850}.steps-card li.done{color:#8fe0b6}.form-panel{min-height:520px}.step-screen{display:none}.step-screen.active{display:block}.choice-grid,.upload-grid,.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.choice,.upload-card{background:#fbfdff;border:1px solid var(--line);border-radius:18px;padding:1rem;text-align:left;color:var(--ink)}.choice.selected,.upload-card.done{border-color:var(--blue);background:#eef4ff;box-shadow:0 10px 30px rgba(31,100,255,.1)}.upload-card strong{display:block}.upload-card span{display:block;color:var(--muted);font-size:.85rem;margin-top:.25rem}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:.9rem}label{display:grid;gap:.35rem;color:var(--muted);font-weight:750}input,select{width:100%;border:1px solid var(--line);border-radius:14px;padding:.85rem;background:white;color:var(--ink);font:inherit}.ai-note{margin-top:1rem;border-left:4px solid var(--blue);background:#f2f6ff;border-radius:14px;padding:.9rem;color:var(--muted)}.form-nav{display:flex;justify-content:space-between;gap:.75rem;margin-top:1.4rem}.fact-card{border:1px solid var(--line);border-radius:18px;background:#fbfdff;padding:1rem}.fact-card span{display:block;color:var(--muted);font-size:.8rem}.fact-card strong{display:block;margin-top:.25rem;color:var(--navy)}
.quote-layout,.status-layout,.conveyancer-grid,.agent-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:1rem}.quote-result{display:grid;gap:.85rem}.quote-total{border-radius:24px;background:linear-gradient(155deg,var(--navy),#27446f);color:white;padding:1.2rem}.quote-total span{display:block;color:#c8d4e8}.quote-total strong{display:block;font-size:2.4rem;margin:.2rem 0}.fee-line{display:flex;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:16px;padding:.8rem;background:#fbfdff}.fee-line span:last-child{font-weight:900;color:var(--navy)}.quote-caveats{display:grid;gap:.45rem;color:var(--muted);font-size:.92rem}.otp-preview{display:none;margin-top:1rem;border:1px solid #bdd0ff;background:#f4f7ff;border-radius:20px;padding:1rem}.otp-preview.active{display:block}.extract-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.75rem}.extract-card{background:white;border:1px solid var(--line);border-radius:16px;padding:.75rem}.extract-card span{display:block;color:var(--muted);font-size:.76rem}.extract-card strong{display:block;color:var(--navy);margin-top:.25rem}.citation{font-size:.78rem;color:var(--blue);margin-top:.35rem}.status-report{display:grid;gap:1rem}.status-top{display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center}.status-score{display:grid;place-items:center;width:150px;height:150px;border-radius:32px;background:linear-gradient(155deg,var(--navy),#23406e);color:white;font-size:2.6rem;font-weight:950}.timeline{display:grid;gap:.7rem}.timeline-row{display:grid;grid-template-columns:125px 1fr auto;gap:.75rem;align-items:center;padding:.8rem;border:1px solid var(--line);border-radius:16px;background:#fbfdff}.timeline-row time{font-weight:950;color:var(--blue)}.next-actions,.exception-list,.matter-list,.doc-intel,.drafts{display:grid;gap:.75rem}.action-card,.exception-card,.matter-row,.doc-row,.draft-card{padding:.9rem;border:1px solid var(--line);border-radius:18px;background:#fbfdff}.action-card p,.exception-card p,.draft-card p,.doc-row p{color:var(--muted);margin:.35rem 0 0;line-height:1.45}.agent-update{border:1px solid var(--line);background:#fbfdff;border-radius:18px;padding:1rem;color:var(--muted);line-height:1.6}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.kpi{background:linear-gradient(155deg,#fff,#f3f7ff);border:1px solid var(--line);border-radius:24px;padding:1.1rem;box-shadow:var(--shadow)}.kpi span{display:block;color:var(--muted);font-size:.85rem}.kpi strong{display:block;color:var(--navy);font-size:2rem;margin:.2rem 0}.kpi small{color:var(--muted)}.lower{grid-template-columns:1fr 1fr}.section-head{display:flex;align-items:start;justify-content:space-between;gap:1rem}.matter-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.matter-row.selected{border-color:var(--blue);background:#eef4ff}.matter-row strong{color:var(--navy)}.readiness-report{display:grid;gap:.75rem}.report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.report-box{padding:1rem;border:1px solid var(--line);border-radius:18px;background:#fbfdff}.report-box strong{display:block;font-size:1.4rem;color:var(--navy)}.muted{color:var(--muted)}

/* Camera Modal */
.camera-modal{display:none;position:fixed;inset:0;z-index:1000;align-items:center;justify-content:center}.camera-modal.active{display:flex}.camera-overlay{position:absolute;inset:0;background:rgba(0,0,0,.85)}.camera-container{position:relative;background:#1a1a1a;border-radius:24px;overflow:hidden;width:min(420px,95vw);max-height:90vh;display:flex;flex-direction:column}.camera-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#2a2a2a;color:white}.camera-header h3{margin:0;font-size:1.1rem;font-weight:600}.camera-close{background:none;border:none;color:white;font-size:1.75rem;cursor:pointer;padding:0;line-height:1}.camera-viewfinder{position:relative;aspect-ratio:3/4;max-height:60vh;background:#000}.camera-viewfinder video{width:100%;height:100%;object-fit:cover}.camera-guide{position:absolute;inset:20px;border:2px dashed rgba(255,255,255,.5);border-radius:12px;display:flex;align-items:center;justify-content:center}.guide-corner{position:absolute;width:24px;height:24px;border:3px solid var(--gold)}.guide-corner.tl{top:0;left:0;border-right:none;border-bottom:none;border-radius:8px 0 0 0}.guide-corner.tr{top:0;right:0;border-left:none;border-bottom:none;border-radius:0 8px 0 0}.guide-corner.bl{bottom:0;left:0;border-right:none;border-top:none;border-radius:0 0 0 8px}.guide-corner.br{bottom:0;right:0;border-left:none;border-top:none;border-radius:0 0 8px 0}.camera-guide p{color:rgba(255,255,255,.7);background:rgba(0,0,0,.6);padding:.35rem .75rem;border-radius:20px;font-size:.8rem;margin:0}.camera-controls{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1.25rem;background:#2a2a2a}.camera-btn{background:#3a3a3a;border:none;color:white;padding:.7rem 1.25rem;border-radius:999px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.camera-btn:hover{background:#4a4a4a}.camera-btn.capture{width:64px;height:64px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;background:var(--gold)}.camera-btn.capture:hover{background:#d4aa50}.capture-icon{width:48px;height:48px;border:3px solid white;border-radius:50%;background:transparent}.camera-preview{display:none;padding:1rem;background:#1a1a1a}.camera-preview.active{display:block}.camera-preview img{width:100%;border-radius:12px;margin-bottom:1rem}.preview-actions{display:flex;gap:.75rem;justify-content:center}.preview-actions button{flex:1}.camera-processing{display:none;padding:2rem;text-align:center;color:white}.camera-processing.active{display:block}.spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--gold);border-radius:50%;animation:spin .9s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}

/* Mobile camera trigger */
.upload-card{cursor:pointer;transition:all .2s}.upload-card:hover{transform:translateY(-2px)}.upload-card .camera-icon{display:none;margin-right:.5rem}.upload-card.has-camera .camera-icon{display:inline}@media(max-width:650px){.upload-card .camera-icon{display:inline}}

/* Extraction results */
.extraction-results{animation:fade .3s ease}

@media(max-width:1120px){.hero,.journey-layout,.quote-layout,.status-layout,.conveyancer-grid,.agent-grid,.section-title{grid-template-columns:1fr.process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.steps-card{position:relative;top:auto}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;overflow:auto}.choice-grid,.upload-grid,.result-grid,.field-row,.extract-grid{grid-template-columns:1fr}}
@media(max-width:650px){
  main{padding:0 .85rem 3rem}
  .site-header{position:relative;padding:.7rem .85rem;gap:.65rem;align-items:flex-start}
  .brand{width:100%}.mark{width:40px;height:40px;border-radius:12px}.brand small{font-size:.72rem}
  .site-header nav{order:2;width:100%;display:flex;flex-wrap:wrap;gap:.35rem;margin-left:0;overflow:visible}
  .site-header nav a{padding:.48rem .6rem;font-size:.82rem;background:#f3f6fb;white-space:nowrap}
  .site-header .ghost{display:none}
  .hero{min-height:auto;padding:1.1rem 0;gap:1rem}.hero h1,.page-head h1{font-size:2.25rem;line-height:1.02}.lede,.page-head p,.section-title p{font-size:.98rem}
  .page-head{padding:1.1rem 0 .75rem}
  .process-grid,.kpi-grid,.report-grid{grid-template-columns:1fr}.split-head{display:block}.timeline-row,.status-top{grid-template-columns:1fr}.panel{border-radius:20px;padding:1rem}
  .phone-shell{width:100%}.progress-ring{width:118px;height:118px;font-size:1.8rem;line-height:118px}
  .field-row,.choice-grid,.upload-grid,.result-grid,.extract-grid{gap:.65rem}.quote-total strong{font-size:2rem}
}

/* --- Unified product landing refactor --- */
.compact-cta{white-space:nowrap;padding:.72rem 1rem}
.landing-hero{min-height:720px;grid-template-columns:minmax(0,1.08fr) 430px}
.landing-hero .hero-copy{max-width:900px}.landing-hero .lede{font-size:1.16rem}.hero-cta{font-size:1rem;padding:1rem 1.25rem}.landing-status-card h3{margin-bottom:.25rem}.landing-choice-panel{margin:0 0 1.25rem}.compact-title{grid-template-columns:300px minmax(0,1fr)}
.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.25rem}.portal-card{background:linear-gradient(155deg,#fff,#f6f9ff);border:1px solid var(--line);border-radius:24px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;min-height:260px}.portal-card h3{margin:.1rem 0;color:var(--navy);font-size:1.2rem}.portal-card p{color:var(--muted);line-height:1.55;margin:0;flex:1}.portal-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#edf3ff;font-size:1.6rem}.landing-proof-panel{margin-top:1rem}.proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1rem}.proof-grid div{background:#fbfdff;border:1px solid var(--line);border-radius:20px;padding:1rem}.proof-grid strong{display:block;color:var(--navy);font-size:2rem}.proof-grid span{display:block;color:var(--muted);font-size:.9rem;line-height:1.4}.site-header nav a[href="#home"]{display:inline-flex}

@media(max-width:1120px){
  .hero,.landing-hero,.journey-layout,.quote-layout,.status-layout,.conveyancer-grid,.agent-grid,.section-title,.compact-title{grid-template-columns:1fr}
  .process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .portal-grid{grid-template-columns:1fr}
  .proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps-card{position:relative;top:auto}
  .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-header{flex-wrap:wrap}
  .site-header nav{order:3;width:100%;overflow:auto;margin-left:0}
  .choice-grid,.upload-grid,.result-grid,.field-row,.extract-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .portal-grid,.proof-grid{grid-template-columns:1fr}
  .landing-hero{min-height:auto}
  .compact-cta{display:none}
  .hero-cta{width:100%;justify-content:center}
}
