/* Elementor 4.2 page components mapped from the React prototype. */
.elementor-page .site-content{min-height:0}.elementor-page .inner-main{padding-top:84px}.spp-elementor-page{overflow:hidden}.spp-el-section{--padding-top:120px;--padding-bottom:145px;position:relative}.spp-el-section>.e-con-inner{max-width:none!important}.elementor-element.spp-el-shell{--width:min(1180px,calc(100% - 40px))!important;width:min(1180px,calc(100% - 40px))!important;margin-inline:auto}.spp-el-section .elementor-widget{margin:0}.spp-el-section .elementor-heading-title{color:inherit;font-family:inherit}.spp-el-section em{font-family:Georgia,serif;font-weight:400}.spp-el-section-heading{display:grid!important;grid-template-columns:1.35fr .65fr;gap:90px;align-items:end;margin-bottom:65px}.spp-el-eyebrow .elementor-heading-title{text-transform:uppercase;letter-spacing:.17em;color:var(--maroon);font-size:.72rem;font-weight:700;display:flex;align-items:center;gap:12px}.spp-el-eyebrow .elementor-heading-title:before{content:"";width:28px;height:3px;background:currentColor;border-radius:2px}.spp-el-section h2.elementor-heading-title{font-family:Manrope,sans-serif;font-size:clamp(2.7rem,5.2vw,4.8rem);line-height:.99;letter-spacing:-.055em}.spp-el-lead{color:var(--muted);font-size:1.02rem;line-height:1.75}.spp-el-lead p{margin:0}.spp-el-actions{display:flex!important;flex-direction:row!important;align-items:center;gap:28px}.spp-el-primary .elementor-button{color:#fff;background:var(--maroon);border-radius:3px 14px;padding:16px 23px;font-weight:700;box-shadow:0 10px 25px #6f1e1b29}.spp-el-secondary .elementor-button{color:var(--ink);background:transparent;padding:12px 0;font-weight:700}.spp-el-secondary .elementor-button:hover{color:var(--maroon)}

.elementor-element.spp-el-hero{--padding-top:0;--padding-bottom:0;height:calc(100vh - 84px)!important;min-height:800px!important;max-height:980px;background:#f5f1e9;overflow:hidden;display:flex!important;justify-content:center}.spp-el-hero>.e-con-inner{min-height:inherit}.spp-el-hero-image{position:absolute!important;inset:0 0 0 43%;z-index:0}.spp-el-hero-image,.spp-el-hero-image .elementor-widget-container,.spp-el-hero-image img{height:100%}.spp-el-hero-image img{width:100%;object-fit:cover}.spp-el-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f5f1e9,rgba(245,241,233,.62) 15%,transparent 43%)}.spp-el-hero-shell{min-height:inherit;justify-content:center;position:relative;z-index:2}.spp-el-hero-copy{width:54%;gap:0}.spp-el-display .elementor-heading-title{font-family:Manrope,sans-serif;font-size:clamp(4rem,7vw,7.25rem);line-height:.84;letter-spacing:-.055em;margin:22px 0 30px}.spp-el-display em{color:var(--maroon)}.spp-el-hero-lead{max-width:585px;color:#4f5b56;font-size:1.08rem;line-height:1.75;margin-bottom:32px}.spp-el-hero-lead p{margin:0}.spp-el-trustline{margin-top:37px;font-size:.76rem;font-weight:700}.spp-el-trustline p{margin:0}.elementor-element.spp-el-stamp{position:absolute!important;right:4.5%;bottom:10%;z-index:3;--width:126px!important;width:126px!important;height:126px;min-height:126px;border-radius:50%;background:var(--gold);place-content:center;text-align:center;transform:rotate(7deg);box-shadow:0 15px 40px #00000029;color:#382e08;text-transform:uppercase}.spp-el-stamp p{display:flex;flex-direction:column;margin:0}.spp-el-stamp small{font-size:.56rem;letter-spacing:.12em;font-weight:800}.spp-el-stamp strong{font-family:Manrope;font-size:1.65rem}.spp-el-hero:before,.spp-el-hero:after{content:"";position:absolute;z-index:2;height:28px;border-radius:70% 20% 60% 40%;right:31%;top:19%;transform:rotate(-5deg)}.spp-el-hero:before{width:240px;background:var(--green)}.spp-el-hero:after{width:150px;background:var(--gold);top:23%;right:32%;transform:rotate(-7deg)}

.spp-el-services{background:#fff}.spp-el-service-grid{display:grid!important;grid-template-columns:repeat(4,1fr);gap:14px}.spp-el-service-card{height:290px;position:relative;padding:32px 28px;border-radius:4px 28px;overflow:hidden;display:block!important;transition:.3s}.spp-el-service-card:hover{transform:translateY(-7px);border-radius:25px 4px}.spp-el-service-card .elementor-widget-container p{margin:0}.spp-el-card-number{position:absolute!important;right:25px;top:23px;width:auto!important}.spp-el-card-number .elementor-heading-title{font-size:.67rem;font-weight:800;letter-spacing:.1em}.spp-el-card-title{margin-top:72px!important}.spp-el-card-title .elementor-heading-title{font-family:Manrope;font-size:1.16rem}.spp-el-card-copy{font-size:.85rem;line-height:1.55;opacity:.78;margin-top:10px!important}.spp-el-card-arrow{position:absolute!important;right:22px;bottom:18px;width:auto!important}.tone-maroon{background:var(--maroon);color:#fff}.tone-green{background:var(--green);color:#fff}.tone-gold{background:var(--gold);color:#302906}.tone-teal{background:var(--teal);color:#fff}.tone-terracotta{background:var(--terracotta);color:#fff}.tone-navy{background:var(--navy);color:#fff}

.spp-el-commercial{background:var(--green);color:#fff;--padding-top:150px;--padding-bottom:160px}.spp-el-commercial .spp-el-eyebrow .elementor-heading-title{color:#ffffffbf}.spp-el-commercial-top{display:grid!important;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end}.spp-el-commercial .spp-el-lead{color:#ffffffbd}.spp-el-tags p{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 0}.spp-el-tags span{border:1px solid #ffffff3b;padding:8px 13px;border-radius:20px;font-size:.75rem}.spp-el-process{display:grid!important;grid-template-columns:190px repeat(5,1fr);gap:12px;margin-top:75px;padding:35px;background:#fff;color:var(--ink);border-radius:4px 35px}.spp-el-process-label .elementor-heading-title{color:var(--maroon);font-size:.73rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.spp-el-process-label p{font-family:Manrope;font-weight:700;margin:10px 0}.spp-el-process-step{min-height:100px;border-left:1px solid #e3e6e4;padding-left:24px;justify-content:center}.spp-el-process-step span.elementor-heading-title{color:var(--maroon);font-size:.69rem}.spp-el-process-step h3.elementor-heading-title{font-size:.85rem;font-weight:700;margin-top:14px}

.spp-el-projects{background:var(--cream)}.spp-el-project-grid{display:grid!important;grid-template-columns:1.12fr .88fr;grid-template-rows:280px 280px;gap:25px}.spp-el-project{display:block!important;position:relative}.spp-el-project-1{grid-row:1/3}.spp-el-project .elementor-widget-image{height:calc(100% - 70px)}.spp-el-project .elementor-widget-image .elementor-widget-container,.spp-el-project img{width:100%;height:100%;object-fit:cover}.spp-el-project img{border-radius:4px 34px}.spp-el-project h3.elementor-heading-title{font-family:Manrope;font-size:1rem;margin:13px 8px 3px}.spp-el-project p{color:var(--muted);font-size:.72rem;margin:0 8px}.spp-el-project:hover img{transform:scale(1.02)}

.spp-el-why-grid{display:grid!important;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}.spp-el-why-copy{position:sticky;top:130px}.spp-el-why-copy .spp-el-lead{margin:30px 0}.spp-el-trust-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:15px}.spp-el-trust-card{min-height:230px;padding:32px;background:var(--cream);border-radius:4px 26px}.spp-el-check{width:52px!important;height:52px;background:#fff;border-radius:50%;display:grid;place-items:center;color:var(--maroon)}.spp-el-trust-card h3.elementor-heading-title{font-family:Manrope;font-size:1.12rem;margin-top:28px}.spp-el-trust-card p{color:var(--muted);font-size:.84rem;line-height:1.6;margin:8px 0 0}

.spp-el-areas{background:var(--maroon);color:#fff;--padding-top:120px;--padding-bottom:160px}.spp-el-areas .spp-el-eyebrow .elementor-heading-title{color:#ffffffbf}.spp-el-areas-grid{display:grid!important;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}.spp-el-areas .spp-el-lead{color:#ffffffbd;margin-top:25px}.spp-el-suburbs{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center;align-items:center!important;gap:10px}.spp-el-chip{width:auto!important;align-self:center;background:#fff;color:var(--ink);padding:11px 16px;border-radius:25px 8px;transform:rotate(-2deg)}.spp-el-chip .elementor-heading-title{font-family:DM Sans;font-size:.8rem;font-weight:700}.spp-el-chip:nth-child(4n+2){background:var(--gold);transform:rotate(2deg)}.spp-el-chip:nth-child(4n+3){background:var(--green);color:#fff}.spp-el-chip:nth-child(4n){background:#f2d9b8;transform:rotate(3deg)}

.spp-el-testimonial-grid{display:grid!important;grid-template-columns:.65fr 1.35fr;gap:100px;align-items:center}.spp-el-slider-controls{display:flex!important;flex-direction:row!important;align-items:center;gap:12px;margin-top:35px}.spp-el-slider-controls .elementor-button{width:42px;height:42px;padding:0;display:grid;place-items:center;border-radius:50%;background:#f3f1ed;color:var(--ink)}.spp-el-review-count{width:auto!important}.spp-el-review-count .elementor-heading-title{font-size:.7rem;letter-spacing:.08em}.spp-el-review-stage{min-height:390px;padding:55px;background:var(--gold);border-radius:5px 55px;box-shadow:18px 18px var(--cream)}.spp-el-review.is-hidden{display:none}.spp-el-stars .elementor-heading-title{color:var(--maroon);font-size:1rem;letter-spacing:.15em}.spp-el-review blockquote{font-family:Georgia,serif;font-size:clamp(1.5rem,2.4vw,2.25rem);line-height:1.38;margin:30px 0}.spp-el-review h3.elementor-heading-title{font-size:.9rem;font-weight:800}.spp-el-review p{font-size:.72rem;opacity:.65;margin:3px 0 0}

.spp-el-contact{background:var(--green-dark);color:#fff;--padding-top:130px;--padding-bottom:130px}.spp-el-contact .spp-el-eyebrow .elementor-heading-title{color:#ffffffbf}.spp-el-contact-grid{display:grid!important;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.spp-el-contact .spp-el-lead{color:#ffffffb3;margin:28px 0 36px}.spp-el-contact-links a{color:#fff;text-decoration:none;line-height:2}.spp-el-form .quote-form{min-height:500px}.spp-el-form .elementor-shortcode{width:100%}

@media(max-width:1100px){.spp-el-service-grid{grid-template-columns:repeat(2,1fr)}.spp-el-commercial-top{gap:50px}.spp-el-process{grid-template-columns:1fr repeat(5,1fr)}.spp-el-process-label{grid-column:1/-1}.spp-el-why-grid,.spp-el-contact-grid,.spp-el-areas-grid,.spp-el-testimonial-grid{gap:50px}}
@media(max-width:820px){.elementor-page .inner-main{padding-top:70px}.spp-el-section{--padding-top:90px;--padding-bottom:120px}.elementor-element.spp-el-shell{--width:min(680px,calc(100% - 30px))!important;width:min(680px,calc(100% - 30px))!important}.spp-el-section-heading,.spp-el-commercial-top,.spp-el-why-grid,.spp-el-areas-grid,.spp-el-testimonial-grid,.spp-el-contact-grid{grid-template-columns:1fr;gap:35px}.elementor-element.spp-el-hero{height:auto!important;min-height:830px!important;max-height:none;display:block!important}.spp-el-hero-shell{min-height:500px;padding-top:55px;justify-content:flex-start}.spp-el-hero-copy{width:100%}.spp-el-display .elementor-heading-title{font-size:clamp(3.7rem,15vw,6rem)}.spp-el-hero-image{inset:auto 0 0!important;height:350px}.spp-el-hero-image:after{background:linear-gradient(180deg,#f5f1e9,transparent 35%)}.spp-el-hero:before,.spp-el-hero:after{display:none}.elementor-element.spp-el-stamp{--width:105px!important;width:105px!important;height:105px;min-height:105px;right:8%;bottom:45px}.spp-el-process{grid-template-columns:1fr}.spp-el-process-label{grid-column:auto}.spp-el-process-step{min-height:65px;border-left:0;border-top:1px solid #e3e6e4;padding:15px 0;display:grid!important;grid-template-columns:45px 1fr;align-items:center}.spp-el-process-step h3.elementor-heading-title{margin:0}.spp-el-project-grid{grid-template-columns:1fr;grid-template-rows:440px 330px 330px}.spp-el-project-1{grid-row:auto}.spp-el-why-copy{position:static}.spp-el-review-stage{padding:36px}.spp-el-contact{--padding-top:100px;--padding-bottom:100px}}
@media(max-width:540px){.spp-el-actions{align-items:flex-start;flex-direction:column!important;gap:12px}.spp-el-trustline{line-height:2}.spp-el-service-grid,.spp-el-trust-grid{grid-template-columns:1fr}.spp-el-service-card{height:235px}.spp-el-project-grid{grid-template-rows:390px 290px 290px}.spp-el-suburbs{justify-content:flex-start}.spp-el-review-stage{min-height:370px;padding:30px;box-shadow:10px 10px var(--cream)}.spp-el-review blockquote{font-size:1.45rem}.spp-el-section h2.elementor-heading-title{font-size:2.75rem}}

.spp-el-form .quote-form .btn svg,.spp-el-form .spp-contact-form .btn svg{width:18px!important;height:18px!important;flex:0 0 18px}
/* Elementor frontend.css loads after the theme; keep brand-critical values authoritative. */
.spp-el-section .elementor-widget-heading,.spp-el-section .elementor-heading-title{color:inherit!important}
.spp-el-section .spp-el-eyebrow .elementor-heading-title{color:var(--maroon)!important}
.spp-el-commercial .spp-el-eyebrow .elementor-heading-title,.spp-el-areas .spp-el-eyebrow .elementor-heading-title,.spp-el-contact .spp-el-eyebrow .elementor-heading-title{color:rgba(255,255,255,.75)!important}
.spp-el-primary .elementor-button{background:var(--maroon)!important;color:#fff!important}
.spp-el-secondary .elementor-button{background:transparent!important;color:inherit!important}
.spp-el-chip{flex:0 0 auto!important;height:auto!important;min-height:0!important}
.spp-el-chip .elementor-widget-container,.spp-el-chip .elementor-heading-title{white-space:nowrap!important}
