/* Homepage fidelity pass v3.4: coherent hero art, aligned proof cards,
   scenic campervan framing, legible featured-card logo presentation.
   Everything scoped to .sst-home; no platform ranking or factual data changes. */
.sst-home .psg-hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#e8f6f5;
}
/* One full-width image instead of the earlier stacked cut-outs and masked
   transparent fades. The softly tinted left side still shows real scenery. */
.sst-home .psg-hero::before {
  content:"";
  display:block;
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:
    linear-gradient(90deg, rgba(236,248,247,.82) 0%,rgba(236,248,247,.72) 23%,rgba(236,248,247,.52) 38%,rgba(236,248,247,.12) 60%,rgba(236,248,247,0) 76%),
    url('assets/design/hero-rebuilt-clean.webp');
  background-size:100% 100%, cover;
  background-position:center,center 49%;
  background-repeat:no-repeat;
}
.sst-home .hero-art {display:none!important;}
.sst-home .hero-shell {
  position:relative;
  z-index:1;
  max-width:1171px;
  min-height:520px;
  height:520px;
  align-items:center;
}
.sst-home .hero-copy {
  width:100%;
  max-width:780px;
  padding-top:0;
  transform:none;
  margin:0;
}
.sst-home .psg-hero h1 {
  max-width:630px;
  font-size:clamp(62px,6.3vw,84px);
  margin:0 0 18px;
  line-height:.94;
}
.sst-home .hero-copy>p {margin:0 0 18px;max-width:480px;line-height:1.33;font-size:20px;}
/* Four badges are an actual aligned grid, not differently sized inline spans. */
.sst-home .hero-proof {
  width:min(760px,100%);
  max-width:760px;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:21px 0 20px;
  align-items:stretch;
}
.sst-home .hero-proof>span {
  box-sizing:border-box;
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  align-items:center;
  justify-content:stretch;
  min-height:62px;
  gap:9px;
  border:1px solid rgba(154,188,183,.57);
  padding:9px 9px;
  background:rgba(255,253,247,.96);
  border-radius:10px;
  box-shadow:0 3px 10px rgba(18,63,67,.12);
}
.sst-home .hero-proof i {
  display:block;
  box-sizing:border-box;
  justify-self:center;
  width:36px;
  height:36px;
  flex:none;
  border:0;
  border-radius:50%;
  font-size:0;
  line-height:0;
  color:transparent;
  text-indent:-9999px;
  overflow:hidden;
  background-position:center;
  background-repeat:no-repeat;
  background-size:28px 28px;
}
.sst-home .hero-proof .proof-reviews i {background-color:#fff2c1;background-image:url('assets/home-icons/proof-reviews.svg')}
.sst-home .hero-proof .proof-paying i {background-color:#dbf4e5;background-image:url('assets/home-icons/proof-paying.svg')}
.sst-home .hero-proof .proof-worldwide i {background-color:#e2f8ff;background-image:url('assets/home-icons/proof-worldwide.svg')}
.sst-home .hero-proof .proof-simple i {background-color:#f5f7df;background-image:url('assets/home-icons/proof-guides.svg')}
.sst-home .hero-proof .proof-lines {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  min-width:0;
  gap:3px;
  text-align:left;
}
.sst-home .hero-proof b {
  display:block;
  white-space:normal;
  font-size:12.5px;
  line-height:1.13;
  font-weight:900;
}
.sst-home .hero-proof small {
  display:block;
  font-weight:700;
  font-size:10.3px;
  line-height:1.18;
  color:#29556b;
}
.sst-home .hero-actions {margin:0}
.sst-home .hero-primary {font-size:15px;min-height:54px;box-shadow:0 4px 10px rgba(191,61,72,.18)}

/* Richer but still clean cards: logo dominance, robust text hierarchy,
   consistently positioned actions and subtle material depth. */
.sst-home .top-picks {background:#fffaf2;padding:25px 0 30px;}
.sst-home .top-picks>.home-shell {max-width:1095px;padding:0 15px;}
.sst-home .section-title-row {margin-bottom:15px;}
.sst-home .section-title-row h2 {font-size:29px;letter-spacing:-.025em;}
.sst-home .pick-grid {gap:14px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;}
.sst-home .pick-card {
  position:relative;
  min-width:0;
  min-height:276px;
  height:276px;
  padding:11px 11px 13px;
  border:1px solid #e5e4dd;
  border-radius:12px;
  box-shadow:0 5px 14px rgba(26,64,77,.12),0 1px 3px rgba(26,64,77,.05);
  background:linear-gradient(180deg,#fff 0%,#fff 82%,#fffdfa 100%);
  transition:transform .18s ease,box-shadow .18s ease;
}
.sst-home .pick-card:hover{transform:translateY(-2px);box-shadow:0 9px 19px rgba(26,64,77,.16)}
.sst-home .pick-brand {display:flex;flex-direction:column;align-items:center;gap:4px;margin:0;}
.sst-home .pick-card .pick-logo {
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  height:91px;
  min-height:91px;
  margin:0 auto 0;
  isolation:isolate;
}
.sst-home .pick-card .pick-logo::before {
  content:"";
  z-index:-1;
  position:absolute;
  width:75px;height:75px;
  background:radial-gradient(circle,#f3fafb 0%,#f8fdfc 57%,transparent 73%);
  border-radius:50%;
}
.sst-home .pick-card .pick-logo>img {max-width:113px;max-height:78px;width:auto;height:auto;object-fit:contain;}
.sst-home .pick-card .pick-logo img.pse-approved-icon {max-width:74px;max-height:74px;}
.sst-home .pick-card .pick-logo img.pse-editorial-provider-graphic {max-width:164px;width:96%;height:62px;max-height:62px;}
.sst-home .pick-card .pick-logo .pse-home-editorial-icon {
  display:grid;place-items:center;
  height:66px;width:66px;
  border-radius:17px;
  background:linear-gradient(140deg,#e4f7f8,#bee6ed);
  border:2px solid #92cad5;
  color:#0a7188;
  font-size:36px;
  font-weight:900;
  box-shadow:0 3px 5px rgba(24,107,121,.12);
}
.sst-home .pick-card:nth-child(2n) .pse-home-editorial-icon {background:linear-gradient(135deg,#e1f5ea,#bce6d3);border-color:#a4d3b7;color:#227654;}
.sst-home .pick-card:nth-child(3n) .pse-home-editorial-icon {background:linear-gradient(135deg,#fff1cf,#fbe0a6);border-color:#e8ca88;color:#92611d;}
.sst-home .pick-brand h3 {
  font-size:16px;
  font-weight:900;
  letter-spacing:-.016em;
  line-height:1.18;
  min-height:19px;
  margin:1px 0 2px;
}
.sst-home .pick-card>p.pse-pick-summary {
  display:-webkit-box;
  -webkit-line-clamp:3;
  line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  max-height:55px;
  min-height:55px;
  margin:5px auto 4px;
  max-width:195px;
  font-size:12px;
  line-height:1.34;
  flex:1;
  color:#244c63;
}
.sst-home .pick-card .pick-button {
  width:100%;
  min-height:40px;
  font-size:12.3px;
  border-radius:6px;
  padding:9px 7px;
  margin-top:auto;
  background:linear-gradient(180deg,#ff6075,#f74460);
  box-shadow:0 3px 5px rgba(219,68,86,.22);
}
.sst-home .pick-card .pick-bonus {margin:8px 0 0;font-size:11px;line-height:1.17;font-weight:700;color:#0a7186;}

/* Use the clean panorama as an actual scenic strip, not a cropped sky band. */
.sst-home .pse-home-more{height:138px;min-height:138px;display:flex;align-items:center;overflow:hidden}
.sst-home .pse-home-more:before{
  background-image:url('assets/design/home-banner-rebuilt-clean.webp');
  background-position:center 80%;
  background-size:cover;
  opacity:1;
}
.sst-home .pse-home-more:after{
  background:linear-gradient(90deg,rgba(237,250,250,.14) 0%,rgba(240,250,248,.70) 22%,rgba(240,250,248,.92) 38%,rgba(240,250,248,.92) 62%,rgba(240,250,248,.70) 78%,rgba(237,250,250,.14) 100%);
}
.sst-home .pse-home-more p,.sst-home .pse-home-more a{font-size:19px;line-height:1.35}
.sst-home .pse-home-more p{margin:0}

@media(min-width:851px) and (max-width:1110px){
 .sst-home .hero-shell{padding-left:5.5vw;padding-right:5.5vw}
 .sst-home .hero-proof{width:min(720px,100%)}
 .sst-home .pick-brand h3{font-size:15px}
}
@media(max-width:850px){
 .sst-home .psg-hero::before{
   background-image:linear-gradient(180deg,rgba(236,248,247,.96) 0%,rgba(236,248,247,.92) 35%,rgba(236,248,247,.56) 61%,rgba(236,248,247,.08) 80%,transparent 100%),url('assets/design/hero-rebuilt-clean.webp');
   background-position:center,62% center;
 }
 .sst-home .hero-shell{height:auto;min-height:620px;padding:23px 5vw 34px;align-items:flex-start}
 .sst-home .hero-copy{width:100%;max-width:100%;padding-top:8px}
 .sst-home .psg-hero h1{font-size:clamp(42px,7.8vw,68px);max-width:650px}
 .sst-home .hero-proof{grid-template-columns:repeat(2,minmax(0,1fr));max-width:500px;width:100%;gap:8px;margin-top:18px}
 .sst-home .pick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .sst-home .pick-card{height:276px;min-height:276px}
 .sst-home .pse-home-more{height:130px;min-height:130px}
 .sst-home .pse-home-more p,.sst-home .pse-home-more a{font-size:17px}
}
@media(max-width:650px){
 .sst-home .psg-hero::before{background-position:center,68% center;background-size:100% 100%,cover}
 .sst-home .hero-shell{min-height:665px;padding:24px 15px 25px;align-items:flex-start}
 .sst-home .hero-copy{transform:none;margin:0;padding:0;max-width:100%}
 .sst-home .psg-hero h1{font-size:clamp(42px,9.3vw,57px)}
 .sst-home .hero-copy>p{font-size:16px;max-width:340px}
 .sst-home .hero-proof{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:7px}
 .sst-home .hero-proof>span{min-height:56px;grid-template-columns:29px minmax(0,1fr);gap:5px;padding:6px}
 .sst-home .hero-proof i{width:29px;height:29px;background-size:23px 23px}
 .sst-home .hero-proof b{font-size:10.6px}
 .sst-home .hero-proof small{font-size:8.8px}
 .sst-home .pick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .sst-home .pick-card{height:271px;min-height:271px;padding:10px 8px 12px}
 .sst-home .pick-brand h3{font-size:14px}
 .sst-home .pick-card .pick-logo{min-height:78px;height:78px}
 .sst-home .pick-card .pick-logo img.pse-approved-icon{max-width:68px;max-height:68px}
 .sst-home .pick-card>p.pse-pick-summary{font-size:10.9px;min-height:47px;max-height:47px}
 .sst-home .pick-card .pick-bonus{font-size:10px}
 .sst-home .pse-home-more{height:122px;min-height:122px}
 .sst-home .pse-home-more:before{background-position:25% 78%}
 .sst-home .pse-home-more p,.sst-home .pse-home-more a{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.sst-home .pick-card{transition:none}}
/* Match earlier nth-child rules in specificity so all four pictograms display. */
.sst-home .hero-proof>span.proof-reviews i {background-image:url('assets/home-icons/proof-reviews.svg')}
.sst-home .hero-proof>span.proof-paying i {background-image:url('assets/home-icons/proof-paying.svg')}
.sst-home .hero-proof>span.proof-worldwide i {background-image:url('assets/home-icons/proof-worldwide.svg')}
.sst-home .hero-proof>span.proof-simple i {background-image:url('assets/home-icons/proof-guides.svg')}
@media(max-width:650px){
  .sst-home .pse-home-more a{display:inline-block;white-space:nowrap}
}
