:root{--navy:#0e1130;--navy-rgb:14,17,48;--green:#14a768;--white:#fff;--offwhite:#f7f8f6;--grey:#667085;--dark:#151824;--shadow:0 24px 80px rgba(14,17,48,.14);--heading:"Bebas Neue",Impact,sans-serif;--body:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:var(--body);color:var(--dark);background:var(--white);overflow-x:hidden}img{max-width:100%;display:block}a{text-decoration:none}.skip-link{position:absolute;left:-999px;top:10px;background:var(--green);color:#fff;padding:10px 14px;border-radius:6px;z-index:9999}.skip-link:focus{left:10px}.site-nav{padding:16px 0;transition:all .25s ease;background:transparent}.site-nav.scrolled,.site-nav.menu-open{background:rgba(255,255,255,.96);backdrop-filter:blur(12px);box-shadow:0 8px 30px rgba(14,17,48,.08);padding:8px 0}.navbar-brand{display:flex;align-items:center}.nav-logo{height:82px;width:auto}.nav-logo-navy{display:none}.site-nav.scrolled .nav-logo-white,.site-nav.menu-open .nav-logo-white{display:none}.site-nav.scrolled .nav-logo-navy,.site-nav.menu-open .nav-logo-navy{display:block}.nav-link{color:rgba(255,255,255,.9);font-weight:700;font-size:.95rem;margin:0 6px;letter-spacing:.02em}.site-nav.scrolled .nav-link,.site-nav.menu-open .nav-link{color:var(--navy)}.nav-link:hover,.nav-link:focus{color:var(--green)}.btn-nav-call{background:var(--green);border:2px solid var(--green);color:#fff;font-weight:900;border-radius:999px;padding:10px 18px}.btn-nav-call:hover{background:#fff;color:var(--green);border-color:var(--green)}.mobile-call{color:#fff;font-weight:900;font-size:.92rem;margin-left:auto;margin-right:12px}.site-nav.scrolled .mobile-call,.site-nav.menu-open .mobile-call{color:var(--green)}.navbar-toggler{border:0;padding:0}.navbar-toggler:focus{box-shadow:none}.navbar-toggler-icon-custom{display:block;width:32px;height:22px;position:relative;border-top:3px solid #fff;border-bottom:3px solid #fff}.navbar-toggler-icon-custom::after{content:"";position:absolute;left:0;top:7px;width:32px;height:3px;background:#fff}.site-nav.scrolled .navbar-toggler-icon-custom,.site-nav.menu-open .navbar-toggler-icon-custom{border-color:var(--navy)}.site-nav.scrolled .navbar-toggler-icon-custom::after,.site-nav.menu-open .navbar-toggler-icon-custom::after{background:var(--navy)}
.hero-section{position:relative;min-height:100vh;color:#fff;overflow:hidden;background:var(--navy)}.hero-bg,.hero-shade{position:absolute;inset:0}.hero-bg{background-image:url("../images/hero-shed.jpg");background-size:cover;background-position:center right;transform:scale(1.02)}.hero-shade{background:linear-gradient(90deg,rgba(var(--navy-rgb),.97) 0%,rgba(var(--navy-rgb),.82) 42%,rgba(var(--navy-rgb),.12) 76%),radial-gradient(circle at 85% 24%,rgba(20,167,104,.15),transparent 30%)}.hero-content{position:relative;z-index:2}.hero-title{font-family:var(--heading);font-size:clamp(4.2rem,8vw,7.8rem);line-height:.92;letter-spacing:.035em;text-transform:uppercase;margin:0;text-shadow:0 14px 35px rgba(0,0,0,.34);max-width:900px}.hero-title span{color:var(--green)}.hero-green-line{margin:22px 0 0;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(.98rem,1.4vw,1.18rem)}.hero-green-line span{padding:0 12px;color:#fff;opacity:.55}.hero-copy{max-width:650px;font-size:clamp(1.05rem,1.45vw,1.28rem);line-height:1.55;color:rgba(255,255,255,.9);margin:20px 0 0}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.btn{border-radius:999px;font-weight:900;letter-spacing:.02em;transition:all .22s ease,transform .22s ease}.btn:hover{transform:translateY(-2px)}.btn-lg{padding:14px 28px;font-size:1rem}.btn-sm-fnq{padding:11px 20px;font-size:.9rem}.btn-primary-fnq{background:var(--green);border:2px solid var(--green);color:#fff}.btn-primary-fnq:hover{background:#fff;border-color:#fff;color:var(--green)}.btn-outline-dark-fnq{border:2px solid var(--navy);color:var(--navy);background:transparent}.btn-outline-dark-fnq:hover{background:var(--navy);color:#fff}
.design-hero{background:#fff;margin-top:-72px;position:relative;z-index:5;padding:0 0 58px}.design-hero-card{background:var(--green);border-radius:30px;padding:42px;color:#fff;display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;box-shadow:0 24px 70px rgba(14,17,48,.18)}.design-kicker{color:#fff;opacity:.92}.design-hero-card h2{font-family:var(--heading);text-transform:uppercase;font-size:clamp(3.6rem,6vw,6.2rem);line-height:.9;letter-spacing:.03em;margin-bottom:15px}.design-hero-card p{font-size:1.08rem;line-height:1.65;margin:0;color:rgba(255,255,255,.92)}.design-button-wrap{display:flex;justify-content:flex-end}.design-tile-button{width:min(100%,380px);background:#fff;color:var(--navy);border-radius:22px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.18);display:block;transition:transform .22s ease,box-shadow .22s ease}.design-tile-button:hover{transform:translateY(-4px);box-shadow:0 24px 55px rgba(0,0,0,.24);color:var(--green)}.design-tile-button img{height:160px;width:100%;object-fit:cover}.design-tile-button span{display:block;padding:18px 20px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;text-align:center}
.section{padding:86px 0}.section-kicker{color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px;font-size:1.05rem}.section-title{font-family:var(--heading);font-size:clamp(3.2rem,5.8vw,5.5rem);line-height:.92;letter-spacing:.025em;text-transform:uppercase;color:var(--navy);margin-bottom:0}.section-title-sm{font-size:clamp(2.8rem,4.7vw,4.4rem)}.section-title-md{font-size:clamp(3rem,5vw,4.8rem)}.section-subtitle{max-width:720px;margin:20px auto 0;color:var(--grey);line-height:1.7;font-size:1.1rem}.lead-copy{color:var(--grey);line-height:1.75;font-size:1.08rem}.section-heading{margin-bottom:54px}.trust-bar{background:var(--navy);color:#fff;padding:30px 0}.trust-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0}.trust-item{padding:8px 18px;text-align:center;border-right:1px solid rgba(255,255,255,.14)}.trust-item:last-child{border-right:0}.trust-item strong{display:block;color:var(--green);font-family:var(--heading);font-size:2.2rem;line-height:.9;letter-spacing:.03em}.trust-item span{display:block;color:rgba(255,255,255,.86);font-size:.86rem;font-weight:800;line-height:1.3;margin-top:6px}.intro-section,.projects-preview{background:var(--offwhite)}.buildings-section{background:#fff}.building-card{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;margin-bottom:76px}.building-card:last-child{margin-bottom:0}.building-card-reverse .building-image{order:2}.building-card-reverse .building-content{order:1}.building-image{border-radius:26px;overflow:hidden;box-shadow:var(--shadow);min-height:420px}.building-image img{width:100%;height:100%;min-height:420px;object-fit:cover;transition:transform .45s ease}.building-card:hover .building-image img{transform:scale(1.045)}.building-content{padding:20px 0}.building-icon{color:var(--green);font-size:2.6rem;margin-bottom:18px;display:inline-block}.building-content h3{font-family:var(--heading);color:var(--navy);font-size:clamp(3rem,5vw,4.9rem);line-height:.9;letter-spacing:.025em;text-transform:uppercase;margin-bottom:20px}.building-content p{color:var(--grey);line-height:1.75;font-size:1.08rem}.building-content ul{list-style:none;padding:0;margin:22px 0}.building-content li{position:relative;padding-left:30px;margin:11px 0;font-weight:800;color:var(--navy)}.building-content li::before{content:"✓";position:absolute;left:0;top:0;color:var(--green);font-weight:900}.card-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.why-section{background:var(--navy);color:#fff;position:relative;overflow:hidden}.why-section::before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;background:rgba(20,167,104,.16);right:-160px;top:-160px;filter:blur(6px)}.why-section .container{position:relative;z-index:1}.why-card{height:100%;padding:34px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);border-radius:24px;transition:transform .24s ease,background .24s ease}.why-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.075)}.why-icon-img{height:72px;width:72px;object-fit:contain;margin-bottom:24px}.why-bootstrap-icon{color:var(--green);font-size:3.8rem;margin-bottom:24px;display:inline-block;line-height:1}.why-card h3{color:#fff;font-weight:900;font-size:1.18rem;margin-bottom:12px}.why-card p{color:rgba(255,255,255,.75);line-height:1.7;margin:0}.product-strip{background:#fff}.product-strip-inner{background:var(--navy);color:#fff;border-radius:28px;padding:44px;text-align:center}.product-strip-inner h2{font-family:var(--heading);font-size:clamp(3rem,5vw,5rem);line-height:.9;text-transform:uppercase;letter-spacing:.03em}.product-strip-inner p{color:rgba(255,255,255,.78);max-width:720px;margin:12px auto 0}.brand-placeholder-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:28px}.brand-placeholder-row span{border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:10px 18px;font-weight:900;color:rgba(255,255,255,.9)}.project-grid{display:grid;grid-template-columns:1.25fr .85fr;grid-template-rows:300px 300px;gap:24px}.project-tile{border-radius:24px;overflow:hidden;position:relative;box-shadow:var(--shadow)}.project-tile-large{grid-row:span 2}.project-tile img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.project-tile:hover img{transform:scale(1.06)}.project-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(14,17,48,.84) 100%)}.project-caption{position:absolute;left:24px;bottom:22px;z-index:2;color:#fff;font-family:var(--heading);font-size:2.2rem;letter-spacing:.03em;text-transform:uppercase}.contact-section{background:#fff}.contact-card{background:var(--navy);color:#fff;border-radius:30px;padding:32px;box-shadow:var(--shadow)}.contact-row{display:flex;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12);color:#fff}.contact-row:first-child{padding-top:0}.contact-row i{width:54px;height:54px;border-radius:50%;background:var(--green);display:grid;place-items:center;font-size:1.35rem;flex-shrink:0}.contact-row span{display:block;color:rgba(255,255,255,.65);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;margin-bottom:4px}.contact-row strong{display:block;font-size:clamp(1.18rem,2vw,1.55rem);line-height:1.2}.contact-link:hover strong{color:var(--green)}.licence-box{background:#fff;color:var(--navy);padding:20px;border-radius:18px;margin-top:24px}.licence-box strong{display:block;font-size:1.35rem;font-weight:900}.licence-box span{display:block;color:var(--grey);margin-top:6px;line-height:1.5}.service-areas{margin-top:60px;border-top:1px solid rgba(14,17,48,.12);padding-top:26px;color:var(--grey)}.service-areas h3{color:var(--navy);font-weight:900;text-transform:uppercase;font-size:1rem;letter-spacing:.08em}.service-areas p{font-size:.88rem;line-height:1.75;margin:0}.site-footer{background:var(--navy);color:rgba(255,255,255,.78);padding:48px 0 90px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-top{padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:24px}.footer-logo{width:230px;height:auto}.footer-links{display:flex;gap:22px;flex-wrap:wrap}.footer-links a,.footer-bottom a{color:rgba(255,255,255,.8);font-weight:800}.footer-links a:hover,.footer-bottom a:hover{color:var(--green)}.footer-bottom p{margin:0;font-size:.95rem}.mobile-sticky-cta{display:none}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1199px){.trust-grid{grid-template-columns:repeat(3,1fr);row-gap:22px}.trust-item:nth-child(3){border-right:0}}@media(max-width:991px){.site-nav{background:rgba(14,17,48,.72);backdrop-filter:blur(10px)}.site-nav.menu-open{background:rgba(255,255,255,.98)}.site-nav .navbar-collapse{border-top:1px solid rgba(255,255,255,.16);margin-top:12px;padding:20px 0 10px}.site-nav.menu-open .navbar-collapse{border-top-color:rgba(14,17,48,.10)}.nav-link{margin:4px 0;font-size:1.05rem}.site-nav.menu-open .nav-link{color:var(--navy)}.hero-bg{background-position:64% center}.hero-shade{background:linear-gradient(180deg,rgba(var(--navy-rgb),.92) 0%,rgba(var(--navy-rgb),.72) 56%,rgba(var(--navy-rgb),.9) 100%)}.design-hero{margin-top:0;padding:50px 0}.design-hero-card{grid-template-columns:1fr}.design-button-wrap{justify-content:flex-start}.section{padding:72px 0}.building-card,.building-card-reverse{grid-template-columns:1fr;gap:28px;margin-bottom:58px}.building-card-reverse .building-image,.building-card-reverse .building-content{order:initial}.building-image,.building-image img{min-height:340px}.project-grid{grid-template-columns:1fr;grid-template-rows:auto}.project-tile,.project-tile-large{height:340px;grid-row:auto}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}}@media(max-width:767px){.nav-logo{height:58px}.hero-section{min-height:88vh}.hero-title{font-size:clamp(3.4rem,16vw,5.3rem)}.hero-green-line{font-size:.9rem;line-height:1.6}.hero-green-line span{display:none}.hero-copy{font-size:1.03rem}.hero-actions .btn,.card-actions .btn{width:100%}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item,.trust-item:nth-child(3){border-right:0}.trust-item:nth-child(odd){border-right:1px solid rgba(255,255,255,.14)}.section-title,.section-title-sm,.section-title-md{font-size:clamp(2.8rem,13vw,4.2rem)}.building-content h3{font-size:clamp(3rem,16vw,4.4rem)}.contact-card{padding:24px}.contact-row{gap:14px}.contact-row i{width:48px;height:48px}.site-footer{padding-bottom:110px}.mobile-sticky-cta{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:12px;right:12px;bottom:12px;z-index:999;border-radius:999px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.24)}.mobile-sticky-cta a{background:var(--green);color:#fff;font-weight:900;text-align:center;padding:14px 8px;font-size:.92rem}.mobile-sticky-cta a:first-child{background:var(--navy)}}@media(max-width:480px){.design-hero-card{padding:30px 22px;border-radius:22px}.trust-grid{grid-template-columns:1fr}.trust-item,.trust-item:nth-child(odd){border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.trust-item:last-child{border-bottom:0}.building-image,.building-image img,.project-tile,.project-tile-large{min-height:270px;height:270px}.footer-links{flex-direction:column;gap:10px}}


/* =========================================================
   FNQ Sheds polish update
   ========================================================= */

.nav-logo {
  height: 92px;
}

.site-nav.scrolled .nav-logo,
.site-nav.menu-open .nav-logo {
  height: 76px;
}

.hero-content .row {
  padding-top: 90px;
}

.hero-title {
  font-size: clamp(3.8rem, 7.2vw, 7rem);
  line-height: 0.95;
  letter-spacing: 0.035em;
  max-width: 980px;
  margin-top: 42px;
}

.hero-line-white {
  color: #ffffff;
}

.hero-line-green {
  color: var(--green);
}

.hero-title span {
  color: inherit;
}

.hero-title .hero-line-green {
  color: var(--green);
}

.hero-local-line {
  margin: 22px 0 0;
  color: #ffffff;
  font-weight: 900;
  letter-spacing: 0.035em;
  font-size: clamp(1rem, 1.35vw, 1.18rem);
}

.hero-local-line span {
  color: var(--green);
  padding: 0 12px;
}

.hero-copy {
  margin-top: 22px;
}

.design-hero {
  background: var(--green);
  margin-top: 0;
  padding: 86px 0;
}

.design-hero-card {
  background: transparent;
  border-radius: 0;
  padding: 0;
  color: white;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 46px;
  align-items: center;
  box-shadow: none;
}

.design-hero-card h2 {
  font-family: var(--heading);
  text-transform: uppercase;
  font-size: clamp(4rem, 7vw, 7rem);
  line-height: 0.9;
  letter-spacing: 0.03em;
  margin-bottom: 18px;
}

.design-hero-card p {
  font-size: 1.14rem;
  line-height: 1.7;
  margin: 0;
  color: rgba(255,255,255,0.95);
}

.design-simple-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 460px;
  min-height: 96px;
  background: #ffffff;
  color: var(--green);
  border-radius: 999px;
  padding: 22px 34px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  text-align: center;
  font-size: 1.05rem;
  box-shadow: 0 20px 50px rgba(14,17,48,0.18);
  transition: all 0.22s ease;
}

.design-simple-button:hover {
  transform: translateY(-4px);
  color: var(--navy);
  box-shadow: 0 28px 60px rgba(14,17,48,0.24);
}

.why-card {
  text-align: center;
}

.why-icon-img {
  height: 82px;
  width: 82px;
  object-fit: contain;
  margin: 0 auto 24px;
  display: block;
  filter: none;
}

.why-bootstrap-icon {
  color: var(--green);
  font-size: 4rem;
  margin: 0 auto 24px;
  display: block;
  text-align: center;
  line-height: 1;
}

.product-strip {
  background: #ffffff;
  padding: 84px 0;
}

.premium-brands .section-kicker {
  color: var(--green);
  margin-bottom: 36px;
}

.brand-logo-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 32px 36px;
  align-items: center;
}

.brand-logo {
  min-height: 98px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}

.brand-logo img {
  max-width: 170px;
  max-height: 72px;
  width: auto;
  height: auto;
  object-fit: contain;
}

@media (max-width: 991px) {
  .nav-logo {
    height: 72px;
  }

  .site-nav.scrolled .nav-logo,
  .site-nav.menu-open .nav-logo {
    height: 62px;
  }

  .hero-content .row {
    padding-top: 70px;
  }

  .design-hero-card {
    grid-template-columns: 1fr;
  }

  .design-button-wrap {
    justify-content: flex-start;
  }

  .brand-logo-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 767px) {
  .hero-title {
    font-size: clamp(3.3rem, 15vw, 5.1rem);
    margin-top: 28px;
  }

  .hero-local-line {
    line-height: 1.6;
  }

  .hero-local-line span {
    display: inline;
    padding: 0 8px;
  }

  .design-simple-button {
    min-height: 80px;
  }

  .brand-logo-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

@media (max-width: 480px) {
  .brand-logo {
    min-height: 84px;
    padding: 12px;
  }

  .brand-logo img {
    max-width: 135px;
    max-height: 58px;
  }
}


/* =========================================================
   FINAL FIXES - FNQ Sheds
   ========================================================= */

.nav-logo {
  height: 92px !important;
}

.site-nav.scrolled .nav-logo,
.site-nav.menu-open .nav-logo {
  height: 74px !important;
}

.hero-content .row {
  padding-top: 120px !important;
}

.hero-title {
  font-size: clamp(3.9rem, 7.4vw, 7.4rem) !important;
  line-height: 0.92 !important;
  letter-spacing: 0.035em !important;
  margin-top: 62px !important;
  max-width: 980px !important;
}

.hero-line-white {
  color: #ffffff !important;
}

.hero-line-green {
  color: var(--green) !important;
}

.hero-title span {
  color: inherit;
}

.hero-local-line {
  color: #ffffff !important;
  margin: 24px 0 0 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  font-size: clamp(1.12rem, 1.55vw, 1.35rem) !important;
  line-height: 1.45 !important;
}

.hero-local-line span {
  color: var(--green) !important;
  padding: 0 14px !important;
}

.hero-copy {
  margin-top: 22px !important;
  font-size: clamp(1.05rem, 1.35vw, 1.22rem) !important;
}

.design-hero {
  background: var(--green) !important;
  margin-top: 0 !important;
  padding: 92px 0 !important;
}

.design-hero .container {
  max-width: 1180px;
}

.design-hero-card {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 48px !important;
  align-items: center !important;
  color: #ffffff !important;
}

.design-hero-card h2 {
  font-family: var(--heading) !important;
  text-transform: uppercase !important;
  font-size: clamp(4rem, 7.4vw, 7.2rem) !important;
  line-height: 0.9 !important;
  letter-spacing: 0.03em !important;
  margin-bottom: 18px !important;
  color: #ffffff !important;
}

.design-hero-card p {
  color: rgba(255,255,255,0.96) !important;
  font-size: 1.14rem !important;
  line-height: 1.72 !important;
  margin: 0 !important;
}

.design-kicker {
  color: #ffffff !important;
}

.design-button-wrap {
  display: flex !important;
  justify-content: flex-end !important;
}

.design-simple-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 92px !important;
  width: min(100%, 500px) !important;
  padding: 22px 36px !important;
  background: #ffffff !important;
  color: var(--green) !important;
  border: 3px solid #ffffff !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  font-size: 1.06rem !important;
  box-shadow: 0 22px 55px rgba(14,17,48,0.20) !important;
  transition: all 0.22s ease !important;
}

.design-simple-button:hover {
  color: var(--navy) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 30px 70px rgba(14,17,48,0.25) !important;
}

.why-card {
  text-align: center !important;
}

.why-icon-img {
  width: 86px !important;
  height: 86px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto 24px !important;
  filter: none !important;
}

.why-bootstrap-icon {
  color: var(--green) !important;
  display: block !important;
  text-align: center !important;
  margin: 0 auto 24px !important;
  font-size: 4rem !important;
  line-height: 1 !important;
}

.product-strip {
  background: #ffffff !important;
  padding: 82px 0 !important;
}

.product-strip-inner {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.premium-brands .section-kicker,
.product-strip .section-kicker {
  color: var(--green) !important;
  margin-bottom: 34px !important;
}

.brand-logo-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 24px 32px !important;
  align-items: center !important;
  justify-items: center !important;
}

.brand-logo {
  width: 100% !important;
  height: 72px !important;
  min-height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px !important;
}

.brand-logo img {
  max-width: 135px !important;
  max-height: 46px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 991px) {
  .hero-title {
    margin-top: 42px !important;
  }

  .design-hero-card {
    grid-template-columns: 1fr !important;
  }

  .design-button-wrap {
    justify-content: flex-start !important;
  }

  .brand-logo-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .nav-logo {
    height: 62px !important;
  }

  .site-nav.scrolled .nav-logo,
  .site-nav.menu-open .nav-logo {
    height: 56px !important;
  }

  .hero-content .row {
    padding-top: 84px !important;
  }

  .hero-title {
    font-size: clamp(3.25rem, 15vw, 5.1rem) !important;
    margin-top: 26px !important;
  }

  .hero-local-line {
    font-size: 0.95rem !important;
  }

  .hero-local-line span {
    padding: 0 7px !important;
  }

  .brand-logo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  .brand-logo {
    height: 64px !important;
    min-height: 64px !important;
  }

  .brand-logo img {
    max-width: 115px !important;
    max-height: 38px !important;
  }
}


/* =========================================================
   FINAL OVERRIDES - DO NOT REMOVE
   ========================================================= */

/* HERO */
.hero-title,
header .hero-title {
  font-size: clamp(3.9rem, 7.4vw, 7.4rem) !important;
  line-height: 0.92 !important;
  letter-spacing: 0.035em !important;
  margin-top: 58px !important;
}

.hero-title .hero-line-white,
header .hero-title .hero-line-white {
  color: #ffffff !important;
}

.hero-title .hero-line-green,
header .hero-title .hero-line-green {
  color: #14a768 !important;
}

.hero-local-line,
.hero-green-line,
header .hero-local-line {
  color: #ffffff !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  font-size: clamp(1.16rem, 1.7vw, 1.42rem) !important;
  line-height: 1.45 !important;
  margin: 24px 0 0 !important;
}

.hero-local-line span,
.hero-green-line span,
header .hero-local-line span {
  color: #14a768 !important;
  opacity: 1 !important;
  padding: 0 15px !important;
}

/* FULL GREEN DESIGN SECTION */
section.design-hero,
section.design-green-band,
#design.design-hero,
#design.design-green-band {
  background: #14a768 !important;
  margin: 0 !important;
  padding: 96px 0 !important;
  border-radius: 0 !important;
}

section.design-hero .container,
section.design-green-band .container {
  max-width: 1180px !important;
}

.design-hero-card,
section.design-hero .design-hero-card,
section.design-green-band .design-hero-card {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 48px !important;
  align-items: center !important;
}

.design-hero-card h2,
section.design-hero h2,
section.design-green-band h2 {
  color: #ffffff !important;
  font-family: var(--heading) !important;
  font-size: clamp(4rem, 7.4vw, 7.2rem) !important;
  line-height: 0.9 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  margin-bottom: 20px !important;
}

.design-hero-card p,
section.design-hero .design-hero-card p,
section.design-green-band .design-hero-card p {
  color: rgba(255,255,255,0.96) !important;
  font-size: 1.16rem !important;
  line-height: 1.72 !important;
}

.design-kicker,
section.design-hero .design-kicker {
  color: #ffffff !important;
}

.design-button-wrap,
section.design-hero .design-button-wrap {
  display: flex !important;
  justify-content: flex-end !important;
}

.design-simple-button,
a.design-simple-button,
section.design-hero a.design-simple-button,
section.design-green-band a.design-simple-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: min(100%, 500px) !important;
  min-height: 96px !important;
  background: #ffffff !important;
  color: #14a768 !important;
  border: 3px solid #ffffff !important;
  border-radius: 999px !important;
  padding: 24px 38px !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  text-align: center !important;
  font-size: 1.06rem !important;
  box-shadow: 0 22px 55px rgba(14,17,48,0.20) !important;
}

.design-simple-button:hover,
a.design-simple-button:hover {
  color: #0e1130 !important;
  transform: translateY(-4px) !important;
}

/* WHY ICONS */
.why-card,
section.why-section .why-card {
  text-align: center !important;
}

.why-icon-img,
section.why-section .why-icon-img {
  width: 86px !important;
  height: 86px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto 24px auto !important;
  filter: none !important;
}

.why-bootstrap-icon,
section.why-section .why-bootstrap-icon {
  color: #14a768 !important;
  font-size: 4rem !important;
  display: block !important;
  text-align: center !important;
  margin: 0 auto 24px auto !important;
}

/* PREMIUM BRAND LOGOS */
section.product-strip {
  background: #ffffff !important;
  padding: 82px 0 !important;
}

.product-strip-inner {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

.premium-brands .section-kicker,
section.product-strip .section-kicker {
  color: #14a768 !important;
  margin-bottom: 34px !important;
}

.brand-logo-grid {
  display: grid !important;
  grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
  gap: 14px 18px !important;
  align-items: center !important;
  justify-items: center !important;
}

.brand-logo {
  width: 100% !important;
  height: 58px !important;
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 4px !important;
}

.brand-logo img {
  max-width: 92px !important;
  max-height: 34px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 1199px) {
  .brand-logo-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
  .brand-logo img {
    max-width: 100px !important;
    max-height: 36px !important;
  }
}

@media (max-width: 991px) {
  .design-hero-card,
  section.design-hero .design-hero-card {
    grid-template-columns: 1fr !important;
  }
  .design-button-wrap,
  section.design-hero .design-button-wrap {
    justify-content: flex-start !important;
  }
}

@media (max-width: 767px) {
  .hero-title,
  header .hero-title {
    font-size: clamp(3.25rem, 15vw, 5.1rem) !important;
    margin-top: 28px !important;
  }

  .hero-local-line,
  .hero-green-line,
  header .hero-local-line {
    font-size: 1rem !important;
  }

  .brand-logo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  .brand-logo {
    height: 60px !important;
    min-height: 60px !important;
  }

  .brand-logo img {
    max-width: 110px !important;
    max-height: 38px !important;
  }
}


/* =========================================================
   PERFECT FINAL TWEAKS
   ========================================================= */

/* Keep local line on one line on desktop and reduce slightly */
.hero-local-line,
.hero-green-line,
header .hero-local-line {
  white-space: nowrap !important;
  font-size: clamp(0.98rem, 1.28vw, 1.16rem) !important;
  letter-spacing: 0.045em !important;
}

/* More space below hero quote button on desktop before green design section */
.hero-section {
  padding-bottom: 72px !important;
}

/* Pull design section down naturally and stop overlap */
section.design-hero,
section.design-green-band,
#design.design-hero,
#design.design-green-band {
  padding: 78px 0 !important;
}

/* Make design heading less huge now ONLINE is removed */
.design-hero-card h2,
section.design-hero h2,
section.design-green-band h2 {
  font-size: clamp(3.7rem, 6.4vw, 6.2rem) !important;
}

/* QBCC / phone-like numbers should not turn blue on iOS/Chrome mobile */
a[href^="tel"],
.contact-row,
.contact-row strong,
.contact-row span,
.licence-box,
.licence-box strong,
.licence-box span,
.trust-item strong,
.trust-item span,
.footer-bottom,
.footer-bottom p {
  -webkit-text-fill-color: currentColor;
}

.trust-item strong,
.trust-item span {
  color: inherit;
}

.trust-item strong {
  color: #14a768 !important;
}

.trust-item span {
  color: rgba(255,255,255,0.86) !important;
}

/* Licence box no longer needs big QBCC styling */
.licence-box span {
  color: #667085 !important;
  font-weight: 700 !important;
}

/* Mobile hero spacing: reduce huge space under quote button */
@media (max-width: 767px) {
  .hero-section {
    min-height: auto !important;
    padding-bottom: 34px !important;
  }

  .hero-content .row {
    min-height: auto !important;
    padding-top: 120px !important;
    padding-bottom: 34px !important;
  }

  .hero-actions {
    margin-bottom: 0 !important;
  }

  section.design-hero,
  section.design-green-band,
  #design.design-hero,
  #design.design-green-band {
    padding: 58px 0 !important;
  }

  .hero-local-line,
  .hero-green-line,
  header .hero-local-line {
    white-space: normal !important;
    font-size: 0.92rem !important;
    letter-spacing: 0.035em !important;
  }
}

.service-suburbs{
margin-top:14px;
font-size:.92rem;
line-height:1.8;
color:#667085;
}
