.fast-track-page{--ft-green:#2f7653;--ft-green-dark:#255f43;--ft-navy:#071f2f;--ft-gold:#c4933f;--ft-warm:#fbfaf7}
.fast-track-page .od-eyebrow{font-size:12px}
.fast-track-page .od-hero__copy:after{content:none;background:none;display:none}.fast-track-page #fast-track-hero .od-eyebrow{font-family:"Cinzel",Georgia,serif;font-size:20px!important;font-weight:600;line-height:1.2}.fast-track-page #fast-track-hero h1{max-width:none;font-size:clamp(68px,5.2vw,74px)!important;font-weight:500;line-height:.92;letter-spacing:-.025em}.fast-track-page #fast-track-hero h1 .ft-hero-title-line{display:block;color:#fff}.fast-track-page #fast-track-hero h1 .ft-hero-title-line--accent{color:#7fbd78}.fast-track-page .od-section-heading h2 span{color:#7fbd78}.fast-track-page .od-hero__copy>p:not(.od-eyebrow){font-size:18px;line-height:1.72;color:rgba(255,255,255,.90)}html:root:root:root:root:root:root body.fast-track-page main #fast-track-hero .od-hero__copy>p:not(.od-eyebrow){font-size:18px!important;line-height:1.72!important;color:rgba(255,255,255,.90)!important}.fast-track-page #fast-track-hero .od-hero__actions .od-btn{min-height:52px;border-radius:5px;font-family:Manrope,Arial,sans-serif;font-size:16px;font-weight:800;white-space:nowrap}.fast-track-page #fast-track-hero .od-hero__actions .od-btn--primary{min-width:220px}.fast-track-page #fast-track-hero .od-hero__actions .od-btn--ghost{min-width:180px}
.fast-track-page .od-btn{border-radius:5px}.ft-trust{margin-top:-54px}.ft-trust .od-trust__grid{min-height:118px}.ft-trust .od-trust-item>svg{width:46px;height:46px}.ft-trust .od-trust-item strong{font-size:15px}.ft-trust .od-trust-item span{font-size:11px}.ft-trust .od-trust-item{border-color:rgba(7,31,47,.09)}
html:root:root:root:root:root:root body.fast-track-page main>#fast-track-hero#fast-track-hero h1{font-size:clamp(68px,5.2vw,74px)!important;letter-spacing:-.035em!important}
@media(min-width:961px){
  body.fast-track-page main>#fast-track-hero{
    height:763px!important;
    min-height:763px!important;
    max-height:763px!important;
    isolation:isolate;
    background:var(--ft-navy)!important;
  }
  body.fast-track-page main>#fast-track-hero>.od-hero__grid{
    position:static;
    height:763px!important;
    min-height:763px!important;
    max-height:763px!important;
    display:flex!important;
    align-items:center!important;
  }
  body.fast-track-page main>#fast-track-hero .od-hero__media{
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
  }
  body.fast-track-page main>#fast-track-hero#fast-track-hero .od-hero__media img{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
    object-position:58% 50%!important;
    filter:none!important;
    opacity:1!important;
  }
  body.fast-track-page main>#fast-track-hero .od-hero__copy{
    position:relative!important;
    z-index:2!important;
    width:min(650px,calc(100% - 48px))!important;
    margin:0!important;
    padding:40px 32px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    background:rgba(7,31,47,.91)!important;
    border-radius:4px;
    box-shadow:0 18px 46px rgba(7,31,47,.18);
    backdrop-filter:none!important;
  }
}
.ft-catalog{padding-top:108px;padding-bottom:0;background:var(--ft-warm)}.fast-track-page .od-section-heading h2,.fast-track-page .od-faq h2{font-size:clamp(52px,4vw,58px)}.fast-track-page .od-section-heading>p:last-child{font-size:17px;line-height:1.7}.fast-track-page .od-catalog__layout{grid-template-columns:248px minmax(0,1fr)}
.fast-track-page .od-results__bar p{color:var(--ft-navy);font-size:14px;font-weight:700}.fast-track-page .od-design-card{border-radius:4px}.fast-track-page .od-design-card h3{font-size:22px}.fast-track-page .od-design-card__body>p{min-height:76px;font-size:15px;line-height:1.65}.fast-track-page .od-design-card__specs{font-size:12px}.fast-track-page .od-price{font-size:19px}.fast-track-page .od-tag{height:25px;padding:0 10px;display:flex;align-items:center;background:var(--ft-green);font-size:10px}.fast-track-page .od-popular{background:var(--ft-gold)}
.fast-track-page .od-design-card a[data-design-detail]{justify-content:flex-end;gap:8px;color:#123047;font-size:12px;font-weight:800;letter-spacing:.045em}.fast-track-page .od-design-card:hover a[data-design-detail],.fast-track-page .od-design-card a[data-design-detail]:hover,.fast-track-page .od-design-card a[data-design-detail]:focus-visible{color:var(--ft-green-dark)}
.fast-track-page .od-design-card button{min-height:46px;margin:0 0 18px;padding:0 14px;border:1px solid var(--ft-navy);border-radius:4px;justify-content:center;gap:12px;color:var(--ft-navy);transition:background .2s,color .2s}.fast-track-page .od-design-card button svg{transition:transform .2s}.fast-track-page .od-design-card:hover button,.fast-track-page .od-design-card button:hover,.fast-track-page .od-design-card button:focus-visible{background:var(--ft-navy);color:#fff}.fast-track-page .od-design-card:hover button svg,.fast-track-page .od-design-card button:hover svg,.fast-track-page .od-design-card button:focus-visible svg{transform:translateX(4px)}
.ft-designer-link{display:flex;align-items:center;justify-content:center;margin:30px 0 0;text-align:center}.ft-designer-link__cta{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:0 20px;border:1px solid var(--ft-green-dark);border-radius:5px;background:var(--ft-green-dark);color:#fff;font-family:Manrope,Arial,sans-serif;font-size:14px;font-weight:800;letter-spacing:.02em;line-height:1.2;text-decoration:none;transition:background .2s,color .2s,border-color .2s}.ft-designer-link__cta span{display:inline-block;transition:transform .2s}.ft-designer-link__cta:hover,.ft-designer-link__cta:focus-visible{border-color:var(--ft-green-dark);background:transparent;color:var(--ft-green-dark)}.ft-designer-link__cta:hover span,.ft-designer-link__cta:focus-visible span{transform:translateX(4px)}.ft-designer-link__cta:focus-visible{outline:3px solid rgba(47,118,88,.24);outline-offset:3px}
.fast-track-page main>section:not(#fast-track-hero) .od-eyebrow{color:var(--ft-green-dark)!important;font-family:Manrope,Arial,sans-serif!important;font-size:12px!important;font-weight:700!important;line-height:1.4!important;letter-spacing:.12em!important}
.fast-track-page main :is(.od-section-heading h2,.od-guides__header h2,.od-faq h2,.od-design-card h3,.od-guide-card h3){color:#123047!important}.fast-track-page main :is(.od-section-heading>p:last-child,.od-guides__header>div>p:last-child,.od-faq header>p:not(.od-eyebrow),.od-design-card__body>p,.od-guide-card__body>p:not(.od-guide-card__label)){color:#354e5e!important}
.ft-guides{padding:82px 0 86px;background:#f0f7f1!important}.ft-guides .od-guides__header{margin-bottom:38px!important;display:block!important;text-align:center!important}.ft-guides .od-guides__header>div{max-width:920px;margin-inline:auto;text-align:center}.ft-guides .od-guides__header h2{font-family:Manrope,Arial,sans-serif!important;font-size:42.24px!important;font-weight:700!important;line-height:1.14!important;letter-spacing:-.025em!important}.ft-guides .od-guides__header>div>p:last-child{max-width:780px;margin:16px auto 0!important;font-size:16.5px!important;font-weight:500!important;line-height:1.65!important}.ft-guides .od-guide-card h3{font-size:17px!important}.ft-guides .od-guide-card__body>p:not(.od-guide-card__label){font-size:15.5px!important}.ft-guides .od-guides__footer{margin-top:34px;display:flex;justify-content:center}.ft-guides .od-guides__all{min-height:48px!important;margin:0!important;padding:0 24px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid var(--ft-green)!important;border-radius:4px!important;background:var(--ft-green)!important;color:#fff!important;font-family:Manrope,Arial,sans-serif!important;font-size:12px!important;font-weight:800!important;letter-spacing:.025em!important;box-shadow:0 8px 20px rgba(47,118,83,.16)!important}.ft-guides .od-guides__all:hover,.ft-guides .od-guides__all:focus-visible{background:transparent!important;color:var(--ft-green-dark)!important;box-shadow:none!important}
.ft-faq{background:#fff}.ft-faq .od-faq__layout{grid-template-columns:minmax(280px,34%) minmax(0,66%)}.ft-faq h2{font-family:Manrope,Arial,sans-serif!important;font-size:42.24px!important;font-weight:700!important;line-height:1.14!important;letter-spacing:-.025em!important}.ft-faq .od-faq__list button{font-size:17px}.ft-faq .od-faq__list article>div p{font-size:15px}
#fast-track-final-cta{background:var(--ft-navy)!important;color:#fff}.ft-final-cta .final-cta-inner-v6>h2{color:#fff!important}.ft-final-cta .final-cta-inner-v6>p{color:rgba(255,255,255,.8)!important}.ft-final-cta .final-cta-actions-v13 button{min-height:50px;border-radius:5px;font:800 11px Manrope,Arial,sans-serif;text-transform:uppercase;cursor:pointer}.ft-final-cta .final-cta-actions-v13 button:first-child{border:1px solid var(--ft-green);background:var(--ft-green);color:#fff}.ft-final-cta .final-cta-actions-v13 button:last-child{border:1px solid var(--ft-gold);background:transparent;color:#e0bd79}
@media(min-width:961px){.fast-track-page .ft-catalog .od-section-heading{max-width:1100px}.fast-track-page .ft-catalog .od-section-heading>p:last-child{max-width:none;white-space:nowrap}}
@media(min-width:1181px){html:root:root:root:root:root:root:root:root:root:root:root body.fast-track-page[data-business="granny-flats"] main .gf-credential-rail.dk-proof-rail.dk-proof-rail .dk-proof-rail__copy>span{font-size:13px!important;white-space:nowrap}}
@media(min-width:1261px){.fast-track-page .od-design-card__media{aspect-ratio:2/1}.fast-track-page .od-design-card__body{margin-bottom:-32px}.fast-track-page .od-price{margin-top:42px}}
@media(max-width:1260px){.fast-track-page .od-design-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fast-track-page .od-design-card__body>p{min-height:0}}
@media(max-width:960px){body.fast-track-page main>#fast-track-hero{height:auto!important;min-height:0!important;max-height:none!important}body.fast-track-page main>#fast-track-hero>.od-hero__grid{height:auto!important;min-height:0!important;max-height:none!important;display:grid!important;grid-template-columns:1fr!important}body.fast-track-page main>#fast-track-hero .od-hero__media{position:static!important;width:auto!important;height:440px!important;grid-column:1!important;grid-row:1!important}body.fast-track-page main>#fast-track-hero .od-hero__media img{height:100%!important;min-height:0!important;object-position:center!important}body.fast-track-page main>#fast-track-hero .od-hero__copy{position:relative!important;width:auto!important;margin:0!important;padding:60px 0 42px!important;grid-column:1!important;grid-row:2!important;background:none!important;box-shadow:none!important}.fast-track-page .od-design-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ft-faq .od-faq__layout{grid-template-columns:1fr}}
@media(min-width:769px) and (max-width:1024px){body.fast-track-page main>#fast-track-hero{height:auto!important;min-height:0!important;max-height:none!important}body.fast-track-page main>#fast-track-hero>.od-hero__grid{height:auto!important;min-height:0!important;max-height:none!important;display:grid!important;grid-template-columns:1fr!important}body.fast-track-page main>#fast-track-hero .od-hero__media{position:static!important;width:auto!important;height:440px!important;grid-column:1!important;grid-row:1!important}body.fast-track-page main>#fast-track-hero .od-hero__media img{height:100%!important;min-height:0!important;object-position:center!important}body.fast-track-page main>#fast-track-hero .od-hero__copy{position:relative!important;width:auto!important;margin:0!important;padding:60px 0 42px!important;grid-column:1!important;grid-row:2!important;background:none!important;box-shadow:none!important}}
@media(max-width:768px){body.fast-track-page main>#fast-track-hero .od-hero__media{height:320px!important}body.fast-track-page main>#fast-track-hero .od-hero__copy{padding:44px 0 34px!important}.fast-track-page #fast-track-hero .od-eyebrow{font-size:16px!important}html:root:root:root:root:root:root body.fast-track-page main>#fast-track-hero#fast-track-hero h1{font-size:48px!important}.fast-track-page .od-hero__copy>p:not(.od-eyebrow){font-size:16px}.fast-track-page #fast-track-hero .od-hero__actions{width:100%;grid-template-columns:1fr}.fast-track-page #fast-track-hero .od-hero__actions .od-btn{width:100%;min-width:0}.ft-trust{margin-top:-26px}.ft-trust .od-trust__grid{min-height:0}.ft-trust .od-trust-item strong{font-size:11px}.ft-trust .od-trust-item span{font-size:9px}.ft-catalog{padding-top:76px}.fast-track-page .od-section-heading h2,.fast-track-page .od-faq h2{font-size:40px}.fast-track-page .od-section-heading>p:last-child{font-size:14px}.fast-track-page .od-design-grid{grid-template-columns:1fr}.fast-track-page .od-design-card h3{font-size:21px}.fast-track-page .od-design-card__body>p{font-size:14px}.ft-designer-link__cta{max-width:100%}.ft-guides{padding:68px 0 72px}.ft-guides .od-guides__header h2{font-size:34px!important}.ft-guides .od-guides__header>div>p:last-child{font-size:14px!important}.ft-guides .od-guides__footer{margin-top:28px}.ft-guides .od-guides__all{width:100%}.ft-faq h2{font-size:40px!important}.ft-faq .od-faq__list button{font-size:15px}.ft-guides .od-guides__header>div>p:last-child{font-size:14px}}
html:root:root:root:root body.granny-page.fast-track-page[data-business="granny-flats"] main>#fast-track-catalog{padding-bottom:var(--dk-density-compact-desktop,54px)!important}
html:root:root:root:root body.granny-page.fast-track-page[data-business="granny-flats"] main>#fast-track-guides{padding-top:82px!important;padding-bottom:86px!important;background:#f0f7f1!important}
@media(min-width:769px) and (max-width:1024px){html:root:root:root:root body.granny-page.fast-track-page[data-business="granny-flats"] main>#fast-track-catalog{padding-bottom:var(--dk-density-compact-tablet,50px)!important}}
@media(max-width:768px){html:root:root:root:root body.granny-page.fast-track-page[data-business="granny-flats"] main>#fast-track-guides{padding-top:68px!important;padding-bottom:72px!important}}
@media(max-width:768px){html:root:root:root:root body.granny-page.fast-track-page[data-business="granny-flats"] main>#fast-track-catalog{padding-bottom:var(--dk-density-compact-mobile,40px)!important}}
@media(prefers-reduced-motion:reduce){.fast-track-page .od-design-card button,.fast-track-page .od-design-card button svg,.ft-designer-link__cta,.ft-designer-link__cta span{transition:none}}

/* Route-local typography alignment with the DK readability system. */
html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  #fast-track-catalog .od-section-heading h2,
  #fast-track-guides .od-guides__header h2,
  #fast-track-faq .od-faq__layout h2
){
  font-family:Manrope,"Noto Sans SC",Arial,sans-serif!important;
  font-size:var(--dk-type-h2)!important;
  font-weight:var(--dk-weight-heading,700)!important;
  line-height:1.14!important;
  letter-spacing:-.025em!important;
  color:var(--dk-text-primary,#123047)!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  #fast-track-catalog .od-section-heading>p:last-child,
  #fast-track-guides .od-guides__header>div>p:last-child,
  #fast-track-faq .od-faq__layout header>p:not(.od-eyebrow)
){
  font-family:Manrope,"Noto Sans SC",Arial,sans-serif!important;
  font-size:var(--dk-type-supporting,18px)!important;
  font-weight:var(--dk-weight-supporting,600)!important;
  line-height:1.65!important;
  letter-spacing:0!important;
  color:var(--dk-text-muted-readable,#536978)!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  .od-design-card h3,
  .od-guide-card h3
){
  font-family:Manrope,"Noto Sans SC",Arial,sans-serif!important;
  font-size:20px!important;
  font-weight:700!important;
  line-height:1.3!important;
  letter-spacing:-.02em!important;
  color:var(--dk-text-primary,#123047)!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-guides .od-guide-card__label{
  font-family:Manrope,"Noto Sans SC",Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.4!important;
  letter-spacing:.12em!important;
  color:var(--ft-gold)!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  .od-design-card a[data-design-detail],
  #fast-track-guides .od-guide-card__link,
  #fast-track-faq .od-faq__layout header>a
){
  font-family:Manrope,"Noto Sans SC",Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.4!important;
  letter-spacing:.04em!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card a[data-design-detail]{
  min-height:42px!important;
  margin:13px 0 18px!important;
  border:1px solid #9caab7!important;
  border-radius:3px!important;
  background:#fff!important;
  color:#123047!important;
  justify-content:center!important;
  gap:10px!important;
  transition:background-color .2s,border-color .2s,color .2s!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card:hover a[data-design-detail],
html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card a[data-design-detail]:hover,
html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card a[data-design-detail]:focus-visible{
  border-color:var(--ft-green)!important;
  background:var(--ft-green)!important;
  color:#fff!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card a[data-design-detail] svg{
  transition:transform .2s;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card:hover a[data-design-detail] svg,
html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card a[data-design-detail]:hover svg,
html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-catalog .od-design-card a[data-design-detail]:focus-visible svg{
  transform:translateX(3px);
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-guides .od-guides__all{
  font-family:Manrope,"Noto Sans SC",Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.02em!important;
}

@media(min-width:961px){
  html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-guides .od-guides__header>div{
    max-width:1120px!important;
  }
  html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-guides .od-guides__header>div>p:last-child{
    max-width:none!important;
    white-space:nowrap!important;
  }
}

@media(min-width:769px) and (max-width:1024px){
  html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
    #fast-track-catalog .od-section-heading>p:last-child,
    #fast-track-guides .od-guides__header>div>p:last-child,
    #fast-track-faq .od-faq__layout header>p:not(.od-eyebrow)
  ){
    font-size:17px!important;
  }
}

@media(max-width:768px){
  html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
    #fast-track-catalog .od-section-heading>p:last-child,
    #fast-track-guides .od-guides__header>div>p:last-child,
    #fast-track-faq .od-faq__layout header>p:not(.od-eyebrow)
  ){
    font-size:16px!important;
  }
  html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-guides .od-guides__header>div>p:last-child{
    white-space:normal!important;
  }
}

/* Keep the FAQ library arrow visually separated from its label without
   changing the approved button size, colour or destination. */
html:root:root:root body.fast-track-page[data-business="granny-flats"] main #fast-track-faq .dk-faq-all > .dk-faq-all__link{
  gap:12px!important;
  white-space:nowrap!important;
}

/* Use one route-local secondary CTA standard outside the Hero. */
html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  .ft-designer-link__cta,
  #fast-track-guides .od-guides__all,
  #fast-track-faq .dk-faq-all__link
){
  min-height:48px!important;
  padding:0 24px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  border:1px solid var(--ft-green)!important;
  border-radius:4px!important;
  background:var(--ft-green)!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(47,118,83,.16)!important;
  font-family:Manrope,"Noto Sans SC",Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.025em!important;
  text-decoration:none!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  .ft-designer-link__cta,
  #fast-track-guides .od-guides__all,
  #fast-track-faq .dk-faq-all__link
):is(:hover,:focus-visible){
  border-color:var(--ft-green)!important;
  background:transparent!important;
  color:var(--ft-green-dark)!important;
  box-shadow:none!important;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  .ft-designer-link__cta,
  #fast-track-guides .od-guides__all,
  #fast-track-faq .dk-faq-all__link
) span{
  display:inline-block;
  transition:transform .2s ease;
}

html:root:root:root body.fast-track-page[data-business="granny-flats"] main :is(
  .ft-designer-link__cta,
  #fast-track-guides .od-guides__all,
  #fast-track-faq .dk-faq-all__link
):is(:hover,:focus-visible) span{
  transform:translateX(4px);
}
