/* Final visual pass for all shared GreenShield service pages.
   This stylesheet loads after each page's legacy inline styles so it cures the
   broken/desynchronised service-page layout without changing source content. */
.gssvc-template-page:not(.gssvc-tyres-page),
.gssvc-etf-page{--gsp-green:#0a8050;--gsp-dark:#062f20;--gsp-ink:#132d21;--gsp-copy:#52695d;--gsp-line:#dbece1;--gsp-soft:#f1f9f4;background:#fff}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero{position:relative;min-height:625px;padding:144px 0 86px;overflow:hidden;isolation:isolate;background:#08281b}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-media{position:absolute!important;inset:0!important;z-index:0!important;display:block!important;overflow:hidden!important;background:#0b3725!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;opacity:1!important;transform:scale(1.012)!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-overlay{position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(4,27,18,.94) 0%,rgba(4,27,18,.82) 43%,rgba(4,27,18,.42) 73%,rgba(4,27,18,.26) 100%)!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-shell{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;min-height:395px!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy{max-width:770px!important;color:#fff!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy .gssvc-eyebrow{margin-bottom:18px!important;color:#bff4cf!important;font-size:11px!important;font-weight:800!important;letter-spacing:.15em!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy h1{max-width:820px!important;margin:0 0 18px!important;color:#fff!important;font-size:clamp(42px,5.1vw,68px)!important;line-height:1.01!important;letter-spacing:-.058em!important;font-weight:800!important;text-shadow:0 2px 20px rgba(0,0,0,.2)!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy>p{max-width:690px!important;margin:0!important;color:rgba(255,255,255,.85)!important;font-size:16px!important;line-height:1.78!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-hero-actions{margin-top:28px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-btn{min-height:50px!important;border-radius:6px!important;font-weight:800!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-btn-primary{background:#b7f4cc!important;color:#07371f!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-btn-secondary{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.44)!important;color:#fff!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-tags{gap:8px!important;margin-top:24px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-tag{padding:8px 11px!important;border-radius:4px!important;background:rgba(255,255,255,.1)!important;color:#fff!important;font-size:10px!important;letter-spacing:.065em!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-counters{position:relative!important;z-index:3!important;margin-top:-43px!important;padding-bottom:46px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-counter-grid{overflow:hidden!important;border:1px solid var(--gsp-line)!important;border-radius:8px!important;background:#fff!important;box-shadow:0 16px 42px rgba(5,45,26,.12)!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-counter{padding:24px 30px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-counter strong{color:var(--gsp-green)!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-counter span{color:#637b6e!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-main{padding:20px 0 0!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-source{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(292px,336px)!important;align-items:start!important;gap:52px!important;padding:62px 0 84px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-copy{max-width:930px!important;min-width:0!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-copy>p{margin:0 0 17px!important;color:var(--gsp-copy)!important;font-size:15px!important;line-height:1.83!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-copy>p+.gssvc-section-kicker{margin-top:54px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-section-kicker{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 15px!important;color:var(--gsp-green)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.15em!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-section-kicker:before{content:""!important;width:25px!important;height:2px!important;background:var(--gsp-green)!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-content-heading{margin:22px 0 10px!important;color:var(--gsp-ink)!important;font-size:25px!important;line-height:1.24!important;font-weight:800!important;letter-spacing:-.035em!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-step-number{width:42px!important;height:42px!important;margin:25px 0 13px!important;background:var(--gsp-green)!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-list{margin:16px 0 22px!important;padding:20px 24px 20px 43px!important;border:1px solid var(--gsp-line)!important;border-radius:7px!important;background:#fbfefc!important;color:#3d5a4b!important;font-size:14px!important;line-height:1.65!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-list li::marker{color:var(--gsp-green)!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside{position:sticky!important;top:112px!important;align-self:start!important;min-width:0!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-art{max-height:calc(100dvh - 136px)!important;padding:20px 12px 16px 20px!important;border:1px solid var(--gsp-line)!important;border-radius:9px!important;background:linear-gradient(145deg,#fbfefc,#eef9f1)!important;box-shadow:0 15px 36px rgba(8,54,32,.09)!important;overflow-y:auto!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-head{padding:2px 8px 16px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-head h2{font-size:23px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-category{margin-top:17px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-group summary{min-height:37px!important;font-size:12px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-group a{min-height:31px!important;padding:6px 8px 6px 17px!important;border-radius:5px!important;font-size:11px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-group a.is-current{background:#0a8050!important;color:#fff!important;box-shadow:0 8px 16px rgba(8,120,74,.16)!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-group a.is-current::before{color:#c8f6d5!important}.gssvc-aside-cta{display:block;margin:18px 0 3px;padding:13px;border-radius:6px;background:#092f20;color:#fff;text-decoration:none}.gssvc-aside-cta span{display:block;margin-bottom:4px;color:#baf0c9;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.gssvc-aside-cta strong{font-size:12px}.gssvc-aside-cta i{font-style:normal;color:#c8f36e}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-assist{padding:76px 0!important;background:linear-gradient(135deg,#052b1c,#0a7040)!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-assist h2{font-size:clamp(32px,4.2vw,52px)!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-assist-grid{gap:14px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-community,.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-assist-card{border-radius:8px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-bottom-nav{bottom:19px!important;border-radius:7px!important}
@media(max-width:960px){.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero{min-height:590px;padding-top:120px}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-source{grid-template-columns:1fr!important;gap:28px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside{position:static!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-aside-art{max-height:none!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-copy{max-width:none!important}}
@media(max-width:767px){.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero{min-height:545px;padding:113px 0 65px}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy h1{font-size:40px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy>p{font-size:14px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-counters{margin-top:-24px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-source{padding:46px 0 60px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-content-heading{font-size:22px!important}.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-bottom-nav{display:none!important}}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy h1.gssvc-hero-title--long{max-width:980px!important;font-size:clamp(32px,3.45vw,50px)!important;line-height:1.08!important;letter-spacing:-.046em!important}
@media(max-width:767px){.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-hero-copy h1.gssvc-hero-title--long{font-size:32px!important;line-height:1.1!important}}

/* Recovery layer: ensures legacy page-only styles can never turn normal
   source content into green text strips. */
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-copy > p,
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-copy > .gssvc-content-heading{
  display:block!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-copy > p{color:var(--gsp-copy)!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-template-copy > .gssvc-content-heading{color:var(--gsp-ink)!important}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card{
  position:relative!important;
  display:block!important;
  margin:18px 0!important;
  padding:20px 22px 19px!important;
  border:1px solid var(--gsp-line)!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#fff,#f7fcf8)!important;
  box-shadow:0 11px 25px rgba(7,54,33,.055)!important;
  overflow:hidden!important;
}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card:before{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  width:4px!important;
  height:100%!important;
  background:var(--gsp-green)!important;
}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card .gssvc-auto-card-title,
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card .gssvc-content-heading{
  display:block!important;
  margin:0 0 8px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--gsp-ink)!important;
  font-size:19px!important;
  font-weight:800!important;
  line-height:1.28!important;
  letter-spacing:-.025em!important;
  text-shadow:none!important;
}
.gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card p{
  display:block!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--gsp-copy)!important;
  font-size:15px!important;
  line-height:1.72!important;
  text-shadow:none!important;
}
@media(max-width:767px){
  .gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card{padding:18px 18px 17px!important}
  .gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card .gssvc-auto-card-title,
  .gssvc-template-page:not(.gssvc-tyres-page) .gssvc-auto-card .gssvc-content-heading{font-size:18px!important}
}
