/* v3.6 — global consistent header + Compare hero layout calibration.
   Keeps Core data, links, routing, sorting and other page templates untouched. */
/* Shared header: make the header geometry and menu identical on the homepage
   and every interior template at the same viewport width. */
body:has(.sst-home) .site-header .header-shell,
body:not(:has(.sst-home)) .site-header .header-shell {
  max-width:1110px;
  min-height:69px;
  padding:0 20px;
  gap:14px;
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
}
body:has(.sst-home) .site-header .psg-brand,
body:not(:has(.sst-home)) .site-header .psg-brand {
  margin-left:20px;
  min-width:0;
  flex:0 0 auto;
}
body:has(.sst-home) .site-header .pse-compass,
body:not(:has(.sst-home)) .site-header .pse-compass {
  width:58px;height:58px;flex:0 0 58px;
}
body:has(.sst-home) .site-header .pse-wordmark,
body:not(:has(.sst-home)) .site-header .pse-wordmark {
  font-size:26px;line-height:1.05;
}
body:has(.sst-home) .site-header #main-navigation,
body:not(:has(.sst-home)) .site-header #main-navigation {
  display:flex;justify-content:flex-end;gap:17px;flex:1 1 auto;min-width:0;
}
body:has(.sst-home) .site-header #main-navigation a:first-child,
body:not(:has(.sst-home)) .site-header #main-navigation a:first-child {display:none}
body:has(.sst-home) .site-header .header-search,
body:not(:has(.sst-home)) .site-header .header-search {flex:0 0 42px;min-width:42px}
body:has(.sst-home) .site-header .header-start,
body:not(:has(.sst-home)) .site-header .header-start {font-size:12px;flex:0 0 auto}
/* Compare: clear two-line headline in exactly the same Kalam font as Home.
   The new artwork from v3.5 is retained: no double-compositing or blur. */
.pse-compare-page .pse-page-hero.pse-hero-compare {
  overflow:hidden;
  background:linear-gradient(90deg,#98dcfa 0%,#dff5fb 46%,#a8dff3 100%);
}
.pse-compare-page .pse-hero-compare .pse-hero-grid {
  max-width:1225px;
  min-height:404px;
  height:404px;
  padding:0 52px;
}
.pse-compare-page .pse-hero-compare .pse-hero-words {
  width:58%;max-width:630px;
  padding:56px 0 35px;
  margin:0;
}
.pse-compare-page .pse-hero-compare .pse-hero-words h1 {
  font-family:'Kalam','Lobster Two','Comic Neue',cursive;
  font-weight:700;
  font-style:normal;
  font-size:clamp(51px,5.3vw,69px);
  line-height:.99;
  letter-spacing:-.049em;
  max-width:none;
  white-space:nowrap;
  margin:0 0 12px;
  transform:rotate(-1deg);
  transform-origin:left center;
  text-shadow:none;
}
/* Replace the offset pseudo-underline with a predictable brush stroke that
   sits under the second line but doesn't run into the paragraph. */
.pse-compare-page .pse-hero-compare .pse-hero-words h1::after {
  width:225px;height:4px;max-width:40%;
  margin:2px 0 0 175px;
  transform:rotate(-2deg);
}
.pse-compare-page .pse-hero-compare .pse-hero-words p {
  font-family:'Nunito','Cabin',sans-serif;
  font-weight:700;
  font-size:17px;
  line-height:1.43;
  max-width:490px;
  margin:14px 0 0;
  padding:0;
}
.pse-compare-page .pse-hero-compare .pse-hero-illustration {
  right:26px;top:-8px;width:862px;height:auto;
}
.pse-compare-page .pse-hero-compare .pse-hero-illustration img {
  display:block;max-width:none;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 9%,#000 21%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 9%,#000 21%);
}
/* Leave the last sentence wholly visible and add breathing room to the filters. */
.pse-compare-page .pse-compare-wrap {
  max-width:1171px;margin:-10px auto 0;padding:0 24px 30px;
}
.pse-compare-page .pse-filter-bar.pse-compare-filter-form {
  padding:20px 20px 18px;min-height:88px;gap:12px;
}
.pse-compare-page .pse-table-scroll {padding:0 18px 18px}
/* Preserve full seven-column table and existing scroll behaviour on tablets. */
@media (min-width:1180px){
  .pse-compare-page .pse-hero-compare .pse-hero-grid{max-width:1265px;padding:0 58px;height:410px;min-height:410px}
  .pse-compare-page .pse-hero-compare .pse-hero-words{max-width:650px;padding-top:58px}
  .pse-compare-page .pse-hero-compare .pse-hero-illustration{width:900px;right:34px;top:-4px}
}
@media (min-width:851px) and (max-width:1100px){
  body:has(.sst-home) .site-header .header-shell,
  body:not(:has(.sst-home)) .site-header .header-shell {gap:10px}
  body:has(.sst-home) .site-header .psg-brand,
  body:not(:has(.sst-home)) .site-header .psg-brand {margin-left:0}
  body:has(.sst-home) .site-header .pse-compass,
  body:not(:has(.sst-home)) .site-header .pse-compass {width:45px;height:45px;flex-basis:45px}
  body:has(.sst-home) .site-header .pse-wordmark,
  body:not(:has(.sst-home)) .site-header .pse-wordmark {font-size:22px}
  body:has(.sst-home) .site-header #main-navigation,
  body:not(:has(.sst-home)) .site-header #main-navigation {gap:12px}
  .pse-compare-page .pse-hero-compare .pse-hero-grid{height:389px;min-height:389px;padding:0 35px;max-width:1180px}
  .pse-compare-page .pse-hero-compare .pse-hero-words{padding-top:66px;width:59%}
  .pse-compare-page .pse-hero-compare .pse-hero-words h1{font-size:clamp(47px,5.4vw,60px)}
  .pse-compare-page .pse-hero-compare .pse-hero-words p{font-size:15px;max-width:420px}
  .pse-compare-page .pse-hero-compare .pse-hero-illustration{width:790px;right:8px;top:-2px}
}
@media (max-width:850px){
  body:has(.sst-home) .site-header .header-shell,
  body:not(:has(.sst-home)) .site-header .header-shell{min-height:65px;padding:0 16px;gap:10px;justify-content:space-between}
  body:has(.sst-home) .site-header .psg-brand,
  body:not(:has(.sst-home)) .site-header .psg-brand {margin-left:0}
  body:has(.sst-home) .site-header .pse-compass,
  body:not(:has(.sst-home)) .site-header .pse-compass {width:42px;height:42px;flex-basis:42px;margin-right:5px}
  body:has(.sst-home) .site-header .pse-wordmark,
  body:not(:has(.sst-home)) .site-header .pse-wordmark {font-size:21px}
  body:has(.sst-home) .site-header #main-navigation,
  body:not(:has(.sst-home)) .site-header #main-navigation {
    display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;
    background:#fffdf8;align-items:flex-start;justify-content:flex-start;
    padding:18px 25px;gap:15px;box-shadow:var(--shadow);z-index:40;
  }
  body:has(.sst-home) .site-header #main-navigation.open,
  body:not(:has(.sst-home)) .site-header #main-navigation.open {display:flex}
  body:has(.sst-home) .site-header #main-navigation a:first-child,
  body:not(:has(.sst-home)) .site-header #main-navigation a:first-child {display:block}
  body:has(.sst-home) .site-header .header-search,
  body:not(:has(.sst-home)) .site-header .header-search{display:none}
  .pse-compare-page .pse-hero-compare .pse-hero-grid {height:368px;min-height:368px;padding:0 28px}
  .pse-compare-page .pse-hero-compare .pse-hero-words {width:64%;max-width:570px;padding-top:58px}
  .pse-compare-page .pse-hero-compare .pse-hero-words h1 {font-size:clamp(43px,6.1vw,53px)}
  .pse-compare-page .pse-hero-compare .pse-hero-words p {font-size:14px;max-width:365px}
  .pse-compare-page .pse-hero-compare .pse-hero-illustration {width:640px;right:-142px;top:7px}
  .pse-compare-page .pse-compare-wrap {margin:-4px auto 0;padding:0 17px 24px}
}
@media (max-width:540px){
  body:has(.sst-home) .site-header .header-shell,
  body:not(:has(.sst-home)) .site-header .header-shell {min-height:62px;padding:0 12px}
  body:has(.sst-home) .site-header .pse-compass,
  body:not(:has(.sst-home)) .site-header .pse-compass {width:35px;height:35px;flex-basis:35px}
  body:has(.sst-home) .site-header .pse-wordmark,
  body:not(:has(.sst-home)) .site-header .pse-wordmark {font-size:18px}
  body:has(.sst-home) .site-header .header-start,
  body:not(:has(.sst-home)) .site-header .header-start {font-size:10px;padding:9px 10px}
  .pse-compare-page .pse-hero-compare .pse-hero-grid {height:515px;min-height:515px;padding:0 17px}
  .pse-compare-page .pse-hero-compare .pse-hero-words {width:100%;max-width:100%;padding-top:24px;padding-bottom:0}
  .pse-compare-page .pse-hero-compare .pse-hero-words h1 {
    font-size:clamp(34px,9.5vw,49px);line-height:1;white-space:normal;
    margin-bottom:7px;
  }
  .pse-compare-page .pse-hero-compare .pse-hero-words h1::after {width:135px;margin-left:115px;margin-top:4px}
  .pse-compare-page .pse-hero-compare .pse-hero-words p {font-size:13px;line-height:1.4;max-width:360px;margin-top:12px}
  .pse-compare-page .pse-hero-compare .pse-hero-illustration {top:199px;right:-30px;width:560px}
  .pse-compare-page .pse-hero-compare .pse-hero-illustration img {
    mask-image:linear-gradient(180deg,transparent 0%,#000 12%);
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 12%);
  }
  .pse-compare-page .pse-compare-wrap {margin:0 auto;padding:0 12px 24px}
  .pse-compare-page .pse-filter-bar.pse-compare-filter-form {padding:13px 12px;gap:8px}
}
