
:root{--purple:#533afd;--purple-dark:#4434d4;--heading:#061b31;--body:#64748d;--label:#273951;--border:#e5edf5;--dark:#1c1e54;--barbg:#151a20;--barfg:#f7f5f1;--shadow-el:rgba(50,50,93,0.25) 0px 30px 45px -30px,rgba(0,0,0,0.1) 0px 18px 36px -18px;--shadow-amb:rgba(23,23,23,0.08) 0px 15px 35px 0px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-feature-settings:"ss01";font-weight:300;font-size:16px;line-height:1.4;color:var(--body);background:#fff}
h1,h2,h3,h4{color:var(--heading);font-weight:300;font-feature-settings:"ss01"}
h1{font-size:56px;line-height:1.03;letter-spacing:-1.4px}
h2{font-size:32px;line-height:1.1;letter-spacing:-0.64px}
h3{font-size:22px;line-height:1.1;letter-spacing:-0.22px}
p{max-width:640px}
a{color:var(--purple);text-decoration:none}
a:hover{color:var(--purple-dark)}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.topbar{background:#151a20;color:#f7f5f1;font-size:13px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:8px;padding-bottom:8px;gap:16px}
.topbar a{color:#f7f5f1;font-weight:400}
.topbar .mono{font-family:'Source Code Pro',ui-monospace,monospace;font-size:11px;letter-spacing:.4px;text-transform:uppercase;opacity:.75}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:rgba(0,55,112,0.08) 0 1px 0 0}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:400;color:var(--heading);letter-spacing:-0.2px}
.brand .mark{width:28px;height:28px;border-radius:6px;background:linear-gradient(135deg,var(--purple),#f96bee);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:600;font-family:'Source Code Pro',monospace}
.nav-links{display:flex;align-items:center;gap:26px;list-style:none}
.nav-links a{font-size:14px;font-weight:400;color:var(--heading)}
.nav-links a:hover{color:var(--purple)}
.nav-links a[aria-current="page"]{color:var(--purple)}
.btn{display:inline-block;padding:8px 16px;border-radius:4px;font-size:16px;font-weight:400;font-feature-settings:"ss01";line-height:1;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn-primary{background:var(--purple);color:#fff;border:1px solid var(--purple)}
.btn-primary:hover{background:var(--purple-dark);color:#fff}
.btn-ghost{background:transparent;color:var(--purple);border:1px solid #b9b9f9}
.btn-ghost:hover{background:rgba(83,58,253,0.05)}
.btn-sm{font-size:14px;padding:7px 14px}
.btn-white{background:#fff;color:var(--heading);border:1px solid #fff}
.btn-white:hover{background:#e5edf5}
.hero{position:relative;padding:88px 0 72px;overflow:hidden}
.hero::before{content:"";position:absolute;top:-220px;right:-160px;width:640px;height:640px;background:radial-gradient(closest-side,rgba(234,34,97,0.10),rgba(249,107,238,0.08) 55%,transparent 75%);pointer-events:none}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;position:relative}
.eyebrow{font-family:'Source Code Pro',monospace;font-size:12px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--purple);margin-bottom:16px}
.hero p.lede{font-size:18px;line-height:1.4;margin:20px 0 32px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.panel{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-el);padding:24px}
.panel .p-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:14px}
.panel .p-title{font-family:'Source Code Pro',monospace;font-size:12px;font-weight:500;letter-spacing:.8px;text-transform:uppercase;color:var(--label)}
.badge-ok{background:rgba(21,190,83,0.2);color:#108c3d;border:1px solid rgba(21,190,83,0.4);border-radius:4px;padding:1px 6px;font-size:10px;font-weight:300}
.stat-row{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;border-bottom:1px solid #f6f9fc}
.stat-row:last-child{border-bottom:0}
.stat-row .k{font-size:14px;color:var(--label)}
.stat-row .v{font-feature-settings:"ss01","tnum";font-size:15px;font-weight:400;color:var(--heading)}
.section{padding:72px 0}
.section-head{max-width:640px;margin-bottom:40px}
.section-head p{margin-top:12px;font-size:18px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--border);border-radius:6px;padding:24px;box-shadow:var(--shadow-amb);transition:box-shadow .2s,transform .2s}
.card:hover{box-shadow:var(--shadow-el);transform:translateY(-2px)}
.card .icon{width:34px;height:34px;border-radius:4px;background:rgba(83,58,253,0.08);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.card .icon svg{width:18px;height:18px;stroke:var(--purple);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.card h3{margin-bottom:8px}
.card p{font-size:15px}
.dark{background:var(--dark);color:rgba(255,255,255,0.7)}
.dark h2,.dark h3{color:#fff}
.dark .wrap.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.dark ul{list-style:none;margin-top:24px;display:grid;gap:16px}
.dark li{display:flex;gap:12px;align-items:flex-start;font-size:16px}
.dark li .dot{flex:0 0 8px;width:8px;height:8px;border-radius:2px;background:linear-gradient(135deg,#ea2261,#f96bee);margin-top:7px}
.dark li strong{color:#fff;font-weight:400}
.dark .card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);box-shadow:none;color:rgba(255,255,255,0.7)}
.dark .card h3{font-size:18px;letter-spacing:-0.2px}
.areas{background:#f6f9fc;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.chip{background:#fff;border:1px solid var(--border);border-radius:4px;padding:6px 14px;font-size:14px;font-weight:400;color:var(--label)}
.chip.hub{border-color:#d6d9fc;background:rgba(83,58,253,0.05);color:var(--purple)}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.quote{background:#fff;border:1px solid var(--border);border-radius:6px;padding:24px;box-shadow:var(--shadow-amb)}
.quote blockquote{font-size:16px;line-height:1.45;color:var(--label);font-style:italic;margin-bottom:16px}
.quote .attr{font-size:13px;color:var(--body);border-top:1px solid #f6f9fc;padding-top:12px}
.cta{background:var(--dark);position:relative;overflow:hidden}
.cta::after{content:"";position:absolute;bottom:-260px;left:-140px;width:560px;height:560px;background:radial-gradient(closest-side,rgba(234,34,97,0.18),rgba(249,107,238,0.12) 55%,transparent 75%);pointer-events:none}
.cta .wrap{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px}
.cta p{color:rgba(255,255,255,0.7)}
.cta .actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
footer.site{background:#151a20;color:#f7f5f1;padding:56px 0 0}
footer.site a{color:#f7f5f1;opacity:.85}
footer.site a:hover{opacity:1;color:#b9b9f9}
.f-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:40px}
.f-grid h4{color:#fff;font-size:14px;font-weight:500;letter-spacing:.2px;margin-bottom:14px}
.f-grid ul{list-style:none;display:grid;gap:9px;font-size:14px}
.f-about p{font-size:14px;color:rgba(247,245,241,0.75);margin-top:12px;max-width:300px}
.f-bottom{border-top:1px solid rgba(255,255,255,0.1);padding:18px 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:rgba(247,245,241,0.65)}
.imgband{width:100%;height:200px;object-fit:cover;border-radius:12px;box-shadow:var(--shadow-el)}
:focus-visible{outline:2px solid var(--purple);outline-offset:2px}
@media(max-width:1024px){h1{font-size:48px;letter-spacing:-0.96px}.hero .wrap{grid-template-columns:1fr;gap:40px}.grid3{grid-template-columns:repeat(2,1fr)}.quotes{grid-template-columns:repeat(2,1fr)}.dark .wrap.split{grid-template-columns:1fr}.f-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){h1{font-size:32px;letter-spacing:-0.4px}h2{font-size:26px;letter-spacing:-0.26px}.section{padding:40px 0}.hero{padding:56px 0 48px}.grid3,.quotes{grid-template-columns:1fr}.nav-links{display:none}.f-grid{grid-template-columns:1fr}.topbar .mono{display:none}}

.container{max-width:1080px;margin:0 auto;padding:0 24px}
.narrow{max-width:820px;margin:0 auto;padding:0 24px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.grid{display:grid;gap:20px}
.content-section{padding:72px 0}
.alt,.section-alt{background:#f8fafd}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.site-header-inner,.header-inner,.nav-inner{display:flex;align-items:center;justify-content:space-between;max-width:1080px;margin:0 auto;padding:0 24px;height:64px;gap:16px}
.site-nav,.main-nav,.mainnav{display:flex;align-items:center}
.nav-list{display:flex;align-items:center;gap:26px;list-style:none}
.nav-list a,.site-nav a,.main-nav a,.mainnav a{font-size:14px;font-weight:400;color:var(--heading)}
.nav-list a:hover,.site-nav a:hover,.main-nav a:hover,.mainnav a:hover,.nav-list a[aria-current="page"],.site-nav a[aria-current="page"]{color:var(--purple)}
.nav-cta{margin-left:10px}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;padding-top:8px;padding-bottom:8px;gap:16px}
.topbar-brand{display:flex;align-items:center;gap:8px;font-weight:400;letter-spacing:-0.2px}
.topbar-email,.topbar-note{font-family:'Source Code Pro',monospace;font-size:11px;letter-spacing:.4px;text-transform:uppercase;opacity:.75}
.page-hero{position:relative;padding:72px 0 56px;background:linear-gradient(180deg,#f8fafd,rgba(248,250,253,0));border-bottom:1px solid var(--border);overflow:hidden}
.meta{font-family:'Source Code Pro',monospace;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--body)}
.page-hero .meta{margin-top:16px}
.lead{font-size:18px;line-height:1.45;margin-top:16px}
.btn-secondary{background:var(--heading);color:#fff;border:1px solid var(--heading)}
.btn-secondary:hover{background:#0f3050;color:#fff}
.btn-outline{background:#fff;color:var(--heading);border:1px solid var(--border)}
.btn-outline:hover{border-color:var(--purple);color:var(--purple)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{background:#fff;border:1px solid var(--border);border-radius:6px;padding:28px;box-shadow:var(--shadow-amb);transition:box-shadow .2s,transform .2s}
.service-card:hover{box-shadow:var(--shadow-el);transform:translateY(-2px)}
.service-card .icon{width:34px;height:34px;border-radius:4px;background:rgba(83,58,253,0.08);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.service-card h3{margin-bottom:8px}
.service-card p{font-size:15px}
.services-detail{display:grid;gap:56px}
.checklist{list-style:none;margin-top:16px}
.checklist li{position:relative;padding-left:30px;margin-bottom:10px;font-size:15px}
.checklist li::before{content:"✓";position:absolute;left:0;top:1px;width:19px;height:19px;border-radius:50%;background:rgba(83,58,253,0.08);color:var(--purple);font-size:11px;font-weight:400;display:flex;align-items:center;justify-content:center}
.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.info-card{background:#fff;border:1px solid var(--border);border-radius:6px;padding:24px;box-shadow:var(--shadow-amb)}
.info-card h3{font-size:18px;margin-bottom:10px}
.info-list{list-style:none}
.info-list li{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #f6f9fc;font-size:14px}
.info-list li:last-child{border-bottom:0}
.info-list li span:first-child{color:var(--label)}
.info-list li span:last-child{color:var(--heading);font-weight:400;font-feature-settings:"ss01","tnum"}
.process{padding:72px 0;background:#f8fafd}
.process-steps{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.process-steps li{counter-increment:step;background:#fff;border:1px solid var(--border);border-radius:6px;padding:24px;box-shadow:var(--shadow-amb)}
.process-steps li::before{content:"0" counter(step);display:block;font-family:'Source Code Pro',monospace;font-size:12px;font-weight:500;letter-spacing:.8px;color:var(--purple);margin-bottom:10px}
.process-steps h3{font-size:18px;margin-bottom:8px}
.steps-list{list-style:none;counter-reset:s;display:grid;gap:16px;margin-top:24px}
.steps-list li{counter-increment:s;position:relative;background:#fff;border:1px solid var(--border);border-radius:6px;padding:18px 20px 18px 60px;box-shadow:var(--shadow-amb)}
.steps-list li::before{content:counter(s,decimal-leading-zero);position:absolute;left:20px;top:20px;font-family:'Source Code Pro',monospace;font-size:13px;font-weight:500;color:var(--purple)}
.steps-list h3{font-size:17px;margin-bottom:4px}
.table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-amb)}
.compare-table{width:100%;min-width:560px;border-collapse:collapse;font-size:14px}
.compare-table th{font-family:'Source Code Pro',monospace;font-size:11px;font-weight:500;letter-spacing:.8px;text-transform:uppercase;color:var(--label);text-align:left;padding:12px 16px;background:#f8fafd;border-bottom:1px solid var(--border)}
.compare-table td{padding:12px 16px;border-bottom:1px solid #f6f9fc}
.compare-table tbody tr:last-child td{border-bottom:0}
.compare-table td:first-child{color:var(--heading);font-weight:400}
.testimonial{background:#f8fafd;border:1px solid var(--border);border-left:3px solid var(--purple);border-radius:6px;padding:28px;font-size:17px;color:var(--heading);max-width:640px}
.testimonial footer{margin-top:14px;font-size:13px;font-style:normal;color:var(--body)}
.testimonial cite{font-style:normal;font-weight:400;color:var(--label)}
.quote-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
.quote-form-wrap{background:#fff;border:1px solid var(--border);border-radius:8px;padding:32px;box-shadow:var(--shadow-el)}
.quote-form-wrap h2{margin-bottom:20px}
.quote-form{display:grid;gap:16px}
.quote-aside{background:var(--dark);color:rgba(247,245,241,.75);border-radius:8px;padding:32px;box-shadow:var(--shadow-el)}
.quote-aside h2,.quote-aside h3{color:#fff;margin-bottom:12px}
.quote-aside a{color:#fff;border-bottom:1px solid rgba(255,255,255,.35)}
.quote-aside .meta{color:rgba(247,245,241,.5)}
.contact-form{display:grid;gap:16px}
.contact-form label,.quote-form label{display:block;font-size:13px;font-weight:400;color:var(--label);margin-bottom:6px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form input,.contact-form select,.contact-form textarea,.quote-form input,.quote-form select,.quote-form textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:4px;background:#fff;font-family:inherit;font-size:15px;font-weight:300;color:var(--heading);transition:border-color .15s,box-shadow .15s}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3px rgba(83,58,253,0.12)}
.form-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px}
.form-consent input{width:auto;margin-top:3px;accent-color:var(--purple)}
.form-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}
.form-note{font-size:13px;color:var(--body)}
.cta-band{background:linear-gradient(135deg,var(--dark),var(--purple));color:#f7f5f1;padding:64px 0}
.cta-band h2{color:#fff}
.cta-band p{color:rgba(247,245,241,.75)}
.cta-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.cta-email{font-family:'Source Code Pro',monospace;font-size:14px;letter-spacing:.4px;color:#fff;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:2px}
.cta-email:hover{color:#fff;border-color:#fff}
.footer,.site-footer{background:#151a20;color:#f7f5f1;padding:64px 0 0}
.footer-inner{max-width:1080px;margin:0 auto;padding:0 24px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
.footer-brand{margin-bottom:14px}
.brand-footer{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:400;color:#fff;letter-spacing:-0.2px}
.brand-footer .mark{width:28px;height:28px;border-radius:6px;background:linear-gradient(135deg,var(--purple),#f96bee);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:600;font-family:'Source Code Pro',monospace}
.footer-col p{font-size:14px;color:rgba(247,245,241,.65)}
.footer-heading{font-family:'Source Code Pro',monospace;font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:rgba(247,245,241,.55);margin-bottom:14px}
.footer-links{list-style:none;display:grid;gap:10px}
.footer-links a{color:rgba(247,245,241,.8);font-size:14px;font-weight:300}
.footer-links a:hover{color:#fff}
.footer-abn{font-family:'Source Code Pro',monospace;font-size:11px;letter-spacing:.4px;text-transform:uppercase;color:rgba(247,245,241,.5);margin-top:14px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:48px;padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:13px;color:rgba(247,245,241,.55)}
.map-placeholder{min-height:260px;border:1px dashed #c9d7e6;border-radius:8px;background:repeating-linear-gradient(45deg,#eef3f9,#eef3f9 12px,#f6f9fc 12px,#f6f9fc 24px);display:flex;align-items:center;justify-content:center;font-family:'Source Code Pro',monospace;font-size:12px;letter-spacing:.8px;text-transform:uppercase;color:var(--body)}
.legal-page h2{font-size:24px;margin:36px 0 10px}
.legal-page h3{font-size:18px;margin:24px 0 8px}
.legal-page p{margin-bottom:12px}
.legal-page ul{margin:0 0 16px 20px}
.legal-page li{margin-bottom:6px}
.legal-page .meta{margin-bottom:24px}
@media(max-width:960px){.hero .wrap,.two-col,.quote-grid,.services-detail{grid-template-columns:1fr}.service-grid,.info-cards,.process-steps{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.service-grid,.info-cards,.process-steps,.footer-grid,.form-row{grid-template-columns:1fr}.nav-list{display:none}.site-header-inner,.header-inner,.nav-inner{height:56px}}
