.landing-page{--ink:#0f1012;--paper:#f5f0e8;--steel:#1e2a38;--amber:#f5a623;--amber-dark:#d4891a;--signal:#2ecc71;--red:#e74c3c;--mid:#6b7280;--border:#ddd8cc;background:var(--paper);color:var(--ink);font-family:var(--font-dm-sans),"DM Sans",sans-serif;overflow-x:hidden}.landing-page:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:0;opacity:.5}.landing-page nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:18px 40px;background:var(--paper);border-bottom:1.5px solid var(--border)}.landing-page .logo{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:26px;color:var(--ink);text-decoration:none;white-space:nowrap;word-spacing:0}.landing-page .logo .logo-wordmark{display:inline-block;letter-spacing:.1em;color:var(--ink)}.landing-page .logo .logo-accent{color:var(--amber);letter-spacing:.1em}.landing-page nav .nav-links{display:flex;gap:32px;list-style:none;align-items:center}.landing-page nav a{font-size:14px;font-weight:500;color:var(--mid);text-decoration:none;letter-spacing:.3px;transition:color .2s}.landing-page nav a:hover{color:var(--ink)}.landing-page .nav-cta{background:var(--ink)!important;color:var(--paper)!important;padding:10px 22px;border-radius:4px;font-weight:700!important;letter-spacing:.5px;transition:background .2s,color .2s!important}.landing-page .nav-cta:hover{background:var(--amber)!important;color:var(--ink)!important}.landing-page .hero{position:relative;min-height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:120px 40px 80px;max-width:1280px;margin:0 auto;gap:60px}.landing-page .hero-left{animation:lndFadeUp .8s ease both}.landing-page .hero-right{animation:lndFadeUp .8s ease .2s both}.landing-page .hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--amber-dark);background:rgba(245,166,35,.12);border:1px solid rgba(245,166,35,.3);padding:6px 14px;border-radius:2px;margin-bottom:28px}.landing-page .hero-eyebrow:before{content:"";width:6px;height:6px;background:var(--amber);border-radius:50%;animation:lndPulse 2s ease infinite}.landing-page .hero h1{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:clamp(64px,7vw,100px);line-height:.92;letter-spacing:1px;color:var(--ink);margin-bottom:28px}.landing-page .hero h1 .accent{color:var(--amber);display:block}.landing-page .hero h1 .strikethrough{position:relative;color:var(--mid)}.landing-page .hero h1 .strikethrough:after{content:"";position:absolute;left:0;top:50%;width:100%;height:4px;background:var(--red);border-radius:2px}.landing-page .hero-sub{font-size:18px;color:var(--mid);max-width:440px;margin-bottom:40px;font-weight:300;line-height:1.7}.landing-page .hero-sub strong{color:var(--ink);font-weight:700}.landing-page .hero-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.landing-page .lnd-btn-primary{display:inline-flex;align-items:center;gap:10px;background:var(--amber);color:var(--ink);font-weight:700;font-size:15px;letter-spacing:.3px;padding:16px 32px;border-radius:4px;text-decoration:none;transition:transform .15s,box-shadow .15s;box-shadow:4px 4px 0 var(--ink);border:none;cursor:pointer}.landing-page .lnd-btn-primary:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);color:var(--ink)}.landing-page .lnd-btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--ink);font-weight:500;font-size:14px;text-decoration:none;padding:16px 8px;border-bottom:2px solid var(--border);transition:border-color .2s}.landing-page .lnd-btn-ghost:hover{border-color:var(--ink)}.landing-page .hero-social-proof{margin-top:48px;display:flex;align-items:center;gap:16px}.landing-page .tradie-avatars{display:flex}.landing-page .avatar{width:36px;height:36px;border-radius:50%;border:2.5px solid var(--paper);background:var(--steel);display:flex;align-items:center;justify-content:center;font-size:14px;margin-left:-8px;color:var(--paper);font-weight:700}.landing-page .avatar:first-child{margin-left:0}.landing-page .avatar.a1{background:#1e3a5f}.landing-page .avatar.a2{background:#2d5016}.landing-page .avatar.a3{background:#5c2d0e}.landing-page .avatar.a4{background:#3d1a78}.landing-page .social-text{font-size:13px;color:var(--mid)}.landing-page .social-text strong{color:var(--ink)}.landing-page .hero-right{position:relative;display:flex;justify-content:center;align-items:center}.landing-page .phone-frame,.landing-page .phone-wrap{position:relative;width:300px}.landing-page .phone-frame{background:var(--steel);border-radius:40px;padding:16px 12px;box-shadow:20px 30px 80px rgba(0,0,0,.25),0 0 0 2px hsla(0,0%,100%,.08);z-index:2}.landing-page .phone-notch{width:100px;height:26px;background:var(--steel);border-radius:0 0 16px 16px;margin:0 auto 8px;position:relative;z-index:3}.landing-page .phone-screen{background:var(--paper);border-radius:28px;overflow:hidden;min-height:540px}.landing-page .app-header{background:var(--steel);padding:16px 18px 12px;display:flex;justify-content:space-between;align-items:center}.landing-page .app-logo{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:20px;color:var(--paper);letter-spacing:1.5px}.landing-page .signal-badge{display:flex;align-items:center;gap:5px;font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace;font-size:9px;color:var(--signal);letter-spacing:1px}.landing-page .signal-dot{width:7px;height:7px;background:var(--signal);border-radius:50%;animation:lndPulse 1.5s ease infinite}.landing-page .app-body{padding:16px}.landing-page .app-label{font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace;font-size:8px;text-transform:uppercase;letter-spacing:1.5px;color:var(--mid);margin-bottom:10px}.landing-page .app-quote-title{font-weight:700;font-size:13px;color:var(--ink);margin-bottom:14px}.landing-page .line-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#fff;border-radius:6px;margin-bottom:6px;border-left:3px solid var(--amber);font-size:11px}.landing-page .line-item .li-name{color:var(--ink);font-weight:500}.landing-page .line-item .li-price{font-weight:700;color:var(--ink);font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace}.landing-page .app-total{margin-top:14px;padding:12px 10px;background:var(--steel);border-radius:8px;display:flex;justify-content:space-between;align-items:center}.landing-page .app-total .label{font-size:10px;color:hsla(37,39%,94%,.6);letter-spacing:1px;text-transform:uppercase;font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace}.landing-page .app-total .amount{font-size:20px;font-weight:700;color:var(--amber);font-family:var(--font-bebas),"Bebas Neue",sans-serif;letter-spacing:1px}.landing-page .app-pdf-btn{margin-top:12px;width:100%;padding:12px;background:var(--amber);border-radius:8px;text-align:center;font-weight:700;font-size:12px;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:6px}.landing-page .ticker{background:var(--ink);overflow:hidden;padding:14px 0;position:relative;z-index:10}.landing-page .ticker-track{display:flex;width:-moz-max-content;width:max-content;animation:lndTickerRoll 20s linear infinite}.landing-page .ticker-item{display:inline-flex;align-items:center;gap:12px;padding:0 40px;font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--paper);white-space:nowrap}.landing-page .ticker-item .sep{color:var(--amber);font-size:18px}.landing-page .section-kicker{font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace;font-size:11px;text-transform:uppercase;letter-spacing:3px;color:var(--amber-dark);margin-bottom:20px}.landing-page .pillars{padding:120px 40px;max-width:1280px;margin:0 auto}.landing-page .pillars-headline{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:clamp(48px,5vw,72px);line-height:.95;letter-spacing:1px;color:var(--ink);margin-bottom:80px;max-width:700px}.landing-page .pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1.5px solid var(--border)}.landing-page .pillar{padding:56px 44px;border-right:1.5px solid var(--border);position:relative;overflow:hidden;transition:background .3s;display:flex;flex-direction:column}.landing-page .pillar:last-child{border-right:none}.landing-page .pillar:hover{background:#fff}.landing-page .pillar-num{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:120px;line-height:1;color:var(--border);position:absolute;top:-20px;right:-10px;letter-spacing:-2px;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .3s}.landing-page .pillar:hover .pillar-num{color:rgba(245,166,35,.15)}.landing-page .pillar-icon{width:56px;height:56px;background:var(--ink);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:28px;position:relative;z-index:1;transition:background .3s}.landing-page .pillar:hover .pillar-icon{background:var(--amber)}.landing-page .pillar h3{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:36px;letter-spacing:1px;color:var(--ink);margin-bottom:16px;position:relative;z-index:1}.landing-page .pillar p{font-size:15px;color:var(--mid);line-height:1.7;position:relative;z-index:1}.landing-page .pillar-stat{margin-top:auto;padding-top:24px;border-top:1.5px solid var(--border);position:relative;z-index:1}.landing-page .pillar-stat .stat-num{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:48px;color:var(--amber);letter-spacing:1px;line-height:1;display:block}.landing-page .pillar-stat .stat-label{font-size:12px;color:var(--mid);letter-spacing:.5px}.landing-page .compare{background:var(--steel);padding:120px 40px;position:relative;overflow:hidden}.landing-page .compare-inner{max-width:1100px;margin:0 auto}.landing-page .compare .section-kicker{color:rgba(245,166,35,.8)}.landing-page .compare-headline{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:clamp(40px,4.5vw,64px);color:var(--paper);margin-bottom:60px;line-height:.95}.landing-page .features-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:hsla(0,0%,100%,.05);border-radius:12px;overflow:hidden}.landing-page .feat-card{background:hsla(0,0%,100%,.04);padding:36px 32px;transition:background .3s}.landing-page .feat-card:hover{background:hsla(0,0%,100%,.08)}.landing-page .feat-card-icon{font-size:32px;margin-bottom:18px;display:block}.landing-page .feat-card h4{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:22px;letter-spacing:.5px;color:var(--paper);margin-bottom:10px}.landing-page .feat-card p{font-size:14px;color:hsla(37,39%,94%,.55);line-height:1.7}.landing-page .offline-section{padding:120px 40px;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.landing-page .signal-map{width:100%;background:var(--steel);border-radius:16px;padding:32px;aspect-ratio:1;position:relative;overflow:hidden}.landing-page .map-grid{position:absolute;inset:0;background-image:linear-gradient(hsla(0,0%,100%,.04) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.04) 1px,transparent 0);background-size:32px 32px}.landing-page .zone{position:absolute;border-radius:50%;filter:blur(30px);opacity:.5}.landing-page .zone.dead{background:rgba(231,76,60,.6)}.landing-page .zone.weak{background:rgba(245,166,35,.4)}.landing-page .zone.none{background:rgba(100,116,139,.3)}.landing-page .tradie-pin{position:absolute;top:50%;left:45%;transform:translate(-50%,-50%);z-index:10}.landing-page .pin-ring{width:60px;height:60px;border-radius:50%;background:var(--amber);display:flex;align-items:center;justify-content:center;font-size:24px;border:3px solid var(--paper);animation:lndPinBounce 3s ease infinite;position:relative}.landing-page .status-bubbles{position:absolute;bottom:24px;left:24px;right:24px;display:flex;flex-direction:column;gap:8px}.landing-page .status-bubble{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:12px;font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace;letter-spacing:.5px}.landing-page .status-bubble.offline-ok{background:rgba(46,204,113,.15);border:1px solid rgba(46,204,113,.3);color:var(--signal)}.landing-page .status-bubble.no-signal{background:rgba(231,76,60,.12);border:1px solid rgba(231,76,60,.25);color:#ff6b6b}.landing-page .offline-headline{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:clamp(44px,4.5vw,68px);line-height:.92;color:var(--ink);margin-bottom:28px}.landing-page .offline-headline .highlight{color:var(--amber)}.landing-page .offline-body{font-size:17px;color:var(--mid);line-height:1.75;margin-bottom:36px}.landing-page .offline-checklist{list-style:none;display:flex;flex-direction:column;gap:12px}.landing-page .offline-checklist li{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:500;color:var(--ink)}.landing-page .offline-checklist li .icon-box{width:32px;height:32px;background:rgba(46,204,113,.12);border:1px solid rgba(46,204,113,.3);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.landing-page .pricing{background:var(--ink);padding:120px 40px;position:relative;overflow:hidden}.landing-page .pricing-inner{max-width:1100px;margin:0 auto}.landing-page .pricing .section-kicker{color:rgba(245,166,35,.8)}.landing-page .pricing-headline{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:clamp(44px,5vw,72px);color:var(--paper);margin-bottom:16px;line-height:.95}.landing-page .pricing-sub{color:hsla(37,39%,94%,.5);font-size:16px;margin-bottom:60px}.landing-page .pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:hsla(0,0%,100%,.06);border-radius:12px;overflow:hidden}.landing-page .price-card{background:var(--ink);padding:44px 36px;position:relative;transition:background .3s;display:flex;flex-direction:column}.landing-page .price-card.featured{background:var(--steel);border:2px solid var(--amber);margin:-2px}.landing-page .price-card:not(.featured):before{content:"";display:block;height:43px;visibility:hidden}.landing-page .price-card.featured:before{content:"MOST POPULAR";display:block;font-family:var(--font-jetbrains),"JetBrains Mono",ui-monospace,monospace;font-size:10px;letter-spacing:2px;color:var(--ink);background:var(--amber);padding:4px 12px;width:-moz-fit-content;width:fit-content;border-radius:20px;margin-bottom:20px;font-weight:700}.landing-page .plan-name{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:24px;letter-spacing:2px;color:var(--paper);margin-bottom:12px}.landing-page .plan-price{margin-bottom:8px;display:flex;align-items:baseline;gap:4px}.landing-page .plan-price .currency{font-size:20px;color:var(--amber);font-weight:700;margin-top:4px}.landing-page .plan-price .amount{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:72px;color:var(--paper);line-height:1;letter-spacing:-2px}.landing-page .plan-desc,.landing-page .plan-price .period{font-size:13px;color:hsla(37,39%,94%,.4)}.landing-page .plan-desc{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid hsla(0,0%,100%,.06);box-sizing:content-box;min-height:3.5em}.landing-page .plan-features{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:36px;flex:1}.landing-page .plan-features li{display:flex;align-items:center;gap:10px;font-size:14px;color:hsla(37,39%,94%,.7)}.landing-page .plan-features li .feat-icon{color:var(--signal);font-size:14px}.landing-page .plan-features li.feat-excluded{color:hsla(37,39%,94%,.25)}.landing-page .plan-features li.feat-excluded .feat-icon{color:hsla(37,39%,94%,.2)}.landing-page .plan-features li.feat-premium{color:hsla(37,39%,94%,.9)}.landing-page .plan-features li.feat-premium .feat-icon{color:var(--amber)}.landing-page .plan-cta{display:block;width:100%;padding:14px;text-align:center;margin-top:auto;border-radius:6px;font-weight:700;font-size:14px;letter-spacing:.5px;text-decoration:none;transition:all .2s}.landing-page .plan-cta.outline{border:1.5px solid hsla(0,0%,100%,.15);color:var(--paper)}.landing-page .plan-cta.outline:hover{background:hsla(0,0%,100%,.06)}.landing-page .plan-cta.solid{background:var(--amber);color:var(--ink);border:none;box-shadow:0 4px 20px rgba(245,166,35,.3)}.landing-page .plan-cta.solid:hover{background:var(--amber-dark);box-shadow:0 4px 30px rgba(245,166,35,.5)}.landing-page .savings-banner{margin-top:40px;padding:20px 28px;background:rgba(245,166,35,.08);border:1px solid rgba(245,166,35,.2);border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:20px}.landing-page .savings-banner p{color:hsla(37,39%,94%,.7);font-size:14px}.landing-page .savings-banner strong{color:var(--amber);font-size:20px;font-family:var(--font-bebas),"Bebas Neue",sans-serif;letter-spacing:1px}.landing-page .cta-strip{padding:120px 40px;max-width:900px;margin:0 auto;text-align:center}.landing-page .cta-strip h2{font-family:var(--font-bebas),"Bebas Neue",sans-serif;font-size:clamp(52px,6vw,88px);line-height:.92;color:var(--ink);margin-bottom:28px}.landing-page .cta-strip h2 .line2{color:var(--amber)}.landing-page .cta-strip p{font-size:17px;color:var(--mid);margin-bottom:44px;max-width:520px;margin-left:auto;margin-right:auto;line-height:1.7}.landing-page .cta-note{margin-top:20px;font-size:13px;color:var(--mid);display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.landing-page .cta-note span{display:flex;align-items:center;gap:5px}.landing-page footer{background:var(--ink);padding:40px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}.landing-page footer .logo{color:var(--paper);white-space:nowrap}.landing-page footer .logo .logo-wordmark{color:var(--paper)}.landing-page footer .logo .logo-accent{color:var(--amber)}.landing-page footer p{font-size:13px;color:hsla(37,39%,94%,.3)}.landing-page .footer-links{display:flex;gap:24px;list-style:none}.landing-page .footer-links a{font-size:13px;color:hsla(37,39%,94%,.4);text-decoration:none;transition:color .2s}.landing-page .footer-links a:hover{color:var(--amber)}.landing-page .reveal{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease}.landing-page .reveal.visible{opacity:1;transform:none}@keyframes lndFadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes lndPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes lndTickerRoll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes lndPinBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (max-width:1024px){.landing-page .pillars-grid{grid-template-columns:1fr}.landing-page .pillar{border-right:none;border-bottom:1.5px solid var(--border)}.landing-page .pillar:last-child{border-bottom:none}.landing-page .features-3col{grid-template-columns:1fr 1fr}.landing-page .offline-section{grid-template-columns:1fr}.landing-page .pricing-grid{grid-template-columns:1fr 1fr}.landing-page footer{flex-direction:column;text-align:center}}@media (max-width:768px){.landing-page nav{padding:12px 16px;flex-wrap:wrap;gap:12px}.landing-page nav .nav-links{display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:0;justify-content:flex-end;min-height:44px;align-items:center}.landing-page nav .nav-links a{min-height:44px;display:inline-flex;align-items:center;padding:0 12px}.landing-page .hero{grid-template-columns:1fr;padding:100px 20px 60px}.landing-page .hero-right{display:none}.landing-page .compare,.landing-page .cta-strip,.landing-page .offline-section,.landing-page .pillars,.landing-page .pricing{padding:80px 20px}.landing-page footer{padding:32px 20px}.landing-page .pricing-grid{grid-template-columns:1fr}}@media (max-width:600px){.landing-page .features-3col{grid-template-columns:1fr}}