
*{margin:0;padding:0;box-sizing:border-box}body{overflow-x:hidden;max-width:100vw}body{font-family:'Inter',system-ui,sans-serif;color:#111827;-webkit-font-smoothing:antialiased}a{cursor:pointer;text-decoration:none}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.4}}@keyframes ring{0%{transform:scale(1);opacity:0.6}100%{transform:scale(1.6);opacity:0}}
.ebar-top{background:#0F1F3D;padding:8px 48px;display:flex;justify-content:space-between;align-items:center}
.nav{background:#FFF;padding:14px 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(0,0,0,0.06);position:sticky;top:0;z-index:100}
.nav-brand{font-size:18px;font-weight:700;color:#0F1F3D;letter-spacing:-0.01em}
.nav-links{display:flex;align-items:center;gap:24px}
.nav-link{font-size:14px;font-weight:500;color:#4B5563;letter-spacing:0.01em;transition:color 0.2s}.nav-link:hover{color:#0B3D92}
.nav-cta{display:inline-flex;align-items:center;gap:6px;background:#FFC532;color:#0F1F3D;font-size:13px;font-weight:600;padding:9px 20px;border-radius:6px;box-shadow:0 1px 6px rgba(255,197,50,0.25);transition:all 0.2s}.nav-cta:hover{background:#F2B31E;transform:translateY(-1px)}
.nav-phone{display:inline-flex;align-items:center;gap:6px;color:#0F1F3D;font-size:13px;font-weight:600;padding:9px 16px;border-radius:6px;border:1.5px solid #E3E7EC;transition:all 0.2s}.nav-phone:hover{border-color:#0B3D92;color:#0B3D92}
.nav-toggle{display:none;width:40px;height:40px;border:none;background:none;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px}.nav-toggle span{display:block;width:22px;height:2px;background:#0F1F3D;border-radius:2px;transition:all 0.3s}
.nav-phone-mobile{display:none;align-items:center;gap:6px;color:#0F1F3D;font-size:12px;font-weight:600;padding:10px 14px;border-radius:8px;background:#FFC532;box-shadow:0 1px 6px rgba(255,197,50,0.25);transition:all 0.2s;margin-right:8px}
.mobile-bottom-bar{display:none;position:fixed;bottom:0;left:0;right:0;background:#FFF;border-top:1px solid #E3E7EC;box-shadow:0 -4px 16px rgba(15,31,61,0.1);padding:10px 12px;z-index:200;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
.desktop-bottom-bar{position:fixed;bottom:0;left:0;right:0;background:rgba(15,31,61,0.95);backdrop-filter:blur(12px);padding:16px 48px;z-index:200;display:flex;align-items:center;justify-content:space-between;transform:translateY(100%);transition:transform 0.4s ease;border-top:1px solid rgba(255,255,255,0.08)}.footer{padding-bottom:100px !important}
.footer-grid{grid-template-columns:1.6fr 1fr 1fr 1.2fr}
.desktop-bottom-bar.visible{transform:translateY(0)}
.dbb-left{display:flex;align-items:center;gap:12px}
.dbb-left span{font-size:14px;font-weight:500;color:rgba(226,232,240,0.8)}
.dbb-right{display:flex;align-items:center;gap:10px}
.dbb-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all 0.2s;border:none;font-family:Inter,sans-serif}
.dbb-primary{background:#FFC532;color:#0F1F3D;box-shadow:0 2px 8px rgba(255,197,50,0.3)}.dbb-primary:hover{background:#F2B31E;transform:translateY(-1px)}
.dbb-secondary{background:rgba(255,255,255,0.1);color:#FFFFFF;border:1px solid rgba(255,255,255,0.15)}.dbb-secondary:hover{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.25)}
.mbb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.mbb-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:16px 4px;border-radius:14px;border:1.5px solid #E3E7EC;background:#FFF;cursor:pointer;transition:all 0.2s;text-decoration:none;min-height:64px}
.mbb-btn:active{transform:scale(0.95)}
.mbb-btn i,.mbb-btn svg{font-size:26px;color:#0F1F3D;transition:color 0.2s}
.mbb-btn span{font-size:13px;font-weight:600;color:#4B5563;transition:color 0.2s}
.mbb-btn.primary{background:#FFC532;border-radius:14px;border:none;box-shadow:none}.mbb-btn.primary i,.mbb-btn.primary svg,.mbb-btn.primary span{color:#0F1F3D}
.nav-mobile{display:none;position:absolute;top:100%;left:0;right:0;background:#FFF;border-bottom:1px solid rgba(0,0,0,0.06);box-shadow:0 8px 24px rgba(15,31,61,0.08);padding:16px 24px;flex-direction:column;gap:4px;z-index:99}
.nav-mobile a{display:block;padding:12px 16px;font-size:15px;font-weight:500;color:#4B5563;border-radius:8px;transition:all 0.2s}.nav-mobile a:hover{background:#F1F3F6;color:#0B3D92}
.nav-mobile .nav-cta{margin-top:8px;justify-content:center;width:100%}.nav-mobile .nav-phone{margin-top:4px;justify-content:center;width:100%;color:#0F1F3D}
.nav-mobile.open{display:flex}
.nav-toggle.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.section{padding:80px 48px}.section-warm{background:#F6F7F9;border-top:1px solid #DCE3EC}.section-dark{background:#0F1F3D}.section-white{background:#FFF}
.container{max-width:1100px;margin:0 auto}.container-narrow{max-width:600px;margin:0 auto}
.eyebrow{display:inline-flex;align-items:center;gap:6px;margin-bottom:20px}.ebar{width:32px;height:3px;background:#FFC532;border-radius:2px}.etxt{font-size:13px;font-weight:500;color:#0B3D92;letter-spacing:0.06em;text-transform:uppercase}
.hsec{font-size:36px;font-weight:700;color:#0F1F3D;letter-spacing:-0.02em;line-height:1.15;margin:0 0 12px}.stxt{font-size:16px;color:#4B5563;line-height:1.7;margin:0 0 32px}
.btn-p{display:inline-flex;align-items:center;gap:8px;background:#FFC532;color:#0F1F3D;font-size:15px;font-weight:600;padding:14px 28px;border-radius:8px;box-shadow:0 2px 12px rgba(255,197,50,0.35);transition:all 0.2s;border:none;cursor:pointer}.btn-p:hover{background:#F2B31E;transform:translateY(-1px);box-shadow:0 4px 16px rgba(255,197,50,0.4)}.btn-p-sm{font-size:14px;padding:12px 24px}
.btn-s{display:inline-flex;align-items:center;gap:8px;background:transparent;color:#FFFFFF;font-size:15px;font-weight:500;padding:14px 28px;border-radius:8px;border:1.5px solid rgba(255,255,255,0.25);transition:all 0.2s;cursor:pointer}.btn-s:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.4)}
.btn-text{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#0B3D92;letter-spacing:0.01em}
.svc-tile{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:4/3;display:flex;align-items:flex-end;cursor:pointer;transition:all 0.3s}.svc-tile:hover{transform:scale(1.02);box-shadow:0 8px 24px rgba(15,31,61,0.15)}
.project-card{background:#FFF;border:1px solid #E3E7EC;border-radius:12px;overflow:hidden;transition:all 0.25s;cursor:pointer}.project-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(15,31,61,0.1);border-color:#0B3D92}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.portrait{display:flex;gap:24px;align-items:flex-start;max-width:620px}.portrait.right{flex-direction:row-reverse;margin-left:auto;text-align:right}
.portrait-circle{flex-shrink:0;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#C9D3E0,#B9C5D5);border:3px solid #fff;box-shadow:0 2px 12px rgba(15,31,61,0.12);display:flex;align-items:center;justify-content:center}.portrait-circle.on-warm{border-color:#F6F7F9}.portrait-circle i{font-size:28px;color:rgba(15,31,61,0.25)}
.portrait-meta{display:flex;align-items:center;gap:8px}.portrait.right .portrait-meta,.portrait.right .rstars{justify-content:flex-end}
.rstars{display:flex;gap:2px;margin-bottom:8px;color:#0B3D92;font-size:14px}
.rv-track{display:flex;gap:16px;overflow-x:auto;scroll-behavior:smooth;padding:4px 48px 16px;-ms-overflow-style:none;scrollbar-width:none;cursor:grab}.rv-track::-webkit-scrollbar{display:none}
.rv-card{min-width:340px;max-width:340px;background:#FFF;border-radius:12px;padding:24px;border:1px solid #E3E7EC;display:flex;flex-direction:column;flex-shrink:0;transition:all 0.25s}.rv-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(15,31,61,0.08)}
.rv-arrow{width:40px;height:40px;border-radius:50%;border:1.5px solid #E3E7EC;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:#0F1F3D;transition:all 0.2s}.rv-arrow:hover{border-color:#0B3D92;color:#0B3D92}
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.split-img{border-radius:16px;overflow:hidden;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(15,31,61,0.1)}
.split-check{display:flex;align-items:center;gap:10px;font-size:14px;color:#0F1F3D}.split-check i{font-size:16px;color:#0B3D92;flex-shrink:0}
.faq-item{background:#FFF;border:1px solid #E3E7EC;border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color 0.2s}.faq-item.active{border-color:#0B3D92}
.faq-q{display:flex;justify-content:space-between;align-items:center;padding:18px 22px}
.faq-a{max-height:0;overflow:hidden;padding:0 22px;transition:all 0.3s ease;font-size:14px;color:#4B5563;line-height:1.7}.faq-item.active .faq-a{max-height:200px;padding-bottom:20px}
.step-num{width:48px;height:48px;border-radius:50%;background:#FFC532;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:18px;font-weight:700;color:#0F1F3D}
.area-acc{background:#FFF;border:1px solid #E3E7EC;border-radius:12px;overflow:hidden;transition:border-color 0.2s}.area-acc.open{border-color:#0B3D92}
.suburb-pill{font-size:13px;font-weight:500;color:#0F1F3D;background:#F1F3F6;padding:6px 14px;border-radius:6px;border:1px solid #E3E7EC;transition:all 0.15s;display:inline-block}.suburb-pill:hover{border-color:#0B3D92;color:#0B3D92}
.marker{position:absolute;cursor:pointer;transition:all 0.3s;z-index:2}.marker:hover{z-index:10;transform:scale(1.15)}
.marker-ring{position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(255,197,50,0.3);animation:ring 2.5s ease-out infinite;pointer-events:none}.marker-sm .marker-ring{display:none}
.marker-dot{width:44px;height:44px;border-radius:50%;background:#FFC532;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;box-shadow:0 2px 8px rgba(255,197,50,0.4);border:3px solid #fff;position:relative}.marker-sm .marker-dot{width:32px;height:32px;font-size:12px;box-shadow:0 2px 6px rgba(255,197,50,0.3)}
.marker-label{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:4px;white-space:nowrap;font-size:11px;font-weight:600;color:#0F1F3D;background:rgba(255,255,255,0.95);padding:2px 8px;border-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,0.1);pointer-events:none;opacity:0;transition:opacity 0.2s}.marker:hover .marker-label{opacity:1}
.popup{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:12px;width:280px;background:#fff;border-radius:12px;box-shadow:0 8px 32px rgba(15,31,61,0.18);overflow:hidden;opacity:0;pointer-events:none;transition:all 0.25s;z-index:20}.popup::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:8px solid transparent;border-top-color:#fff}.marker:hover .popup{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(-4px)}
.insta-tile{aspect-ratio:1;border-radius:8px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s}.insta-tile:hover{transform:scale(1.03)}
.insta-hover{position:absolute;inset:0;background:rgba(15,31,61,0);transition:all 0.3s;display:flex;align-items:center;justify-content:center}.insta-tile:hover .insta-hover{background:rgba(15,31,61,0.5)}.insta-tile:hover .insta-hover i{color:#fff}
.offer-card{background:#FFF;border-radius:12px;padding:28px;border:1px solid #E3E7EC;transition:all 0.25s;position:relative;overflow:hidden;display:flex;flex-direction:column}.offer-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(15,31,61,0.08);border-color:#0B3D92}
.offer-badge{font-size:11px;font-weight:600;color:#0B3D92;background:rgba(255,197,50,0.08);padding:4px 10px;border-radius:4px;display:inline-block;margin-bottom:12px;align-self:flex-start}
.region-tab{padding:8px 18px;border-radius:8px;font-size:13px;font-weight:500;color:#4B5563;background:#FFF;border:1px solid #E3E7EC;cursor:pointer;transition:all 0.2s}.region-tab:hover{border-color:#0B3D92;color:#0B3D92}.region-tab.active{background:#FFC532;color:#0F1F3D;border-color:#0B3D92}
.g-pill{display:inline-flex;align-items:center;gap:8px;background:#FFFFFF;border:1px solid #E3E7EC;border-radius:100px;padding:8px 18px 8px 12px}.g-pill-divider{width:1px;height:12px;background:rgba(15,31,61,0.12)}
.form-input{width:100%;padding:12px 16px;border-radius:8px;border:1px solid rgba(255,255,255,0.12);background:rgba(255,255,255,0.06);color:#FFFFFF;font-size:14px;font-family:Inter,sans-serif;outline:none;transition:border-color 0.2s}.form-input:focus{border-color:#0B3D92}.form-input::placeholder{color:rgba(226,232,240,0.4)}
.form-label{font-size:12px;font-weight:500;color:rgba(226,232,240,0.5);text-transform:uppercase;letter-spacing:0.05em;display:block;margin-bottom:6px}
.brand-item{display:flex;flex-direction:column;align-items:center;gap:8px;filter:grayscale(100%);opacity:0.45;transition:all 0.3s;cursor:pointer}.brand-item:hover{filter:grayscale(0%);opacity:1}
.brand-icon{width:64px;height:64px;border-radius:12px;background:#F1F3F6;border:1px solid #E3E7EC;display:flex;align-items:center;justify-content:center}
.si{width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,0.08);display:inline-flex;align-items:center;justify-content:center;transition:background 0.2s;cursor:pointer}.si:hover{background:rgba(255,255,255,0.15)}.si i{font-size:16px;color:rgba(226,232,240,0.7)}
.fl{font-size:14px;color:rgba(226,232,240,0.75);display:block;margin-bottom:8px;transition:color 0.2s;cursor:pointer}.fl:hover{color:#0B3D92}
.ft-acc-header{font-size:12px;font-weight:600;color:rgba(226,232,240,0.5);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:14px;cursor:default;display:flex;justify-content:space-between;align-items:center}
.ft-acc-header span{pointer-events:none}
.ft-acc-icon{display:none}
.ft-acc-body{display:block}
@media(max-width:991px){.grid-3,.split{grid-template-columns:1fr 1fr}.grid-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.section{padding:64px 32px}.nav{padding:14px 24px}.ebar-top{padding:8px 24px}.rv-track{padding:4px 32px 16px}.portrait,.portrait.right{max-width:100%}.form-split{grid-template-columns:1fr !important}.locations-grid{grid-template-columns:1fr !important}.nav{position:relative}.nav-links{display:none}.nav-toggle{display:flex}.nav-phone-mobile{display:inline-flex}.mobile-bottom-bar{display:block}.desktop-bottom-bar{display:none !important}.chat-bubble{display:none !important}.footer{padding-bottom:120px !important}}
@media(max-width:767px){.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}
.ft-acc{border-top:1px solid rgba(255,255,255,0.08)}
.ft-acc-header{font-size:16px;font-weight:600;color:#FFFFFF;text-transform:none;letter-spacing:0;margin-bottom:0;padding:16px 0;cursor:pointer}
.ft-acc-icon{display:block;font-size:16px;color:rgba(226,232,240,0.5);transition:transform 0.3s}
.ft-acc.open .ft-acc-icon{transform:rotate(180deg);color:#0B3D92}
.ft-acc-body{display:none;padding-bottom:16px}
.ft-acc.open .ft-acc-body{display:block}
.btn-p,.btn-s{min-height:56px;font-size:16px}
.btn-p-sm{min-height:52px;font-size:15px}
.fi2,.cf{min-height:50px;font-size:15px}
.hsec{font-size:30px}
.nav-phone-mobile{padding:11px 16px;font-size:13px}
.faq-q{padding:20px 22px}
.faq-q span:first-child{font-size:16px}.hsec{font-size:28px}.section{padding:48px 20px}.hero-section{padding:60px 20px 48px !important;min-height:auto !important}.hero-stats{flex-wrap:wrap;gap:20px}.hero-ctas{flex-direction:column}.btn-p,.btn-s{width:100%;justify-content:center}.ebar-top .ebar-trust{display:none}.portrait,.portrait.right{flex-direction:column;text-align:left}.portrait.right .portrait-meta,.portrait.right .rstars{justify-content:flex-start}.rv-track{padding:4px 20px 16px}.map-container{height:320px !important}.brand-strip{gap:24px !important}}
@media(max-width:478px){.grid-4{grid-template-columns:1fr}.hero-section h1{font-size:30px !important}.hsec{font-size:26px}}
@media(max-width:767px){.split-img{min-height:0 !important;width:100%;max-width:100%}.popup{display:none}.marker:hover .popup{display:block}.two-col [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr !important}.cf{min-width:0;width:100%;box-sizing:border-box}.map-container{overflow:hidden !important}.two-col>*{min-width:0}.split[style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr !important}.split>*{min-width:0}[style*="grid-template-columns:1fr 1fr"],[style*="grid-template-columns:1fr 340px"],[style*="grid-template-columns:1.2fr 0.8fr"]{grid-template-columns:1fr !important}[style*="grid-template-columns:repeat(4,1fr)"]{grid-template-columns:repeat(2,1fr) !important}#urg{flex-wrap:wrap}#urg label{flex:1 1 40%}[style*="padding:64px 48px"],[style*="padding:56px 48px"]{padding-left:20px !important;padding-right:20px !important}[style*="grid-template-columns:1fr 1fr;gap:16px;max-width:760px"]{grid-template-columns:1fr !important}}