@font-face { font-family: Kalam; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/kalam/v18/YA9dr0Wd4kDdMthQOCfhsCkAj7g.woff2") format("woff2"); unicode-range: U+900-97F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A; }
@font-face { font-family: Kalam; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/kalam/v18/YA9dr0Wd4kDdMthfOCfhsCkAj7g.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Kalam; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/kalam/v18/YA9dr0Wd4kDdMthROCfhsCkA.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Kalam; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/kalam/v18/YA9Qr0Wd4kDdMtDqHTLNkiQqtbGstvY.woff2") format("woff2"); unicode-range: U+900-97F, U+1CD0-1CF4, U+1CF7-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B0A; }
@font-face { font-family: Kalam; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/kalam/v18/YA9Qr0Wd4kDdMtDqHTLCkiQqtbGstvY.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Kalam; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/kalam/v18/YA9Qr0Wd4kDdMtDqHTLMkiQqtbGs.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOOaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIMeaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOuaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIO-aBTMnFcQIG.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 400; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofINeaBTMnFcQ.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 500; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOOaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 500; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIMeaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 500; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOuaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 500; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIO-aBTMnFcQIG.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 500; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofINeaBTMnFcQ.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 600; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOOaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 600; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIMeaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 600; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOuaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 600; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIO-aBTMnFcQIG.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 600; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofINeaBTMnFcQ.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOOaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIMeaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOuaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIO-aBTMnFcQIG.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofINeaBTMnFcQ.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 800; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOOaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 800; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIMeaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 800; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOuaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 800; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIO-aBTMnFcQIG.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 800; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofINeaBTMnFcQ.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 900; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOOaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 900; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIMeaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 900; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIOuaBTMnFcQIG.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 900; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofIO-aBTMnFcQIG.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Nunito; font-style: normal; font-weight: 900; font-display: swap; src: url("https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKofINeaBTMnFcQ.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Lobster Two"; font-style: normal; font-weight: 700; font-display: swap; src: url("https://fonts.gstatic.com/s/lobstertwo/v22/BngRUXZGTXPUvIoyV6yN5-92w7CGwR2oefDo.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root { --navy: #062d48; --teal: #137a91; --aqua: #d9f3f5; --cream: #fffaf0; --coral: #ff4c65; --coral-hover: #eb314f; --gold: #f3a31c; --paper: #fffdf8; --line: #e1e7e1; --shadow: 0 8px 24px #164d5d12; --wrap: 1260px; }
*, ::before, ::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0px; background: var(--cream); font: 16px / 1.5 Cabin, "Trebuchet MS", sans-serif; color: var(--navy); -webkit-font-smoothing: antialiased; }
h1, h2, h3, p { margin-top: 0px; }
h1, h2, h3 { line-height: 1.17; }
h1 { font-size: clamp(2.5rem, 5vw, 4.5rem); letter-spacing: -0.035em; }
h2 { font-size: clamp(1.6rem, 2.5vw, 2.45rem); }
h3 { font-size: 1.15rem; }
a { color: inherit; }
a:hover { color: var(--teal); }
img { max-width: 100%; }
button, input, select, textarea { font: inherit; }
button, .pse-btn, .pick-button { cursor: pointer; }
button:focus-visible, a:focus-visible, select:focus-visible, input:focus-visible, summary:focus-visible { outline: rgb(21, 149, 167) solid 3px; outline-offset: 3px; }
.screen-reader-text { position: absolute; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); overflow: hidden; width: 1px; height: 1px; white-space: nowrap; }
.pse-wrap, .home-shell, .header-shell, .footer-shell { max-width: var(--wrap); margin: 0px auto; padding: 0px 22px; width: 100%; }
.site-header { background: rgb(255, 255, 251); position: relative; z-index: 30; border-bottom: 1px solid rgb(231, 233, 229); box-shadow: rgba(12, 69, 82, 0.1) 0px 3px 12px; }
.site-header .header-shell { display: flex; align-items: center; gap: 24px; min-height: 66px; }
.psg-brand { text-decoration: none; white-space: nowrap; display: flex; align-items: center; min-width: 245px; }
.pse-wordmark { display: inline-flex; align-items: center; font: italic 700 23px / 1.05 "Comic Neue", "Trebuchet MS", sans-serif; color: rgb(6, 51, 75); white-space: nowrap; letter-spacing: -0.055em; }
.pse-wordmark strong { color: rgb(244, 82, 86); font-weight: 800; }
.pse-compass { display: inline-flex; align-items: center; justify-content: center; width: 47px; height: 47px; margin-right: 7px; color: rgb(7, 55, 80); font-size: 31px; text-shadow: rgb(238, 159, 27) 1px 1px, rgb(238, 159, 27) -1px -1px; background: radial-gradient(circle, rgb(220, 247, 250) 0px, rgb(220, 247, 250) 38%, rgb(235, 173, 53) 40%, rgb(235, 173, 53) 44%, rgb(16, 60, 85) 46%, rgb(16, 60, 85) 51%, transparent 53%); border-radius: 50%; }
#main-navigation { display: flex; justify-content: center; gap: 20px; align-items: center; flex: 1 1 0%; }
#main-navigation a { text-decoration: none; font-size: 13px; font-weight: 800; white-space: nowrap; color: rgb(23, 63, 80); }
#main-navigation a:hover { color: rgb(255, 80, 96); }
.header-search { display: flex; align-items: center; border: 1px solid rgb(216, 228, 231); border-radius: 30px; background: rgb(255, 255, 255); padding: 6px 10px; color: rgb(50, 116, 138); max-width: 155px; min-width: 115px; gap: 5px; }
.header-search input { outline: 0px; border: 0px; font-size: 12px; width: 100%; background: none; min-width: 0px; }
.header-start, .pse-btn, .pick-button { background: var(--coral); color: white; text-decoration: none; padding: 11px 19px; border: none; border-radius: 7px; display: inline-flex; align-items: center; justify-content: center; text-align: center; font-size: 13px; font-weight: 800; box-shadow: rgba(250, 82, 96, 0.18) 0px 4px 8px; white-space: nowrap; }
.header-start:hover, .pse-btn:hover, .pick-button:hover { background: var(--coral-hover); color: white; }
.mobile-menu-toggle { display: none; }
.pse-page, .sst-home { background: linear-gradient(rgb(247, 255, 255) 0px, rgb(255, 250, 241) 450px, rgb(255, 250, 241) 100%); }
.pse-page-hero { background: linear-gradient(150deg, rgb(222, 245, 250) 0%, rgb(247, 251, 248) 65%, rgb(201, 237, 238) 100%); overflow: hidden; position: relative; border-bottom: 5px solid rgb(242, 232, 213); }
.pse-hero-grid { display: grid; grid-template-columns: minmax(0px, 1.05fr) minmax(0px, 1fr); min-height: 340px; align-items: center; position: relative; gap: 14px; }
.pse-hero-words { position: relative; z-index: 2; padding: 25px 5px 34px 0px; }
.pse-hero-words h1, .psg-hero h1 { font-family: "Comic Neue", "Trebuchet MS", sans-serif; font-style: italic; font-weight: 900; letter-spacing: -0.055em; color: rgb(8, 46, 73); line-height: 0.99; text-shadow: rgba(255, 255, 255, 0.4) 1px 2px; }
.pse-hero-words h1 { margin-bottom: 15px; max-width: 650px; }
.pse-hero-words h1 span { color: rgb(10, 96, 119); }
.pse-hero-words p { font-size: 18px; max-width: 560px; line-height: 1.45; margin: 0px; }
.pse-hero-illustration { height: 335px; align-self: stretch; display: flex; justify-content: flex-end; align-items: stretch; position: relative; }
.pse-hero-illustration img { width: 100%; height: 100%; object-fit: cover; object-position: right center; border: 0px; mask-image: linear-gradient(to right, transparent, rgb(0, 0, 0) 28%); }
.pse-filter-bar { display: flex; align-items: center; gap: 13px; justify-content: flex-start; flex-wrap: wrap; padding: 14px 16px; background: rgba(255, 255, 255, 0.93); border: 1px solid rgb(225, 233, 231); border-radius: 12px; margin: 18px 0px 20px; box-shadow: var(--shadow); min-height: 64px; }
.pse-filter-bar a, .pse-filter-bar span { font-size: 13px; text-decoration: none; background: rgb(255, 250, 244); border: 1px solid rgb(228, 227, 220); border-radius: 8px; padding: 10px 14px; font-weight: 700; }
.pse-filter-bar label { font-size: 12px; font-weight: 700; display: flex; align-items: center; gap: 8px; }
.pse-filter-bar select { font-size: 13px; min-width: 180px; padding: 9px; border-radius: 7px; border: 1px solid rgb(222, 227, 225); background: rgb(255, 255, 255); }
.pse-filter-bar button { background: var(--coral); color: rgb(255, 255, 255); border: 0px; padding: 10px 20px; border-radius: 7px; font-weight: 800; }
.psg-hero { height: auto; min-height: 480px; background: linear-gradient(90deg, rgb(225, 245, 249), rgb(236, 249, 245) 38%, rgb(185, 234, 237) 100%); position: relative; overflow: hidden; }
.psg-hero::after { content: ""; position: absolute; left: 0px; bottom: 0px; right: 0px; height: 35px; background: linear-gradient(transparent, rgba(253, 247, 229, 0.663)); pointer-events: none; }
.hero-shell { position: relative; min-height: 480px; display: flex; align-items: center; max-width: var(--wrap); margin: auto; padding: 45px 22px; }
.hero-copy { max-width: 615px; width: 53%; z-index: 2; position: relative; padding: 5px 0px 20px; }
.hero-kicker { color: rgb(15, 96, 117); font-size: 10px; letter-spacing: 0.17em; font-weight: 900; margin-bottom: 18px; }
.psg-hero h1 { font-size: clamp(46px, 5.4vw, 76px); margin: 0px 0px 15px; }
.psg-hero h1 span { color: rgb(7, 47, 73); }
.hero-copy p { font-size: 21px; line-height: 1.34; color: rgb(5, 45, 71); margin-bottom: 22px; }
.hero-art { position: absolute; right: -6%; top: 0px; width: 65%; height: 100%; background: linear-gradient(to right, rgb(225, 245, 249) 0%, rgb(225, 245, 249) 14%, rgba(225, 245, 249, 0.95) 34%, rgba(225, 245, 249, 0.725) 49%, transparent 72%), url("assets/design/pse-home-scene.webp") right center / cover no-repeat; }
.hero-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.hero-primary { background: var(--coral); color: rgb(255, 255, 255); display: inline-flex; text-decoration: none; align-items: center; gap: 10px; padding: 13px 22px; border-radius: 7px; font-size: 14px; font-weight: 800; box-shadow: rgba(245, 73, 101, 0.38) 0px 4px 10px; }
.hero-primary:hover { color: rgb(255, 255, 255); background: var(--coral-hover); }
.hero-secondary { font-weight: 700; text-decoration: none; background: rgb(255, 254, 247); display: inline-flex; gap: 8px; align-items: center; padding: 12px 15px; border-radius: 7px; border: 1px solid rgb(177, 222, 226); color: rgb(19, 107, 124); font-size: 14px; }
.hero-primary span, .hero-secondary span { display: none; }
.hero-proof { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 23px; }
.hero-proof > span { display: flex; align-items: center; gap: 7px; background: rgba(255, 249, 237, 0.867); border: 1px solid rgb(244, 234, 206); border-radius: 9px; padding: 9px 11px; min-width: 130px; }
.hero-proof i { font-style: normal; color: rgb(237, 158, 0); font-size: 21px; }
.hero-proof b { font-size: 12px; line-height: 1.2; }
.top-picks { padding: 22px 0px 35px; background: var(--cream); }
.section-title-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; }
.section-title-row h2 { font-size: 26px; line-height: 1.1; margin: 0px; font-weight: 850; }
.section-title-row p { font-size: 13px; margin: 5px 0px 0px; color: rgb(62, 100, 113); }
.section-title-row > a { font-size: 13px; text-decoration: none; color: rgb(239, 83, 101); font-weight: 800; }
.title-with-icon { display: flex; gap: 11px; align-items: center; }
.title-with-icon .crown { display: none; }
.pick-grid { display: grid; grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 14px; }
.pick-card { border: 1px solid rgb(230, 230, 223); border-radius: 12px; background: rgb(255, 255, 255); box-shadow: rgba(23, 65, 80, 0.08) 0px 4px 16px; min-width: 0px; text-align: center; display: flex; flex-direction: column; align-items: stretch; padding: 16px 13px 14px; min-height: 252px; }
.pick-badge { display: none; }
.pick-brand { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.pick-logo { height: 69px; display: flex; align-items: center; justify-content: center; width: 100%; }
.pick-logo img { max-width: 130px; max-height: 55px; object-fit: contain; }
.pick-brand h3 { font-size: 17px; font-weight: 800; margin: 0px; }
.pick-rating { font-size: 15px; color: var(--gold); margin: 6px 0px 8px; }
.pick-rating span { letter-spacing: -1px; }
.pick-rating b { color: rgb(113, 86, 34); font-size: 13px; }
.pick-card > p { font-size: 12.5px; line-height: 1.43; color: rgb(36, 75, 96); flex: 1 1 0%; margin: 0px 0px 14px; }
.pick-highlight { display: none; }
.pick-button { font-size: 13px; box-shadow: none; padding: 10px 8px; white-space: normal; }
.pick-bonus { font-size: 11px; color: rgb(36, 110, 131); text-decoration: none; display: block; margin: 10px 0px 0px; }
.pse-home-more { background: rgb(227, 245, 245); border-top: 1px solid rgb(190, 226, 230); padding: 15px 0px; text-align: center; font-size: 14px; }
.pse-home-more p { margin: 0px; }
.pse-home-more a { color: rgb(9, 100, 122); font-weight: 800; }
.pse-review-final-cta { margin: 4px 0px 18px; padding: 16px 20px; border: 1px solid rgb(211, 232, 228); background: rgb(243, 251, 249); border-radius: 10px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.pse-review-final-cta p { flex: 1 1 255px; margin: 0px; font-size: 14px; line-height: 1.45; font-weight: 700; }
.pse-review-final-cta .pse-btn { flex: 0 0 auto; min-height: 44px; }
.pse-review-final-cta small { flex: 1 1 100%; font-size: 11px; line-height: 1.45; color: rgb(66, 99, 111); }
@media (max-width: 620px) {
  .pse-review-final-cta { padding: 14px; gap: 10px; }
  .pse-review-final-cta p { flex-basis: 100%; }
  .pse-review-final-cta .pse-btn { width: 100%; }
}
.pse-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 15px; padding: 5px 0px 50px; }
.pse-platform-card { background: rgb(255, 255, 255); border: 1px solid rgb(231, 230, 221); box-shadow: rgba(22, 78, 89, 0.063) 0px 4px 14px; border-radius: 10px; padding: 18px 14px 15px; text-align: center; display: flex; flex-direction: column; align-items: center; min-height: 245px; }
.pse-platform-card .pse-platform-logo { height: 72px; display: flex; align-items: center; justify-content: center; width: 100%; }
.pse-platform-logo img { max-width: 155px; max-height: 66px; object-fit: contain; }
.pse-platform-card h3 { font-size: 18px; font-weight: 800; margin: 2px 0px 4px; }
.pse-stars { color: rgb(233, 160, 15); font-size: 16px; font-weight: 700; white-space: nowrap; }
.pse-stars b { color: rgb(49, 86, 110); }
.pse-platform-card p { font-size: 13px; line-height: 1.42; color: rgb(53, 84, 104); margin: 9px 0px 16px; max-width: 235px; flex: 1 1 0%; }
.pse-platform-card .pse-btn { width: 100%; max-width: 190px; margin: auto auto 0px; padding: 9px 8px; }
.pse-comparison { border-collapse: separate; border-spacing: 0px; width: 100%; background: rgb(255, 255, 255); border: 1px solid rgb(226, 228, 216); border-radius: 10px; overflow: hidden; font-size: 13px; }
.pse-comparison th { background: rgb(247, 241, 230); text-align: left; color: rgb(31, 69, 91); font-weight: 900; padding: 13px 11px; }
.pse-comparison td { border-top: 1px solid rgb(235, 233, 223); padding: 11px 10px; vertical-align: middle; }
.pse-comparison tbody tr:nth-child(2n) { background: rgb(255, 252, 246); }
.pse-table-brand { display: flex; align-items: center; gap: 8px; min-width: 160px; }
.pse-table-brand img { width: 35px; height: 35px; object-fit: contain; }
.pse-table-brand b { font-size: 13px; }
.pse-comparison .pse-btn { padding: 8px 12px; font-size: 12px; }
.pse-table-scroll { width: 100%; overflow-x: auto; margin: 0px 0px 14px; }
.pse-disclosure { font-size: 13px; color: rgb(88, 113, 122); padding-bottom: 36px; }
.pse-review-hero { background: linear-gradient(130deg, rgb(243, 252, 253), rgb(231, 243, 242) 70%, rgb(212, 237, 240)); padding: 0px 0px 25px; border-bottom: 4px solid rgb(231, 240, 238); }
.pse-breadcrumb { padding: 17px 0px 6px; color: rgb(85, 112, 122); font-size: 12px; }
.pse-breadcrumb a { text-decoration: none; color: rgb(34, 93, 114); }
.pse-review-hero-row { display: grid; grid-template-columns: 1.05fr 1fr; min-height: 275px; align-items: center; gap: 10px; }
.pse-review-identity { display: flex; gap: 15px; align-items: flex-start; max-width: 650px; }
.pse-review-identity > .pse-platform-logo { height: 104px; width: 110px; flex: 0 0 110px; border: 1px solid rgb(225, 235, 233); background: rgb(255, 255, 255); border-radius: 13px; padding: 14px; display: flex; align-items: center; justify-content: center; }
.pse-review-identity .pse-platform-logo img { max-width: 100%; max-height: 77px; }
.pse-review-identity h1 { font-size: clamp(28px, 3.5vw, 44px); margin: 0px 0px 6px; }
.pse-review-identity p { font-size: 14px; line-height: 1.5; margin: 8px 0px 15px; }
.pse-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.pse-outline { display: inline-flex; align-items: center; padding: 10px 15px; border: 1px solid rgb(200, 223, 225); background: rgb(255, 255, 255); border-radius: 7px; text-decoration: none; font-size: 13px; font-weight: 800; }
.pse-review-scenic { height: 268px; width: 100%; object-fit: cover; object-position: right center; mask-image: linear-gradient(to right, transparent, rgb(0, 0, 0) 25%); }
.pse-review-tabs { display: flex; gap: 0px; border-bottom: 1px solid rgb(200, 220, 223); flex-wrap: wrap; padding: 6px 0px; }
.pse-review-tabs a { padding: 13px 20px; font-size: 13px; text-decoration: none; font-weight: 700; border-bottom: 3px solid transparent; }
.pse-review-tabs a:first-child { border-bottom-color: rgb(239, 93, 100); color: rgb(14, 103, 128); }
.pse-review-overview { display: grid; grid-template-columns: 1.4fr 0.72fr; gap: 30px; margin: 22px 0px 36px; }
.pse-review-overview h2 { font-size: 26px; margin: 0px 0px 12px; }
.pse-review-overview p { font-size: 15px; line-height: 1.65; }
.pse-review-overview aside { border: 1px solid rgb(204, 231, 223); background: rgb(224, 245, 237); border-radius: 12px; padding: 20px; }
.pse-review-overview aside h2 { font-size: 21px; }
.pse-review-facts, .pse-pros-cons, .pse-review-faq { border-top: 1px solid rgb(225, 232, 227); padding: 24px 0px; }
.pse-review-facts > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.pse-review-facts article { border: 1px solid rgb(229, 231, 226); border-radius: 10px; background: rgb(255, 255, 255); padding: 15px; }
.pse-review-facts strong { color: rgb(10, 97, 117); }
.pse-review-facts p { font-size: 14px; margin: 6px 0px 0px; }
.pse-pros-cons { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.pse-pros-cons > div { background: rgb(255, 255, 255); border: 1px solid rgb(229, 231, 226); padding: 20px; border-radius: 12px; }
.pse-pros-cons li { margin: 8px 0px; }
.pse-review-faq details { padding: 11px 14px; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(228, 231, 228); }
.pse-review-faq summary { font-weight: 700; cursor: pointer; }
.pse-section-heading { font-size: 27px; margin: 28px 0px 15px; }
.pse-guide-header { background: linear-gradient(135deg, rgb(232, 247, 249), rgb(214, 236, 236)); padding-bottom: 16px; }
.pse-guide-header-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 12px; }
.pse-guide-header-grid h1 { font-size: clamp(32px, 4vw, 58px); max-width: 650px; }
.pse-guide-header-grid p { font-size: 16px; }
.pse-guide-header-grid img { height: 255px; width: 100%; object-fit: cover; mask-image: linear-gradient(to right, transparent, rgb(0, 0, 0) 29%); }
.pse-guide-layout { display: grid; grid-template-columns: 240px 1fr; gap: 26px; align-items: start; padding-top: 25px; padding-bottom: 50px; }
.pse-guide-sidebar { background: rgb(229, 243, 245); border: 1px solid rgb(207, 230, 230); border-radius: 12px; padding: 18px; position: sticky; top: 10px; }
.pse-guide-sidebar h2 { font-size: 20px; }
.pse-guide-sidebar a { display: block; padding: 9px 0px; font-size: 14px; text-decoration: none; border-bottom: 1px solid rgb(214, 229, 228); }
.pse-guide-article { background: rgb(255, 255, 255); border: 1px solid rgb(231, 232, 227); border-radius: 13px; box-shadow: var(--shadow); padding: 26px 35px; font-size: 16px; line-height: 1.72; }
.pse-guide-article h2 { margin-bottom: 14px; color: rgb(10, 59, 92); }
.pse-guide-callout { border-left: 4px solid rgb(255, 106, 95); background: rgb(255, 248, 234); padding: 18px 22px; border-radius: 8px; margin-top: 24px; }
.pse-guide-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 15px; padding-bottom: 55px; }
.pse-guide-card { background: rgb(255, 255, 255); min-height: 225px; display: flex; flex-direction: column; padding: 22px; border-radius: 13px; border: 1px solid rgb(228, 230, 223); box-shadow: var(--shadow); }
.pse-guide-nr { font-size: 24px; font-weight: 900; color: rgb(249, 173, 37); }
.pse-card-tag { font-size: 10px; letter-spacing: 0.14em; color: rgb(21, 135, 152); font-weight: 900; text-transform: uppercase; }
.pse-guide-card h3 { font-size: 21px; margin: 8px 0px; }
.pse-guide-card p { font-size: 14px; flex: 1 1 0%; }
.pse-guide-card .pse-btn { align-self: flex-start; }
.pse-faq-list { max-width: 1000px; margin: 25px auto 52px; }
.pse-faq-list details { background: rgb(255, 255, 255); border: 1px solid rgb(229, 230, 223); border-radius: 9px; margin: 7px 0px; box-shadow: rgba(14, 81, 96, 0.04) 0px 2px 8px; }
.pse-faq-list summary { list-style: none; cursor: pointer; font-weight: 800; font-size: 15px; display: flex; gap: 18px; align-items: center; padding: 16px 20px; }
.pse-faq-list summary::-webkit-details-marker { display: none; }
.pse-faq-list summary span { color: rgb(20, 123, 145); font-weight: 900; }
.pse-faq-list summary::after { content: "+"; margin-left: auto; font-size: 22px; color: rgb(20, 121, 139); }
.pse-faq-list details[open] summary::after { content: "−"; }
.pse-faq-list details p { margin: 0px; padding: 0px 20px 18px 52px; font-size: 14px; line-height: 1.65; color: rgb(53, 86, 106); }
.pse-about-benefits { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; max-width: 880px; padding: 28px 0px 18px; }
.pse-about-benefits article { display: flex; gap: 14px; align-items: flex-start; background: rgb(255, 255, 255); border: 1px solid rgb(229, 232, 223); padding: 20px; border-radius: 12px; }
.pse-about-benefits article > span { display: grid; place-items: center; min-width: 45px; height: 45px; border-radius: 50%; background: rgb(236, 246, 240); font-size: 21px; }
.pse-about-benefits h2 { font-size: 19px; margin: 0px 0px 7px; }
.pse-about-benefits p { font-size: 14px; margin: 0px; line-height: 1.5; }
.pse-about-disclosure { max-width: 880px; border-radius: 11px; background: rgb(234, 245, 243); padding: 24px; margin-bottom: 45px; }
.pse-about-disclosure h2 { font-size: 21px; }
.pse-about-disclosure p { font-size: 15px; }
.pse-tips-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; padding: 32px 0px 52px; }
.pse-tips-grid article { background: rgb(255, 255, 255); padding: 23px; border-radius: 12px; border: 1px solid rgb(223, 235, 231); min-height: 180px; }
.pse-tips-grid span { display: inline-grid; place-items: center; border-radius: 50%; width: 38px; height: 38px; background: rgb(235, 248, 238); color: rgb(11, 115, 129); font-weight: 900; }
.pse-tips-grid h2 { font-size: 19px; margin: 13px 0px 6px; }
.pse-tips-grid p { font-size: 14px; line-height: 1.55; }
.modern-guides-page { max-width: var(--wrap); padding: 25px 22px 60px; margin: auto; }
.modern-guides-page h1 { font-size: clamp(34px, 4.5vw, 59px); color: var(--navy); }
.modern-guides-page .guides-modern-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: center; border: 1px solid rgb(214, 230, 229); background: linear-gradient(110deg, rgb(242, 252, 249), rgb(217, 239, 242)); border-radius: 12px; padding: 22px 26px; margin: 15px 0px 28px; }
.modern-guides-page .guides-hero-art img { width: 100%; max-height: 290px; object-fit: cover; }
.modern-guides-page .guides-modern-section { padding: 10px 0px 20px; }
.modern-guides-page .guides-top-grid, .modern-guides-page .guides-all-grid, .modern-guides-page .modern-payment-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 15px; }
.modern-guides-page .modern-guide-card, .modern-guides-page .modern-payment-grid > * { background: rgb(255, 255, 255); border: 1px solid rgb(226, 232, 229); border-radius: 10px; padding: 20px; }
.modern-guides-page .modern-guide-card h3 { font-size: 19px; }
.modern-guides-page .guides-section-head h2 { font-size: 27px; }
.modern-guides-page a.text-link { color: rgb(10, 126, 141); font-weight: 800; }
.site-footer { background: rgb(6, 46, 73); color: rgb(240, 250, 251); position: relative; border-top: 5px solid rgb(23, 106, 127); }
.site-footer .footer-shell { display: grid; grid-template-columns: 1.6fr 1fr 1.25fr 1.5fr; gap: 35px; padding-top: 35px; padding-bottom: 15px; }
.site-footer .pse-wordmark { color: rgb(255, 255, 255); }
.site-footer .pse-wordmark strong { color: rgb(255, 126, 124); }
.footer-brand p { font-size: 10px; letter-spacing: 0.07em; font-weight: 700; margin: 9px 0px; }
.footer-links { display: flex; flex-direction: column; gap: 8px; }
.footer-links strong, .footer-trust strong { font-size: 14px; }
.footer-links a { font-size: 13px; color: rgb(237, 250, 250); text-decoration: none; }
.footer-links a:hover, .footer-bottom a:hover { color: rgb(254, 192, 106); }
.footer-trust p { font-size: 13px; line-height: 1.6; max-width: 225px; }
.footer-bottom { grid-column: 1 / -1; border-top: 1px solid rgb(43, 91, 114); margin-top: 10px; padding: 17px 0px 0px; font-size: 12px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.footer-bottom > div { display: flex; gap: 20px; }
.footer-bottom a { text-decoration: none; color: rgb(255, 255, 255); }
@media (max-width: 1100px) {
  .psg-brand { min-width: 220px; }
  .site-header .header-shell { gap: 12px; }
  #main-navigation { gap: 11px; }
  .header-search { display: none; }
  .pse-wordmark { font-size: 20px; }
  .pse-compass { width: 40px; height: 40px; }
  .hero-copy { width: 55%; }
  .hero-art { width: 67%; }
}
@media (max-width: 850px) {
  .mobile-menu-toggle { display: flex; flex-direction: column; gap: 5px; border: 1px solid rgb(205, 223, 224); background: rgb(255, 255, 255); border-radius: 7px; padding: 9px; order: 5; }
  .mobile-menu-toggle > span:not(.screen-reader-text) { display: block; width: 23px; height: 2px; background: rgb(20, 61, 85); }
  #main-navigation { display: none; position: absolute; left: 0px; right: 0px; top: 100%; padding: 18px 25px; background: rgb(255, 255, 255); flex-direction: column; align-items: flex-start; box-shadow: var(--shadow); }
  #main-navigation.open { display: flex; }
  .site-header .header-shell { justify-content: space-between; }
  .header-start { margin-left: auto; }
  .pick-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .pse-card-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .pse-guide-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .pse-hero-grid { min-height: 300px; }
  .pse-hero-illustration { height: 290px; }
  .pse-review-hero-row { grid-template-columns: 1fr 0.65fr; }
  .pse-review-scenic { height: 250px; }
  .site-footer .footer-shell { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 650px) {
  .pse-wrap, .home-shell, .header-shell, .footer-shell { padding-left: 15px; padding-right: 15px; }
  .site-header .header-shell { min-height: 61px; }
  .psg-brand { min-width: 0px; }
  .pse-wordmark { font-size: 18px; }
  .pse-compass { width: 34px; height: 34px; margin-right: 5px; font-size: 22px; }
  .header-start { font-size: 11px; padding: 10px; }
  .psg-hero { min-height: 570px; }
  .hero-shell { min-height: 570px; padding: 28px 15px 15px; align-items: flex-start; }
  .hero-copy { width: 100%; max-width: 100%; }
  .psg-hero h1 { font-size: clamp(39px, 9vw, 58px); }
  .hero-copy p { font-size: 18px; }
  .hero-art { inset: auto 0px 0px; width: 100%; height: 47%; background-position: center center; background-size: cover; opacity: 0.9; mask-image: linear-gradient(transparent, rgb(0, 0, 0) 25%); }
  .hero-proof { gap: 6px; }
  .hero-proof > span { min-width: 0px; padding: 5px 6px; }
  .hero-proof b { font-size: 10px; }
  .hero-proof i { font-size: 15px; }
  .hero-kicker { font-size: 9px; }
  .hero-actions a { font-size: 12px; }
  .pick-grid, .pse-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; }
  .pick-card { min-height: 236px; padding: 13px 9px; }
  .pick-card h3, .pse-platform-card h3 { font-size: 15px; }
  .pick-card p, .pse-platform-card p { font-size: 12px; }
  .pse-page-hero .pse-hero-grid { grid-template-columns: 1fr; gap: 0px; min-height: 425px; }
  .pse-hero-words { padding: 28px 0px 0px; }
  .pse-hero-words h1 { font-size: 41px; }
  .pse-hero-words p { font-size: 15px; }
  .pse-hero-illustration { height: 220px; width: 100%; align-self: start; justify-content: flex-end; }
  .pse-hero-illustration img { width: 100%; mask-image: linear-gradient(transparent, rgb(0, 0, 0) 30%); }
  .pse-review-hero-row { display: flex; flex-direction: column; align-items: stretch; }
  .pse-review-scenic { height: 185px; }
  .pse-review-identity { gap: 10px; }
  .pse-review-identity > .pse-platform-logo { width: 74px; flex-basis: 74px; height: 80px; padding: 7px; }
  .pse-review-identity h1 { font-size: 29px; }
  .pse-review-overview, .pse-review-facts > div, .pse-pros-cons, .pse-guide-layout, .pse-guide-header-grid, .pse-about-benefits, .pse-tips-grid { grid-template-columns: 1fr; }
  .pse-guide-header-grid img { height: 170px; }
  .pse-guide-article { padding: 20px; }
  .pse-guide-sidebar { position: static; }
  .pse-guide-card-grid { grid-template-columns: 1fr; }
  .pse-review-tabs a { padding: 11px; }
  .pse-comparison { min-width: 780px; }
  .pse-filter-bar { align-items: stretch; }
  .pse-filter-bar label { width: 100%; justify-content: space-between; }
  .pse-filter-bar label select { flex: 1 1 0%; max-width: 235px; }
  .site-footer .footer-shell { grid-template-columns: 1fr 1fr; gap: 20px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 360px) {
  .pick-grid, .pse-card-grid { grid-template-columns: 1fr; }
  .header-start { display: none; }
}
.pse-compass { background: none; border: 0px; }
.pse-compass img { width: 100%; height: 100%; object-fit: contain; display: block; }
.header-search button { border: 0px; background: none; color: rgb(50, 116, 138); padding: 0px; cursor: pointer; font-size: 18px; }
.pse-empty { padding: 28px 20px; border: 1px solid rgb(223, 235, 231); background: rgb(255, 255, 255); border-radius: 12px; margin-bottom: 40px; }
.pse-alternative-link { margin: 15px 0px 8px; }
.pse-alternative-link a { display: inline-flex; color: rgb(8, 113, 138); text-decoration: none; font-weight: 800; background: rgb(229, 246, 244); border-radius: 6px; padding: 11px 17px; }
:root { --navy: #092e49; --coral: #fa4961; --teal: #0d7182; --cream: #fff8ed; --paper: #fffcf6; --wrap: 1230px; --shadow: 0 6px 17px #17404d15; }
body { background: var(--cream); color: var(--navy); font-family: Cabin, "Trebuchet MS", system-ui, sans-serif; }
.site-header { border-bottom: 1px solid rgb(213, 233, 229); background: rgb(253, 251, 245); box-shadow: rgba(18, 57, 72, 0.098) 0px 3px 14px; }
.site-header .header-shell { min-height: 64px; }
.pse-wordmark { font-family: "Comic Neue", "Trebuchet MS", cursive; font-weight: 900; font-style: italic; letter-spacing: -0.05em; font-size: 24px; }
.pse-wordmark strong { color: rgb(246, 94, 82); }
.pse-compass { background: none; box-shadow: rgba(7, 57, 88, 0.16) 0px 2px 4px; width: 51px; height: 51px; }
#main-navigation a { font-weight: 800; font-size: 13px; }
.header-start, .pse-btn, .pick-button, .hero-primary { border-radius: 6px; background: linear-gradient(rgb(255, 99, 114), rgb(247, 67, 93)); box-shadow: rgba(233, 83, 82, 0.23) 0px 2px 5px; color: white; }
.header-start:hover, .pse-btn:hover, .pick-button:hover, .hero-primary:hover { background: rgb(233, 56, 86); color: white; transform: translateY(-1px); }
.pse-page, .sst-home { background: rgb(255, 250, 240); }
.psg-hero { min-height: 530px; border-bottom: 1px solid rgb(207, 221, 206); background: linear-gradient(90deg, rgb(230, 246, 244) 0%, rgb(233, 245, 237) 44%, rgb(165, 218, 228) 100%); }
.hero-shell { min-height: 530px; align-items: center; padding-top: 36px; padding-bottom: 36px; }
.hero-art { right: -4%; width: 71%; background: linear-gradient(90deg, rgb(230, 246, 244) 0%, rgba(230, 246, 244, 0.855) 10%, rgba(230, 246, 244, 0.54) 26%, transparent 48%), url("assets/design/pse-home-scene.png") center 46% / cover no-repeat; }
.hero-copy { width: 56%; max-width: 615px; padding: 2px 0px 17px; }
.hero-kicker { font-size: 10px; letter-spacing: 0.12em; margin-bottom: 12px; color: rgb(23, 104, 129); }
.psg-hero h1 { font-family: "Comic Neue", "Trebuchet MS", cursive; font-weight: 900; font-size: clamp(52px, 5.1vw, 73px); font-style: italic; letter-spacing: -0.07em; line-height: 0.99; margin-bottom: 16px; }
.psg-hero h1 span { color: rgb(7, 44, 69); }
.hero-copy p { font-size: 21px; line-height: 1.32; margin-bottom: 13px; max-width: 405px; }
.hero-proof { margin: 12px 0px 19px; gap: 7px; flex-wrap: nowrap; max-width: 610px; }
.hero-proof > span { background: rgba(251, 250, 242, 0.85); border: 1px solid rgb(217, 234, 224); box-shadow: rgba(78, 135, 128, 0.09) 0px 2px 6px; border-radius: 7px; min-width: 0px; flex: 1 1 0%; padding: 8px 9px; }
.hero-proof b { font-size: 12px; }
.hero-proof i { color: rgb(14, 128, 148); font-size: 22px; }
.hero-actions { gap: 11px; }
.hero-primary { padding: 13px 19px; font-size: 14px; }
.hero-secondary { border-radius: 6px; }
.psg-hero::after { height: 24px; background: linear-gradient(transparent, rgba(255, 246, 231, 0.47)); }
.top-picks { background: linear-gradient(rgb(255, 250, 240), rgb(255, 247, 235)); padding: 24px 0px 40px; }
.section-title-row { margin-bottom: 14px; }
.section-title-row h2 { font-size: 30px; letter-spacing: -0.035em; }
.section-title-row p { color: rgb(82, 111, 120); }
.title-with-icon .crown { display: none; }
.pick-grid { gap: 14px; }
.pick-card { background: rgb(255, 253, 251); border-color: rgb(238, 229, 215); box-shadow: rgba(18, 58, 73, 0.08) 0px 4px 10px; min-height: 246px; padding: 17px 12px 15px; border-radius: 10px; }
.pick-logo { height: 63px; }
.pick-logo img { max-height: 54px; max-width: 145px; }
.pick-brand h3 { font-size: 17px; letter-spacing: -0.018em; }
.pick-rating { margin: 5px 0px 7px; }
.pick-card > p { min-height: 37px; font-size: 12.5px; line-height: 1.4; }
.pick-button { padding: 11px 10px; font-size: 13px; min-height: 40px; }
.pick-bonus { font-size: 12px; }
.pse-home-more { background: rgb(229, 241, 237); border-top: 1px solid rgb(210, 230, 225); padding: 13px; }
.pse-page-hero { background: linear-gradient(120deg, rgb(230, 246, 248) 0%, rgb(222, 242, 242) 39%, rgb(173, 220, 232) 100%); border-bottom: 3px solid rgb(229, 214, 190); }
.pse-hero-grid { min-height: 340px; }
.pse-hero-words h1 { font-size: clamp(45px, 4.75vw, 66px); letter-spacing: -0.065em; }
.pse-hero-words p { max-width: 500px; color: rgb(22, 62, 81); font-size: 17px; }
.pse-hero-illustration { height: 340px; margin-right: -20px; }
.pse-hero-illustration img { object-fit: cover; object-position: right center; mask-image: linear-gradient(90deg, transparent 0%, rgb(0, 0, 0) 15%); }
.pse-filter-bar { box-shadow: rgba(29, 86, 83, 0.067) 0px 4px 11px; border: 1px solid rgb(213, 227, 223); background: rgb(255, 254, 248); gap: 11px; min-height: 61px; }
.pse-filter-bar a, .pse-filter-bar span { background: rgb(243, 250, 249); }
.pse-filter-bar button { background: var(--coral); border-radius: 6px; }
.pse-market-label { font-weight: 800; color: rgb(13, 103, 120); }
.pse-card-grid { gap: 14px; }
.pse-platform-card { border-radius: 10px; background: rgb(255, 253, 250); box-shadow: rgba(14, 70, 82, 0.07) 0px 4px 12px; border: 1px solid rgb(233, 229, 220); min-height: 248px; padding: 20px 15px 16px; }
.pse-platform-card .pse-platform-logo { height: 66px; }
.pse-platform-card h3 { font-size: 18px; }
.pse-platform-card p { font-size: 13px; line-height: 1.42; }
.pse-platform-card .pse-btn { margin-top: auto; min-width: 125px; }
.pse-compare-page .pse-page-hero { background: rgb(217, 240, 241); }
.pse-comparison { border-collapse: separate; border-spacing: 0px; width: 100%; background: rgb(255, 253, 247); box-shadow: rgba(23, 63, 80, 0.094) 0px 4px 14px; border: 1px solid rgb(228, 227, 217); border-radius: 9px; overflow: hidden; }
.pse-comparison th { background: rgb(255, 248, 232); color: rgb(24, 56, 77); text-align: left; font-size: 12px; padding: 13px 11px; border-bottom: 1px solid rgb(228, 221, 208); }
.pse-comparison td { padding: 12px 11px; border-bottom: 1px solid rgb(233, 235, 230); font-size: 13px; }
.pse-comparison tbody tr:nth-child(2n) { background: rgb(248, 252, 251); }
.pse-comparison tbody tr:hover { background: rgb(234, 248, 247); }
.pse-table-brand { display: flex; align-items: center; gap: 9px; }
.pse-table-brand img { max-width: 45px; max-height: 28px; object-fit: contain; }
.pse-no-results { text-align: center; color: rgb(86, 113, 129); padding: 28px 15px !important; }
.pse-no-results a { color: rgb(8, 119, 139); font-weight: 900; }
.pse-review-hero { background: linear-gradient(125deg, rgb(253, 252, 247) 10%, rgb(232, 247, 245) 49%, rgb(175, 223, 235) 100%); }
.pse-review-hero-row { min-height: 315px; }
.pse-review-scenic { height: 307px; object-position: center center; }
.pse-review-identity h1 { font-weight: 900; font-size: clamp(32px, 3.6vw, 49px); }
.pse-review-identity > .pse-platform-logo { background: rgb(255, 255, 255); border: 1px solid rgb(225, 232, 227); border-radius: 10px; box-shadow: rgba(13, 65, 80, 0.09) 0px 4px 14px; }
.pse-review-tabs { background: rgb(255, 253, 249); border-bottom-color: rgb(215, 229, 224); }
.pse-review-overview aside { background: linear-gradient(145deg, rgb(228, 245, 232), rgb(199, 237, 235)); border-color: rgb(205, 233, 222); }
.pse-guide-header { background: linear-gradient(95deg, rgb(231, 247, 247), rgb(164, 218, 230)); border-bottom: 3px solid rgb(230, 214, 184); }
.pse-guide-header-grid h1 { font-weight: 900; letter-spacing: -0.05em; }
.pse-guide-article { box-shadow: rgba(23, 63, 79, 0.07) 0px 5px 16px; }
.pse-guide-sidebar { background: rgb(227, 244, 244); }
.pse-guide-card { background: rgb(255, 253, 249); }
.pse-guide-card h3 { color: rgb(10, 52, 79); }
.pse-faq-list { max-width: 1080px; }
.pse-faq-list details { background: rgb(255, 253, 248); border-color: rgb(233, 231, 220); box-shadow: rgba(23, 66, 85, 0.07) 0px 2px 7px; }
.pse-faq-list summary { font-weight: 800; }
.pse-about-benefits article { background: rgb(255, 253, 249); }
.pse-about-benefits article > span { background: rgb(231, 248, 237); color: rgb(217, 156, 26); }
.pse-about-disclosure { background: rgb(227, 244, 236); }
.pse-contact-content { padding-top: 45px; padding-bottom: 75px; max-width: 900px; }
.pse-contact-content h2 { font-size: 30px; }
.site-footer { background: rgb(7, 47, 73); border-top-color: rgb(11, 117, 134); }
.footer-links a, .footer-trust p { color: rgb(231, 244, 247); }
@media (max-width: 1020px) {
  .hero-art { right: -9%; width: 73%; }
  .hero-copy { width: 58%; }
  .hero-proof b { font-size: 11px; }
  .pse-hero-words h1 { font-size: 52px; }
}
@media (max-width: 850px) {
  .psg-hero, .hero-shell { min-height: 505px; }
  .hero-art { width: 75%; right: -20%; }
  .hero-copy { width: 69%; }
  .hero-proof { flex-wrap: wrap; }
  .hero-proof > span { flex: 0 0 31%; }
}
@media (max-width: 650px) {
  .site-header .header-shell { min-height: 63px; }
  .pse-wordmark { font-size: 18px; }
  .pse-compass { width: 37px; height: 37px; }
  .psg-hero, .hero-shell { min-height: 620px; }
  .hero-shell { padding: 24px 16px 17px; align-items: flex-start; }
  .hero-copy { width: 100%; padding: 5px 0px; }
  .psg-hero h1 { font-size: clamp(39px, 10vw, 57px); max-width: 460px; }
  .hero-kicker { font-size: 9px; }
  .hero-copy p { font-size: 17px; max-width: 350px; }
  .hero-proof { flex-wrap: wrap; gap: 5px; max-width: 100%; margin: 10px 0px 16px; }
  .hero-proof > span { flex: 1 1 30%; min-width: 90px; padding: 7px 5px; }
  .hero-proof i { font-size: 15px; }
  .hero-proof b { font-size: 10px; }
  .hero-art { width: 108%; height: 41%; right: -5%; top: auto; bottom: 0px; background-position: center center; background-size: cover; mask-image: linear-gradient(transparent 0%, rgb(0, 0, 0) 25%); }
  .section-title-row h2 { font-size: 24px; }
  .section-title-row > a { font-size: 11px; }
  .pick-grid, .pse-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; }
  .pick-card { padding: 13px 8px; min-height: 220px; }
  .pick-brand h3 { font-size: 15px; }
  .pick-card > p { font-size: 12px; }
  .pse-page-hero .pse-hero-grid { min-height: 440px; }
  .pse-hero-words { padding: 28px 0px 5px; }
  .pse-hero-words h1 { font-size: clamp(34px, 9vw, 47px); }
  .pse-hero-words p { font-size: 15px; }
  .pse-hero-illustration { height: 215px; margin-right: -15px; }
  .pse-hero-illustration img { mask-image: linear-gradient(transparent, rgb(0, 0, 0) 22%); }
  .pse-filter-bar { padding: 12px 10px; }
  .pse-filter-bar label { width: 100%; }
  .pse-platform-card { min-height: 220px; padding: 15px 10px; }
  .pse-platform-card h3 { font-size: 15px; }
  .pse-review-hero-row { min-height: 0px; }
  .pse-review-scenic { height: 193px; }
  .pse-guide-layout { gap: 14px; }
  .pse-guide-article { padding: 19px; }
  .site-footer .footer-shell { gap: 22px; padding-top: 29px; }
}
@media (max-width: 390px) {
  .psg-hero, .hero-shell { min-height: 635px; }
  .hero-actions a { font-size: 11px; padding: 11px; }
  .hero-proof > span { min-width: 90px; }
  .pick-grid, .pse-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  .header-start:hover, .pse-btn:hover, .pick-button:hover, .hero-primary:hover { transform: none; }
}
.pse-category-clarifier { color: rgb(85, 113, 126); font-size: 14px; margin: 0px 0px 20px; line-height: 1.5; }
:root { --wrap: 1188px; --cream: #fffaf1; --paper: #fffefa; --navy: #092f47; --teal: #087f8c; --coral: #f84d60; }
.site-header { background: rgb(255, 252, 245); }
.site-header .header-shell { min-height: 59px; gap: 14px; }
.pse-wordmark { font-size: 23px; }
#main-navigation a { font-size: 12px; }
.header-start { padding: 10px 14px; }
.psg-hero { min-height: 440px; background: linear-gradient(90deg, rgb(232, 246, 239) 0%, rgb(217, 241, 240) 58%, rgb(167, 217, 229) 100%); }
.hero-shell { min-height: 440px; padding-top: 28px; padding-bottom: 24px; }
.hero-art { top: 0px; right: 0px; width: 59%; height: 100%; background: url("assets/design/pse-home-clean.png") center 51% / cover no-repeat; opacity: 1; pointer-events: none; }
.hero-art::before { content: ""; position: absolute; inset: 0px; background: linear-gradient(90deg, rgb(232, 246, 239) 0%, rgba(232, 246, 239, 0.69) 12%, rgba(232, 246, 239, 0) 39%); pointer-events: none; }
.hero-copy { max-width: 605px; width: 54%; padding: 6px 0px; }
.psg-hero h1 { font-size: clamp(43px, 4.6vw, 66px); line-height: 1.05; letter-spacing: -0.047em; margin-bottom: 12px; }
.hero-copy p { font-size: 18px; line-height: 1.42; max-width: 380px; margin: 12px 0px; }
.hero-proof { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); max-width: 630px; gap: 5px; margin: 14px 0px 16px; }
.hero-proof > span { background: rgba(252, 255, 249, 0.85); border: 1px solid rgb(211, 231, 223); min-width: 0px; padding: 9px 6px; box-shadow: rgba(10, 73, 88, 0.07) 0px 2px 6px; }
.hero-proof i { font-size: 17px; }
.hero-proof b { font-size: 10px; line-height: 1.3; }
.hero-kicker { letter-spacing: 0.12em; font-size: 10px; margin: 0px 0px 14px; }
.hero-actions a { font-size: 13px; }
.top-picks { padding: 23px 0px 30px; background: rgb(255, 249, 239); }
.section-title-row { align-items: flex-end; }
.section-title-row h2 { font-size: 27px; margin-bottom: 3px; }
.section-title-row p { font-size: 13px; margin-bottom: 0px; }
.pick-grid { gap: 11px; }
.pick-card { min-height: 213px; padding: 13px 10px 12px; border-radius: 9px; }
.pick-logo { height: 57px; }
.pick-logo img { max-height: 48px; max-width: 122px; }
.pick-brand { gap: 3px; }
.pick-brand h3 { font-size: 16px; }
.pick-card > p { font-size: 12px; line-height: 1.35; min-height: 32px; margin: 7px 0px 10px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.pick-card .pick-button { padding: 10px 12px; margin-top: auto; font-size: 12px; min-height: 38px; }
.pick-bonus { margin: 8px 0px 0px; font-size: 11px; }
.pse-editorial-wordmark { display: inline-flex; justify-content: center; align-items: center; color: rgb(10, 82, 104); line-height: 1.1; font-weight: 900; font-size: 19px; letter-spacing: -0.04em; text-align: center; overflow-wrap: anywhere; max-width: 100%; padding: 3px 6px; }
.pick-logo .pse-editorial-wordmark { font-size: 21px; }
.pse-page-hero { background: linear-gradient(110deg, rgb(231, 248, 245) 0%, rgb(231, 248, 243) 42%, rgb(175, 220, 230) 100%); border-bottom: 3px solid rgb(233, 210, 176); }
.pse-hero-grid { min-height: 260px; grid-template-columns: minmax(0px, 1fr) minmax(0px, 0.95fr); gap: 0px; }
.pse-hero-words { padding: 22px 0px; max-width: 550px; }
.pse-hero-words h1 { font-size: clamp(37px, 4.3vw, 54px); line-height: 1.03; margin-bottom: 14px; letter-spacing: -0.055em; }
.pse-hero-words p { font-size: 15px; line-height: 1.4; max-width: 435px; }
.pse-hero-illustration { height: 260px; margin-right: 0px; }
.pse-hero-illustration img { object-fit: cover; object-position: center center; mask-image: linear-gradient(90deg, transparent 0%, rgb(0, 0, 0) 21%); }
.pse-hero-about .pse-hero-illustration img, .pse-hero-contact .pse-hero-illustration img, .pse-hero-faq .pse-hero-illustration img { object-fit: cover; object-position: right center; }
.pse-platform-card { min-height: 222px; padding: 17px 14px 14px; gap: 3px; }
.pse-platform-card .pse-platform-logo { height: 52px; }
.pse-platform-logo .pse-editorial-wordmark { font-size: 21px; }
.pse-platform-card h3 { font-size: 17px; margin: 3px 0px 7px; }
.pse-platform-card p { font-size: 12.5px; line-height: 1.42; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; min-height: 51px; margin: 5px 0px 15px; }
.pse-platform-card .pse-btn { min-height: 38px; margin-top: auto; }
.pse-card-grid { gap: 13px; padding-bottom: 30px; }
.pse-filter-bar { margin: 14px 0px 20px; min-height: 55px; }
.pse-comparison th { font-size: 12px; }
.pse-comparison td { font-size: 12px; line-height: 1.4; }
.pse-table-brand .pse-editorial-wordmark { font-size: 12px; padding: 0px; max-width: 108px; }
.pse-about-benefits, .pse-about-disclosure { max-width: 100%; }
.pse-about-benefits { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 12px; padding: 25px 0px; }
.pse-about-benefits article { flex-direction: column; padding: 16px; gap: 8px; }
.pse-about-benefits h2 { font-size: 16px; }
.pse-about-disclosure { padding: 21px 25px; }
.pse-contact-content { min-height: 240px; }
.pse-faq-list { max-width: 940px; }
.pse-guide-card-grid { gap: 13px; }
.pse-review-scenic { object-fit: cover; object-position: right center; }
.pse-guide-header-grid img { object-position: right center; }
.site-footer .footer-shell { padding-top: 26px; padding-bottom: 13px; gap: 22px; }
.footer-links { gap: 6px; }
@media (max-width: 1020px) {
  .psg-hero h1 { font-size: clamp(39px, 5.4vw, 54px); }
  .hero-copy { width: 58%; }
  .hero-art { width: 58%; }
}
@media (max-width: 850px) {
  .pse-about-benefits { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .hero-proof { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .hero-art { width: 56%; }
  .hero-copy { width: 62%; }
}
@media (max-width: 650px) {
  .psg-hero { min-height: 565px; }
  .hero-shell { min-height: 565px; padding: 24px 15px 10px; align-items: flex-start; }
  .hero-copy { width: 100%; }
  .hero-copy p { font-size: 16px; }
  .psg-hero h1 { font-size: clamp(36px, 9vw, 51px); max-width: 450px; }
  .hero-proof { grid-template-columns: repeat(2, minmax(0px, 1fr)); max-width: 360px; margin: 10px 0px 12px; }
  .hero-art { width: 100%; height: 43%; inset: auto 0px 0px; background-position: center 48%; background-size: cover; mask-image: linear-gradient(transparent, rgb(0, 0, 0) 26%); }
  .hero-art::before { display: none; }
  .hero-proof b { font-size: 11px; }
  .top-picks { padding: 21px 0px; }
  .section-title-row h2 { font-size: 22px; }
  .pick-grid, .pse-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .pick-card { min-height: 215px; padding: 11px 8px; }
  .pick-card > p { font-size: 11px; min-height: 30px; }
  .pse-page-hero .pse-hero-grid { min-height: 400px; grid-template-columns: 1fr; }
  .pse-hero-words { padding: 24px 0px 4px; }
  .pse-hero-words h1 { font-size: clamp(33px, 8vw, 44px); }
  .pse-hero-illustration { height: 200px; min-height: 200px; margin-right: -15px; overflow: hidden; }
  .pse-hero-illustration img { mask-image: linear-gradient(transparent 0%, rgb(0, 0, 0) 23%); }
  .pse-about-benefits { grid-template-columns: 1fr 1fr; }
  .pse-about-benefits article { padding: 13px; }
  .pse-platform-card { padding: 12px 8px; min-height: 208px; }
  .pse-platform-card p { font-size: 11px; min-height: 38px; }
  .pse-editorial-wordmark, .pick-logo .pse-editorial-wordmark { font-size: 16px; }
}
@media (max-width: 390px) {
  .hero-copy p { font-size: 15px; }
  .hero-proof > span { padding: 5px; }
  .hero-actions a { padding: 10px 12px; }
}
.pse-editorial-mark { display: inline-grid; place-items: center; width: 48px; height: 48px; flex: 0 0 auto; border-radius: 13px; background: linear-gradient(135deg, rgb(226, 244, 242), rgb(255, 255, 255)); color: rgb(17, 117, 139); border: 2px solid rgb(166, 216, 213); box-shadow: rgba(12, 70, 85, 0.086) 0px 2px 5px; font-size: 24px; font-weight: 900; line-height: 1; }
.pick-logo .pse-editorial-mark { width: 44px; height: 44px; }
.pse-table-brand .pse-editorial-mark { width: 26px; height: 26px; font-size: 14px; border-radius: 7px; }
:root { --wrap: 1190px; --navy: #082f49; --coral: #ff5067; --cream: #fffaf0; --line: #e7e4dc; --teal: #08697c; --paper: #fffefa; --shadow: 0 5px 14px rgba(29,61,75,.1); }
body { font-family: Nunito, Cabin, "Trebuchet MS", sans-serif; background: rgb(255, 250, 241); color: rgb(7, 46, 73); font-size: 15px; line-height: 1.45; }
h1, h2, h3 { letter-spacing: 0px; }
.site-header { background: rgb(255, 252, 246); border-bottom: 1px solid rgb(230, 239, 234); box-shadow: rgba(23, 78, 87, 0.082) 0px 2px 9px; }
.site-header .header-shell { max-width: 1200px; min-height: 65px; gap: 18px; }
.psg-brand { min-width: 240px; }
.pse-compass { background: transparent; width: 49px; height: 49px; margin-right: 7px; filter: drop-shadow(rgba(30, 72, 83, 0.17) 0px 1px 1px); }
.pse-wordmark { font: italic 800 25px / 1.12 Nunito, Cabin, sans-serif; letter-spacing: -0.055em; color: var(--navy); }
.pse-wordmark strong { color: rgb(255, 80, 92); }
#main-navigation { gap: 18px; }
#main-navigation a { font-family: Nunito, sans-serif; font-size: 12px; font-weight: 900; color: var(--navy); }
.header-search { max-width: 42px; min-width: 42px; height: 40px; width: 42px; padding: 4px; justify-content: center; transition: max-width 0.2s; border-radius: 50%; overflow: hidden; flex-shrink: 0; background: rgb(255, 255, 255); }
.header-search button { font-size: 26px; line-height: 1; width: 32px; height: 32px; flex: 0 0 auto; font-family: Nunito, sans-serif; }
.header-search input { width: 0px; opacity: 0; transition: opacity 0.2s; }
.header-search:focus-within { max-width: 190px; width: 190px; border-radius: 22px; justify-content: flex-start; padding: 4px 9px; }
.header-search:focus-within input { width: 142px; opacity: 1; }
.header-start { padding: 12px 18px; border-radius: 6px; background: var(--coral); font-weight: 900; font-size: 12px; box-shadow: rgba(255, 80, 99, 0.2) 0px 3px 7px; }
.header-start:hover, .pse-btn:hover, .pick-button:hover { background: rgb(239, 55, 82); }
.psg-hero, .pse-page-hero { background: linear-gradient(100deg, rgb(233, 249, 247) 0%, rgb(221, 242, 243) 49%, rgb(183, 223, 229) 100%); border-color: rgb(234, 223, 201); }
.psg-hero, .hero-shell { min-height: 512px; height: 512px; }
.hero-shell { max-width: 1190px; padding: 34px 18px; align-items: center; }
.hero-copy { max-width: 660px; width: 59%; padding: 0px 0px 2px; z-index: 3; }
.hero-kicker { font-size: 10px; letter-spacing: 0.16em; margin-bottom: 12px; color: rgb(11, 112, 135); font-weight: 900; }
.psg-hero h1, .pse-hero-words h1, .pse-review-identity h1, .pse-guide-header-grid h1 { font-family: Kalam, "Comic Neue", "Trebuchet MS", cursive; font-weight: 700; font-style: normal; color: rgb(8, 47, 73); text-shadow: none; letter-spacing: -0.047em; }
.psg-hero h1 { font-size: clamp(46px, 5vw, 67px); line-height: 1.02; margin: 0px 0px 14px; letter-spacing: -0.055em; max-width: 620px; }
.hero-copy p { font-size: 21px; line-height: 1.3; margin: 8px 0px 14px; max-width: 495px; }
.hero-art { right: -1%; left: auto; top: 0px; width: 70%; height: 100%; background: url("assets/design/pse-home-wide-sanitized.png") right center / cover no-repeat; opacity: 1; mask-image: none; pointer-events: none; }
.hero-art::before { display: block; content: ""; position: absolute; inset: 0px; background: linear-gradient(90deg, rgb(233, 249, 247) 0%, rgba(233, 249, 247, 0.85) 15%, rgba(233, 249, 247, 0) 45%); }
.hero-proof { display: flex; grid-template-columns: none; flex-wrap: nowrap; gap: 10px; max-width: 670px; margin: 17px 0px 19px; }
.hero-proof > span { flex: 0 1 31%; min-width: 0px; display: flex; gap: 8px; align-items: center; justify-content: center; background: rgba(255, 252, 245, 0.92); border: 1px solid rgb(222, 222, 209); border-radius: 6px; padding: 10px 9px; box-shadow: rgba(21, 63, 70, 0.063) 0px 2px 5px; }
.hero-proof i { font-size: 18px; font-weight: 900; color: rgb(0, 137, 155); }
.hero-proof b { font-size: 12px; font-weight: 900; line-height: 1.25; white-space: normal; }
.hero-actions { gap: 11px; margin-top: 0px; }
.hero-primary { border-radius: 6px; padding: 14px 21px; font-size: 14px; font-weight: 900; min-height: 47px; }
.hero-secondary { border-radius: 6px; padding: 13px 17px; font-size: 14px; min-height: 47px; }
.top-picks { background: rgb(255, 250, 240); padding: 26px 0px; }
.section-title-row { margin-bottom: 16px; align-items: flex-end; }
.section-title-row h2 { font-size: 28px; font-weight: 900; letter-spacing: -0.035em; }
.section-title-row p { font-size: 13px; color: rgb(71, 103, 118); margin-top: 3px; }
.section-title-row > a { font-size: 13px; color: rgb(255, 76, 96); font-weight: 800; text-decoration: none; }
.pick-grid { display: grid; grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 13px; }
.pick-card { padding: 19px 12px 13px; border-radius: 10px; min-height: 286px; background: rgb(255, 255, 255); border: 1px solid rgb(235, 230, 223); box-shadow: rgba(18, 60, 76, 0.075) 0px 4px 12px; }
.pick-brand { gap: 6px; margin-bottom: 5px; }
.pick-logo { height: 72px; }
.pick-logo img { max-width: 142px; max-height: 56px; }
.pick-brand h3 { font-size: 16px; letter-spacing: -0.018em; font-weight: 900; }
.pick-card > p, .pick-card > p.pse-pick-summary { font-size: 12.5px; line-height: 1.4; min-height: 56px; max-height: none; display: block; -webkit-line-clamp: unset; overflow: visible; margin: 5px 0px 10px; color: rgb(32, 67, 88); flex: 1 1 0%; }
.pick-card .pick-button { margin-top: auto; background: var(--coral); border-radius: 6px; min-height: 43px; padding: 9px 8px; color: rgb(255, 255, 255); box-shadow: rgba(255, 80, 96, 0.176) 0px 4px 6px; font-size: 13px; font-weight: 900; }
.pick-bonus { font-size: 11px; color: rgb(11, 116, 134); margin: 11px 0px 0px; font-weight: 700; text-decoration: none; }
.pse-home-more { background: rgb(224, 247, 252); border-top: 0px; min-height: 105px; position: relative; display: flex; align-items: center; justify-content: center; isolation: isolate; padding: 18px 0px; }
.pse-home-more::before { content: ""; position: absolute; inset: 0px; background: url("assets/design/pse-home-banner-captionless.png") center 50% / cover no-repeat; opacity: 1; z-index: 0; }
.pse-home-more::after { content: ""; position: absolute; inset: 0px; pointer-events: none; background: linear-gradient(90deg, transparent 15%, rgb(229, 247, 240) 32%, rgb(229, 247, 240) 77%, transparent 92%); z-index: 1; }
.pse-home-more .home-shell { position: relative; z-index: 2; }
.pse-home-more p { font-size: 14px; font-weight: 800; text-shadow: rgb(255, 255, 255) 0px 1px 5px; }
.pse-home-more a { font-weight: 900; color: rgb(7, 62, 88); text-decoration: underline; }
.pse-page-hero { border-bottom: 3px solid rgb(234, 217, 189); }
.pse-hero-grid { min-height: 345px; grid-template-columns: minmax(0px, 1.03fr) minmax(0px, 0.97fr); max-width: 1190px; }
.pse-hero-words { padding: 20px 0px; max-width: 600px; }
.pse-hero-words h1 { font-size: clamp(43px, 4.8vw, 64px); letter-spacing: -0.045em; line-height: 1.06; margin: 0px 0px 15px; max-width: 580px; }
.pse-hero-words p { font-size: 16px; max-width: 490px; line-height: 1.48; color: rgb(21, 60, 83); margin: 0px; }
.pse-hero-words h1 span { color: rgb(0, 108, 126); }
.pse-hero-illustration { height: 345px; position: relative; margin-right: -22px; overflow: hidden; }
.pse-hero-illustration img { object-fit: cover; object-position: right center; mask-image: linear-gradient(90deg, transparent 0%, rgb(0, 0, 0) 24%); }
.pse-page { background: rgb(255, 249, 237); }
.pse-wrap { max-width: 1190px; }
.pse-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 14px; padding: 7px 0px 53px; }
.pse-platform-card { padding: 18px 18px 15px; min-height: 270px; border: 1px solid rgb(231, 227, 221); background: rgb(255, 255, 255); box-shadow: rgba(18, 64, 74, 0.067) 0px 3px 11px; border-radius: 11px; }
.pse-platform-card .pse-platform-logo { height: 68px; width: 100%; }
.pse-platform-logo img { max-width: 145px; max-height: 56px; object-fit: contain; }
.pse-platform-card h3 { font-size: 18px; line-height: 1.22; margin: 4px 0px 9px; font-weight: 900; }
.pse-platform-card p, .pse-platform-card p.pse-platform-benefits { font-size: 13px; line-height: 1.34; min-height: 56px; max-width: 295px; max-height: none; display: block; overflow: visible; margin: 2px auto 12px; color: rgb(27, 69, 88); flex: 1 1 0%; }
.pse-platform-card .pse-btn { margin-top: auto; width: 91%; min-width: 0px; min-height: 43px; font-size: 13px; border-radius: 6px; }
.pse-review-link { display: block; text-decoration: none; color: rgb(8, 110, 130); font-size: 11px; font-weight: 700; margin: 12px 0px 0px; }
.pse-filter-bar { background: rgb(255, 253, 248); border: 1px solid rgb(225, 232, 224); border-radius: 12px; margin: 17px 0px 22px; min-height: 60px; padding: 12px 14px; box-shadow: rgba(22, 67, 93, 0.04) 0px 4px 9px; }
.pse-filter-bar a, .pse-filter-bar span { font-size: 12px; border: 1px solid rgb(212, 229, 230); background: rgb(243, 249, 249); border-radius: 7px; padding: 10px 14px; color: rgb(8, 59, 85); }
.pse-country-selector { display: flex; align-items: center; gap: 11px; flex-wrap: wrap; border: 1px solid rgb(217, 231, 224); border-radius: 12px; background: rgb(255, 253, 247); padding: 12px 16px; margin: 17px 0px 20px; box-shadow: rgba(20, 80, 90, 0.063) 0px 2px 6px; min-height: 62px; }
.pse-country-selector span { font-weight: 900; font-size: 13px; margin-right: 5px; }
.pse-country-selector a { display: inline-block; padding: 10px 16px; background: rgb(255, 255, 255); border: 1px solid rgb(216, 229, 229); border-radius: 6px; font-size: 12px; font-weight: 800; text-decoration: none; }
.pse-country-selector .pse-country-unavailable { display: inline-block; padding: 10px 16px; background: rgb(245, 246, 242); border: 1px solid rgb(216, 229, 229); border-radius: 6px; color: rgb(88, 114, 125); font-size: 12px; font-weight: 800; margin-right: 0px; cursor: not-allowed; }
.pse-country-selector a.is-active { background: var(--coral); border-color: var(--coral); color: rgb(255, 255, 255); box-shadow: rgba(244, 90, 99, 0.32) 0px 3px 7px; }
.pse-guides-archive .pse-hero-grid { min-height: 360px; }
.pse-guides-archive .pse-hero-illustration { height: 360px; }
.pse-guides-archive .pse-wrap { padding-top: 17px; }
.pse-section-heading { font-size: 26px; letter-spacing: -0.03em; margin: 8px 0px 18px; font-weight: 900; }
.pse-guide-card-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 15px; padding-bottom: 24px; }
.pse-guide-card { padding: 20px 17px 18px; min-height: 306px; align-items: center; text-align: center; border-radius: 10px; box-shadow: rgba(19, 65, 74, 0.07) 0px 3px 12px; background: rgb(255, 255, 255); border: 1px solid rgb(230, 225, 217); }
.pse-guide-thumbnail { display: block; width: 100%; height: 142px; object-fit: cover; object-position: center center; border-radius: 9px; margin-bottom: 11px; }
.pse-guide-card h3 { font-size: 19px; line-height: 1.17; margin: 2px 0px 7px; font-weight: 900; }
.pse-guide-card p { font-size: 14px; line-height: 1.35; max-width: 240px; min-height: 39px; margin: 0px 0px 15px; flex: 1 1 0%; }
.pse-guide-card .pse-btn { align-self: stretch; max-width: 235px; width: 100%; font-size: 13px; min-height: 43px; }
.pse-guides-bottom-banner { display: block; background: url("assets/design/pse-approved-guides-banner.png") center center / 100% 100% no-repeat; height: 119px; max-width: 1200px; margin: 5px auto 17px; border-radius: 4px; }
.pse-tips-grid { gap: 15px; padding: 29px 0px 54px; grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.pse-tips-grid article { min-height: 140px; display: grid; grid-template-columns: 43px minmax(0px, 1fr); grid-template-rows: auto 1fr; gap: 2px 10px; align-content: center; border-radius: 12px; padding: 21px 18px; background: rgb(255, 255, 255); }
.pse-tips-grid span { grid-area: 1 / 1 / -1; width: 40px; height: 40px; font-size: 16px; margin-top: 1px; background: rgb(223, 246, 244); border-radius: 50%; color: rgb(8, 122, 136); }
.pse-tips-grid h2 { grid-column: 2; font-size: 18px; margin: 2px 0px 6px; line-height: 1.2; font-weight: 900; }
.pse-tips-grid p { grid-column: 2; font-size: 12px; line-height: 1.43; margin: 0px; }
.pse-about-benefits { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); max-width: 100%; padding: 26px 0px 17px; gap: 14px; }
.pse-about-benefits article { display: flex; flex-direction: row; align-items: flex-start; min-height: 116px; padding: 21px 18px; border: 1px solid rgb(225, 232, 228); border-radius: 10px; gap: 14px; background: rgb(255, 255, 255); }
.pse-about-benefits article > span { flex: 0 0 auto; width: 48px; height: 48px; min-width: 48px; display: grid; place-items: center; color: rgb(224, 163, 21); background: rgb(222, 246, 238); border-radius: 50%; font-size: 23px; }
.pse-about-benefits h2 { font-size: 18px; margin: 1px 0px 6px; line-height: 1.2; font-weight: 900; }
.pse-about-benefits p { font-size: 13px; line-height: 1.45; }
.pse-about-disclosure { background: rgb(224, 246, 236); max-width: 100%; padding: 24px 27px 31px; border-radius: 10px; margin: 0px 0px 44px; }
.pse-about-disclosure h2 { font-size: 21px; margin: 0px 0px 16px; font-weight: 900; }
.pse-about-disclosure p { font-size: 14px; line-height: 1.52; margin: 0px 0px 15px; }
.pse-contact-page { background: linear-gradient(rgb(233, 251, 249) 0%, rgb(247, 252, 244) 60%, rgb(255, 249, 238) 100%); }
.pse-contact-main { padding-top: 28px; padding-bottom: 64px; max-width: 1190px; }
.pse-contact-content { display: grid; grid-template-columns: 72px 1fr; gap: 22px; max-width: 100%; min-height: 295px; padding: 30px 34px; background: rgb(255, 253, 250); border: 1px solid rgb(220, 233, 229); border-radius: 14px; box-shadow: rgba(21, 81, 101, 0.07) 0px 4px 15px; }
.pse-contact-icon { display: grid; place-items: center; background: rgb(223, 248, 239); border-radius: 50%; width: 62px; height: 62px; color: rgb(9, 110, 136); font-size: 31px; }
.pse-contact-copy h2 { font-size: 24px; margin: 0px 0px 13px; font-weight: 900; }
.pse-contact-copy > p { font-size: 16px; max-width: 560px; line-height: 1.48; }
.pse-contact-copy .pse-btn { min-width: 255px; min-height: 48px; border-radius: 6px; font-size: 15px; font-weight: 900; margin: 8px 0px 6px; }
.pse-contact-copy .pse-disclosure { font-size: 12px; color: rgb(68, 101, 120); margin: 0px; }
.pse-faq-list { max-width: 1170px; margin: 24px auto 59px; }
.pse-faq-list details { border: 1px solid rgb(228, 235, 229); border-radius: 8px; margin: 8px 0px; background: rgb(255, 255, 255); box-shadow: rgba(20, 80, 105, 0.05) 0px 2px 8px; }
.pse-faq-list summary { padding: 13px 18px; font-size: 15px; line-height: 1.2; min-height: 50px; font-weight: 900; gap: 8px; }
.pse-faq-list summary::after { width: 28px; height: 28px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; background: rgb(236, 250, 244); font-size: 19px; color: rgb(8, 125, 132); }
.pse-faq-list details p { padding: 4px 21px 19px; font-size: 14px; }
.pse-review-hero { background: linear-gradient(105deg, rgb(236, 250, 248), rgb(194, 233, 239)); }
.pse-review-identity h1 { font-size: clamp(34px, 4.5vw, 56px); line-height: 1.05; }
.pse-review-tabs a { font-weight: 800; }
.pse-review-overview aside { background: rgb(239, 251, 241); }
.pse-comparison td { overflow-wrap: break-word; }
.pse-comparison .pse-btn { font-weight: 900; }
.site-footer { position: relative; background: rgb(6, 47, 73); border-top: none; color: rgb(255, 255, 255); padding-top: 18px; }
.site-footer::before { content: ""; position: absolute; z-index: 1; top: -25px; left: 0px; right: 0px; height: 30px; background: url("assets/design/pse-wave-edge.svg") center bottom / 100% 100% no-repeat; pointer-events: none; }
.site-footer .footer-shell { max-width: 1190px; grid-template-columns: 1.28fr 1fr 1.12fr 1.3fr; gap: 25px; padding-top: 25px; padding-bottom: 12px; }
.site-footer .pse-wordmark { font-size: 23px; color: rgb(255, 255, 255); }
.site-footer .pse-compass { width: 42px; height: 42px; }
.site-footer .pse-wordmark strong { color: rgb(255, 107, 114); }
.footer-brand p { font-size: 10px; letter-spacing: 0.04em; margin: 14px 0px 0px; color: rgb(226, 245, 248); }
.footer-links, .site-footer .footer-links { display: flex; flex-direction: column; gap: 6px; }
.footer-links strong, .footer-trust strong { font-size: 14px; margin: 1px 0px 8px; font-weight: 900; }
.footer-links a { font-size: 12px; line-height: 1.3; font-weight: 700; }
.footer-trust p { font-size: 12px; line-height: 1.42; max-width: 245px; }
.footer-bottom { border-top: 1px solid rgba(52, 97, 122, 0.376); margin-top: 13px; padding: 14px 0px 5px; font-size: 11px; color: rgb(237, 248, 250); }
.footer-bottom a { color: rgb(255, 255, 255); }
@media (max-width: 1100px) {
  .psg-brand { min-width: 205px; }
  .site-header .header-shell { gap: 10px; }
  #main-navigation { gap: 11px; }
  .pse-wordmark { font-size: 21px; }
  .hero-proof b { font-size: 11px; }
}
@media (max-width: 850px) {
  .header-search { display: none; }
  .mobile-menu-toggle { display: flex; }
  .hero-copy { width: 69%; }
  .hero-art { width: 70%; right: -17%; }
  .hero-proof { flex-wrap: wrap; }
  .hero-proof > span { flex: 1 1 29%; }
  .pick-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .pse-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .pse-about-benefits { grid-template-columns: 1fr 1fr; }
  .pse-guide-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .site-footer .footer-shell { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 650px) {
  .site-header .header-shell { min-height: 61px; }
  .psg-brand { min-width: 0px; }
  .pse-wordmark { font-size: 18px; }
  .pse-compass { width: 38px; height: 38px; }
  .header-start { padding: 10px 9px; font-size: 10px; }
  .psg-hero, .hero-shell { height: auto; min-height: 625px; }
  .hero-shell { align-items: flex-start; padding: 22px 16px 290px; }
  .hero-copy { width: 100%; max-width: 100%; }
  .psg-hero h1 { font-size: clamp(40px, 10vw, 56px); max-width: 500px; }
  .hero-copy p { font-size: 16px; }
  .hero-kicker { font-size: 8px; letter-spacing: 0.1em; }
  .hero-proof { flex-wrap: wrap; gap: 6px; margin: 13px 0px; }
  .hero-proof > span { flex: 1 1 30%; padding: 7px 4px; }
  .hero-proof b { font-size: 10px; white-space: normal; }
  .hero-proof i { font-size: 15px; }
  .hero-art { width: 100%; height: 290px; inset: auto 0px 0px; background-size: cover; background-position: right 60%; mask-image: linear-gradient(transparent 0%, rgb(0, 0, 0) 20%); }
  .hero-art::before { display: none; }
  .pick-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; }
  .pick-card { min-height: 283px; padding: 12px 8px; }
  .pick-brand h3 { font-size: 14px; }
  .pick-card > p.pse-pick-summary { font-size: 11px; min-height: 52px; }
  .pick-logo { height: 64px; }
  .pick-button { font-size: 11px; }
  .pse-home-more { min-height: 90px; }
  .section-title-row h2 { font-size: 22px; }
  .section-title-row > a { font-size: 11px; }
  .pse-hero-grid, .pse-page-hero .pse-hero-grid { min-height: 440px; display: flex; flex-direction: column; align-items: stretch; }
  .pse-hero-words { padding: 24px 0px 5px; }
  .pse-hero-words h1 { font-size: clamp(37px, 10vw, 49px); }
  .pse-hero-words p { font-size: 14px; }
  .pse-hero-illustration, .pse-guides-archive .pse-hero-illustration { height: 220px; min-height: 220px; margin: 0px -15px; align-self: stretch; overflow: hidden; }
  .pse-hero-illustration img { width: 100%; mask-image: linear-gradient(transparent 0%, rgb(0, 0, 0) 24%); }
  .pse-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; }
  .pse-platform-card { min-height: 275px; padding: 15px 9px; }
  .pse-platform-card h3 { font-size: 15px; }
  .pse-platform-card p.pse-platform-benefits { font-size: 11px; min-height: 59px; }
  .pse-platform-card .pse-btn { width: 100%; font-size: 11px; }
  .pse-review-link { font-size: 10px; }
  .pse-country-selector { gap: 6px; }
  .pse-country-selector span { width: 100%; }
  .pse-country-selector a { padding: 8px 9px; font-size: 11px; }
  .pse-guide-card-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; }
  .pse-guide-card { min-height: 260px; padding: 11px 9px; }
  .pse-guide-thumbnail { height: 95px; }
  .pse-guide-card h3 { font-size: 15px; }
  .pse-guide-card p { font-size: 11px; }
  .pse-guide-card .pse-btn { font-size: 11px; }
  .pse-tips-grid { grid-template-columns: 1fr; gap: 10px; }
  .pse-about-benefits { grid-template-columns: 1fr; gap: 10px; }
  .pse-about-benefits article { min-height: 100px; }
  .pse-contact-main { padding-top: 20px; padding-bottom: 49px; }
  .pse-contact-content { grid-template-columns: 1fr; gap: 8px; padding: 23px 19px; }
  .pse-contact-icon { width: 52px; height: 52px; }
  .pse-contact-copy h2 { font-size: 21px; }
  .pse-contact-copy .pse-btn { min-width: 0px; width: 100%; }
  .site-footer .footer-shell { grid-template-columns: 1fr 1fr; gap: 24px; }
  .site-footer .footer-brand, .site-footer .footer-trust { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; align-items: flex-start; gap: 10px; }
}
@media (max-width: 385px) {
  .header-start { display: none; }
  .pick-grid, .pse-card-grid { grid-template-columns: 1fr; }
  .pse-guide-card-grid { grid-template-columns: 1fr; }
  .hero-proof > span { flex-basis: 48%; }
}
.psg-hero, .hero-shell { min-height: 505px; height: 505px; }
.hero-copy { width: 57%; max-width: 625px; padding-left: 4px; }
.hero-kicker { white-space: normal; max-width: 580px; }
.hero-proof { max-width: 615px; }
.hero-actions .hero-primary, .hero-actions .hero-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.pick-logo .pse-editorial-wordmark, .pse-platform-card .pse-platform-logo .pse-editorial-wordmark { display: inline-flex; align-items: center; justify-content: center; background: rgb(251, 254, 254); border: 1px solid rgb(203, 223, 235); border-radius: 9px; color: rgb(11, 56, 86); font-size: 12px; font-weight: 900; padding: 5px 9px; width: min(158px, 91%); min-height: 50px; letter-spacing: 0px; line-height: 1.15; overflow-wrap: anywhere; text-align: center; }
.pick-logo .pse-editorial-wordmark { min-height: 47px; width: 95%; max-width: 157px; }
.pick-logo img, .pse-platform-card .pse-platform-logo img { object-fit: contain; max-width: 145px; max-height: 58px; }
.pick-card .pick-rating, .pick-card .pick-highlight { display: none; }
.pick-card .pick-brand { margin: 0px 0px 5px; }
.pick-card .pick-logo { height: 70px; }
.pick-brand h3 { line-height: 1.22; }
.pick-card .pick-button { min-height: 39px; }
.pse-platform-card .pse-platform-logo .pse-editorial-mark { width: 60px; height: 53px; border-radius: 8px; }
.pse-platform-card .pse-platform-logo .pse-editorial-wordmark { max-width: 160px; }
.pse-platform-card .pse-review-link { margin-top: 9px; }
.pse-listing-page .pse-directory-navigation { margin-bottom: 11px; min-height: 58px; }
.pse-listing-page .pse-directory-filter-form { margin-top: 0px; margin-bottom: 19px; min-height: 61px; }
.pse-listing-page .pse-directory-filter-form .pse-market-label { background: rgb(239, 250, 249); border: 1px solid rgb(212, 232, 228); border-radius: 7px; padding: 10px 12px; }
.pse-directory-filter-form label { font-size: 12px; font-weight: 800; display: inline-flex; align-items: center; gap: 8px; }
.pse-directory-filter-form select { font-size: 12px; min-width: 150px; padding: 9px; background: rgb(255, 255, 255); border: 1px solid rgb(220, 231, 230); border-radius: 6px; }
.pse-directory-filter-form button { background: rgb(255, 80, 103); color: white; border: 0px; border-radius: 7px; min-height: 40px; padding: 9px 17px; font-weight: 900; font-size: 12px; }
.pse-compare-page .pse-table-scroll { overflow-x: auto; }
.pse-compare-page .pse-comparison { table-layout: fixed; }
.pse-compare-page .pse-comparison th:nth-child(1) { width: 4%; }
.pse-compare-page .pse-comparison th:nth-child(2) { width: 17%; }
.pse-compare-page .pse-comparison th:nth-child(3) { width: 9%; }
.pse-compare-page .pse-comparison th:nth-child(4) { width: 20%; }
.pse-compare-page .pse-comparison th:nth-child(5) { width: 20%; }
.pse-compare-page .pse-comparison th:nth-child(6) { width: 22%; }
.pse-compare-page .pse-comparison th:nth-child(7) { width: 8%; }
.pse-compare-page .pse-comparison td { font-size: 12px; line-height: 1.45; vertical-align: middle; overflow-wrap: anywhere; padding: 11px 8px; }
.pse-compare-page .pse-comparison td .pse-editorial-wordmark { font-size: 10px; font-weight: 900; max-width: 86px; }
.pse-compare-page .pse-table-brand { gap: 7px; }
.pse-compare-page .pse-comparison .pse-btn { min-width: 0px; padding: 8px 10px; white-space: nowrap; font-size: 12px; }
.pse-hero-country .pse-hero-illustration img { object-position: right center; mask-image: linear-gradient(90deg, transparent 0%, rgb(0, 0, 0) 27%); }
.pse-country-page .pse-card-grid { padding-top: 3px; }
.pse-guides-archive .pse-guide-thumbnail { height: 140px; object-fit: cover; }
.pse-guides-archive .pse-guide-card { min-height: 294px; }
.pse-tips-page .pse-tips-grid article { padding: 22px 18px; min-height: 142px; }
@media (max-width: 1100px) {
  .pse-directory-filter-form label select { min-width: 125px; }
}
@media (max-width: 850px) {
  .psg-hero, .hero-shell { height: auto; min-height: 510px; }
  .pse-compare-page .pse-comparison { min-width: 810px; table-layout: fixed; }
}
@media (max-width: 650px) {
  .psg-hero, .hero-shell { min-height: 625px; height: auto; }
  .hero-copy { width: 100%; max-width: 100%; }
  .hero-art { background-position: right center; background-size: cover; }
  .pse-listing-page .pse-directory-filter-form label { flex: 1 1 100%; justify-content: space-between; }
  .pse-directory-filter-form select { width: min(210px, 64%); min-width: 0px; }
  .pse-directory-filter-form button { width: 100%; }
  .pse-platform-card { min-height: 280px; }
  .pse-hero-country .pse-hero-illustration img { object-fit: cover; object-position: right center; }
}
.header-search.is-open { max-width: 200px; width: 200px; border-radius: 22px; justify-content: flex-start; padding: 4px 9px; }
.header-search.is-open input { width: 140px; opacity: 1; }
.header-search button svg { vertical-align: middle; display: block; margin: auto; }
@media (max-width: 650px) {
  .site-header .header-search { display: none; }
}
.pse-directory-controls { border: 1px solid rgb(220, 232, 230); background: rgb(255, 253, 248); border-radius: 11px; box-shadow: rgba(18, 59, 75, 0.05) 0px 3px 10px; margin: 17px 0px 20px; padding: 12px 14px; }
.pse-listing-page .pse-directory-controls .pse-directory-navigation, .pse-listing-page .pse-directory-controls .pse-directory-filter-form { margin: 0px; min-height: 0px; border: 0px; box-shadow: none; background: transparent; padding: 0px; }
.pse-listing-page .pse-directory-controls .pse-directory-navigation { padding-bottom: 12px; }
.pse-listing-page .pse-directory-controls .pse-directory-filter-form { padding-top: 2px; }
.pse-hero-listing .pse-hero-illustration img { object-fit: contain; object-position: right center; }
.pse-hero-tips .pse-hero-illustration img { object-fit: contain; object-position: right center; }
@media (max-width: 650px) {
  .pse-directory-controls { padding: 12px 9px; }
  .pse-hero-listing .pse-hero-illustration img, .pse-hero-tips .pse-hero-illustration img { object-fit: contain; object-position: right bottom; }
}
.pse-tips-page .pse-tips-grid article { min-height: 137px; padding: 19px 18px; }
.pse-tips-page .pse-tips-grid article h2 { font-size: 18px; font-weight: 800; }
.pse-tips-page .pse-tips-grid article span { background: rgb(232, 248, 238); color: rgb(6, 120, 139); }
.pick-logo .pse-editorial-provider-graphic, .pse-platform-card .pse-platform-logo .pse-editorial-provider-graphic { display: block; object-fit: contain; width: 155px; max-width: 90%; height: 54px; max-height: 54px; }
.pse-compare-page .pse-table-brand .pse-editorial-provider-graphic { width: 66px; max-width: 66px; max-height: 25px; object-fit: contain; }
.sst-home .psg-hero { min-height: 565px; height: auto; background: linear-gradient(110deg, rgb(231, 248, 246) 0%, rgb(227, 246, 244) 38%, rgb(206, 234, 240) 80%, rgb(187, 222, 234) 100%); border-bottom: 1px solid rgb(232, 228, 213); isolation: isolate; }
.sst-home .hero-shell { height: 565px; min-height: 565px; padding: 39px 22px 38px; max-width: 1190px; align-items: center; }
.sst-home .hero-copy { width: 58%; max-width: 700px; padding-left: 0px; z-index: 3; }
.sst-home .hero-kicker { font-size: 10.5px; letter-spacing: 0.15em; color: rgb(0, 107, 132); margin-bottom: 11px; font-weight: 900; }
.sst-home .psg-hero h1 { font-size: clamp(55px, 5.9vw, 78px); line-height: 0.96; max-width: 695px; letter-spacing: -0.052em; margin: 4px 0px 17px; font-weight: 700; }
.sst-home .hero-copy p { font-size: 21px; line-height: 1.33; margin: 17px 0px; max-width: 475px; }
.sst-home .hero-art { inset: 0px 0px 0px auto; width: 78%; height: 100%; background-image: url("assets/design/pse-home-wide-sanitized.png"); background-repeat: no-repeat; background-position: right center; background-size: auto 100%; opacity: 1; mask-image: none; z-index: 1; }
.sst-home .hero-art::before { content: ""; display: block; position: absolute; inset: 0px; background: linear-gradient(90deg, rgb(231, 248, 246) 0%, rgba(231, 248, 246, 0.98) 13%, rgba(231, 248, 246, 0.94) 27%, rgba(231, 248, 246, 0.72) 42%, rgba(231, 248, 246, 0.15) 65%, transparent 82%); }
.sst-home .hero-proof { max-width: 670px; gap: 11px; margin: 15px 0px 20px; }
.sst-home .hero-proof > span { min-height: 49px; padding: 10px 9px; background: rgba(255, 253, 247, 0.937); box-shadow: rgba(22, 69, 91, 0.09) 0px 3px 8px; flex: 0 1 31%; }
.sst-home .hero-proof b { font-size: 13px; letter-spacing: -0.01em; }
.sst-home .hero-proof i { font-size: 21px; color: rgb(0, 138, 158); }
.sst-home .hero-actions { gap: 13px; }
.sst-home .hero-primary { min-height: 51px; padding: 14px 24px; font-size: 14px; background: linear-gradient(rgb(255, 98, 117), rgb(250, 69, 96)); }
.sst-home .hero-secondary { min-height: 51px; padding: 14px 21px; font-size: 14px; }
.sst-home .top-picks { padding: 24px 0px 30px; background: rgb(255, 251, 242); }
.sst-home .section-title-row { margin-bottom: 18px; }
.sst-home .section-title-row h2 { font-size: 29px; line-height: 1.14; font-weight: 900; }
.sst-home .section-title-row p { font-size: 14px; margin-top: 6px; }
.sst-home .section-title-row > a { font-size: 13px; font-weight: 800; }
.sst-home .pick-grid { gap: 14px; grid-template-columns: repeat(5, minmax(0px, 1fr)); }
.sst-home .pick-card { min-height: 334px; padding: 23px 13px 15px; border-radius: 10px; background: rgb(255, 255, 255); border: 1px solid rgb(234, 233, 228); box-shadow: rgba(23, 62, 80, 0.082) 0px 5px 12px; }
.sst-home .pick-brand { gap: 9px; margin: 0px 0px 8px; }
.sst-home .pick-card .pick-logo { height: 87px; display: flex; align-items: center; justify-content: center; }
.sst-home .pick-logo img { object-fit: contain; max-height: 76px; max-width: 88px; width: auto; height: auto; }
.sst-home .pick-logo img.pse-approved-icon { max-height: 72px; max-width: 72px; }
.sst-home .pick-card .pick-logo .pse-editorial-provider-graphic { max-width: 75px; max-height: 70px; }
.sst-home .pick-brand h3 { font-size: 17px; font-weight: 900; line-height: 1.2; margin: 0px; }
.sst-home .pick-card > p.pse-pick-summary { font-size: 13.5px; line-height: 1.42; flex: 1 1 0%; margin: 4px auto 13px; max-width: 220px; min-height: 77px; text-align: center; color: rgb(36, 72, 93); overflow: visible; }
.sst-home .pick-card .pick-button { min-height: 44px; font-size: 13px; background: linear-gradient(rgb(255, 100, 118), rgb(248, 70, 97)); margin-top: auto; border-radius: 6px; padding: 10px 6px; }
.sst-home .pick-bonus { font-size: 12px; margin: 11px 0px 0px; }
.sst-home .pse-home-more { height: 154px; min-height: 154px; padding: 16px 0px; border: 0px; background: rgb(216, 243, 246); position: relative; }
.sst-home .pse-home-more::before { background: url("assets/design/pse-home-banner-captionless.png") center center / 100% 100% no-repeat; opacity: 1; }
.sst-home .pse-home-more::after { background: linear-gradient(90deg, transparent 0%, rgba(230, 251, 244, 0.753) 32%, rgba(230, 251, 244, 0.6) 68%, transparent 100%); }
.sst-home .pse-home-more p { font-size: 15px; text-shadow: rgba(255, 255, 255, 0.667) 0px 1px 4px; }
.sst-home .pse-home-more .home-shell { z-index: 2; }
@media (max-width: 1100px) {
  .sst-home .hero-shell { height: 540px; min-height: 540px; }
  .sst-home .psg-hero { min-height: 540px; }
  .sst-home .hero-copy { width: 60%; }
  .sst-home .psg-hero h1 { font-size: clamp(52px, 6vw, 72px); }
  .sst-home .hero-proof b { font-size: 11px; }
  .sst-home .pick-card { min-height: 310px; }
  .sst-home .pick-card > p.pse-pick-summary { font-size: 12px; }
}
@media (max-width: 850px) {
  .sst-home .hero-shell { height: 525px; min-height: 525px; }
  .sst-home .hero-copy { width: 70%; }
  .sst-home .hero-art { width: 79%; right: -12%; }
  .sst-home .hero-proof { flex-wrap: wrap; }
  .sst-home .hero-proof > span { min-width: 0px; flex: 0 0 30%; }
  .sst-home .pick-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .sst-home .pick-card { min-height: 310px; }
  .sst-home .pse-home-more { height: 132px; min-height: 132px; }
}
@media (max-width: 650px) {
  .sst-home .psg-hero { min-height: 665px; }
  .sst-home .hero-shell { height: auto; min-height: 665px; align-items: flex-start; padding: 22px 16px 282px; }
  .sst-home .hero-copy { width: 100%; max-width: 100%; }
  .sst-home .psg-hero h1 { font-size: clamp(39px, 10vw, 59px); }
  .sst-home .hero-copy p { font-size: 17px; }
  .sst-home .hero-kicker { font-size: 8px; }
  .sst-home .hero-art { inset: auto 0px 0px; width: 100%; height: 286px; background-size: auto 100%; background-position: right center; }
  .sst-home .hero-art::before { background: linear-gradient(rgb(231, 248, 246), transparent 48%); }
  .sst-home .hero-proof { gap: 6px; }
  .sst-home .hero-proof > span { flex: 1 1 30%; min-height: 38px; padding: 7px 4px; }
  .sst-home .hero-proof b { font-size: 10px; }
  .sst-home .hero-proof i { font-size: 15px; }
  .sst-home .hero-primary, .sst-home .hero-secondary { font-size: 12px; padding: 11px; }
  .sst-home .pick-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; }
  .sst-home .pick-card { min-height: 295px; padding: 13px 9px; }
  .sst-home .pick-card .pick-logo { height: 65px; }
  .sst-home .pick-logo img.pse-approved-icon { max-height: 59px; max-width: 59px; }
  .sst-home .pick-brand h3 { font-size: 15px; }
  .sst-home .pick-card > p.pse-pick-summary { font-size: 11px; min-height: 63px; }
  .sst-home .pse-home-more { height: 110px; min-height: 110px; }
}
@media (max-width: 385px) {
  .sst-home .pick-grid { grid-template-columns: 1fr; }
  .sst-home .hero-proof > span { flex-basis: 46%; }
}
@media (min-width: 851px) {
  body:has(.sst-home) .site-header .header-shell { min-height: 86px; }
  body:has(.sst-home) .site-header .pse-compass { width: 58px; height: 58px; }
  body:has(.sst-home) .site-header .pse-wordmark { font-size: 27px; }
  .sst-home .psg-hero { min-height: 595px; }
  .sst-home .hero-shell { height: 595px; min-height: 595px; }
  .sst-home .pick-card { min-height: 390px; }
  .sst-home .top-picks { padding-top: 31px; padding-bottom: 34px; }
  body:has(.sst-home) .site-footer .footer-shell { padding-top: 42px; }
}
@media (min-width: 851px) and (max-width: 1100px) {
  .sst-home .psg-hero { min-height: 560px; }
  .sst-home .hero-shell { height: 560px; min-height: 560px; }
  .sst-home .pick-card { min-height: 362px; }
}
body:has(.sst-home) .site-header .header-shell { max-width: 1110px; padding: 0px 20px; min-height: 69px; }
body:has(.sst-home) #main-navigation { gap: 20px; }
body:has(.sst-home) #main-navigation a:first-child { display: none; }
body:has(.sst-home) .header-start { font-size: 12px; }
.sst-home .psg-hero { height: 498px; min-height: 498px; background: linear-gradient(112deg, rgb(233, 248, 245) 0%, rgb(229, 246, 244) 46%, rgb(189, 229, 232) 100%); overflow: hidden; }
.sst-home .hero-shell { width: 100%; height: 498px; min-height: 498px; max-width: 1171px; margin: 0px auto; padding: 15px 94px 12px; align-items: center; overflow: visible; }
.sst-home .hero-copy { width: 64%; max-width: 700px; padding: 0px; margin: -8px 0px 0px; position: relative; z-index: 3; }
.sst-home .hero-kicker { display: none; }
.sst-home .psg-hero h1 { font-family: Kalam, "Lobster Two", "Comic Neue", cursive; max-width: 700px; margin: 0px 0px 17px; font-size: clamp(55px, 6.6vw, 81px); line-height: 0.93; font-weight: 700; letter-spacing: -0.049em; transform: rotate(-1deg); transform-origin: left center; }
.sst-home .hero-copy > p { font-size: 20px; line-height: 1.33; max-width: 460px; margin: 5px 0px 19px; }
.sst-home .hero-art { position: absolute; inset: 0px 0px 0px auto; width: 86%; height: 100%; background-image: url("assets/design/pse-home-wide-sanitized.png"); background-size: auto 100%; background-position: right 50%; background-repeat: no-repeat; opacity: 1; z-index: 1; }
.sst-home .hero-art::before { content: ""; position: absolute; inset: 0px; background: linear-gradient(90deg, rgb(231, 247, 245) 0%, rgba(231, 247, 245, 0.79) 22%, rgba(231, 247, 245, 0.62) 35%, rgba(231, 247, 245, 0.208) 52%, transparent 77%); display: block; }
.sst-home .hero-proof { max-width: 604px; width: 604px; display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 5px; flex-wrap: nowrap; margin: 14px 0px 15px; }
.sst-home .hero-proof > span { display: flex; flex: initial; min-width: 0px; min-height: 48px; justify-content: flex-start; gap: 6px; border: none; background: rgba(255, 252, 245, 0.91); border-radius: 6px; padding: 5px; box-shadow: rgba(36, 78, 88, 0.11) 0px 2px 5px; }
.sst-home .hero-proof i { font-size: 19px; line-height: 1.1; flex: 0 0 30px; width: 30px; height: 30px; display: grid; place-items: center; background: rgb(195, 241, 233); color: rgb(4, 125, 139); border-radius: 50%; font-style: normal; text-shadow: rgb(255, 255, 255) 0px 1px; }
.sst-home .hero-proof > span:nth-child(2) i { background: rgb(188, 232, 216); color: rgb(8, 120, 91); }
.sst-home .hero-proof > span:nth-child(3) i { background: rgb(182, 233, 252); color: rgb(7, 114, 165); }
.sst-home .hero-proof > span:nth-child(4) i { background: rgb(227, 251, 243); color: rgb(20, 123, 123); }
.sst-home .hero-proof b { font-size: 10.5px; font-weight: 900; line-height: 1.18; white-space: normal; display: block; }
.sst-home .hero-proof small { font-size: 9.5px; font-weight: 700; display: block; color: rgb(22, 63, 83); line-height: 1.16; }
.sst-home .hero-actions { display: flex; gap: 0px; margin: 0px; }
.sst-home .hero-secondary { display: none; }
.sst-home .hero-primary { min-height: 57px; padding: 14px 27px; font-size: 15px; border-radius: 7px; background: linear-gradient(rgb(255, 98, 117) 0%, rgb(249, 72, 98) 100%); }
.sst-home .top-picks { background: rgb(255, 250, 240); padding: 19px 0px 34px; }
.sst-home .top-picks > .home-shell { max-width: 1020px; padding: 0px 14px; }
.sst-home .section-title-row { margin-bottom: 11px; }
.sst-home .section-title-row h2 { font-family: Nunito, Cabin, sans-serif; font-weight: 900; letter-spacing: -0.038em; font-size: 29px; line-height: 1.13; }
.sst-home .section-title-row p { display: none; }
.sst-home .section-title-row > a { font-size: 12px; font-weight: 900; color: rgb(255, 80, 99); }
.sst-home .pick-grid { grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 12px; }
.sst-home .pick-card { min-height: 255px; height: 255px; padding: 11px 9px 10px; border-radius: 9px; border: 1px solid rgb(233, 232, 224); box-shadow: rgba(26, 59, 83, 0.07) 0px 3px 10px; display: flex; }
.sst-home .pick-brand { display: flex; flex-direction: column; gap: 3px; margin: 0px; }
.sst-home .pick-card .pick-logo { height: 79px; min-height: 79px; display: flex; align-items: center; justify-content: center; }
.sst-home .pick-logo img { max-height: 70px; max-width: 110px; }
.sst-home .pick-logo img.pse-approved-icon { max-height: 66px; max-width: 66px; }
.sst-home .pick-brand h3 { font-size: 15px; font-weight: 900; line-height: 1.1; margin: 0px 0px 1px; }
.sst-home .pick-card > p.pse-pick-summary { font-size: 11px; line-height: 1.25; margin: 5px auto; max-width: 160px; min-height: 30px; max-height: 48px; overflow: hidden; flex: 1 1 0%; }
.sst-home .pick-card .pick-rating { display: block; font-size: 13px; color: rgb(244, 160, 28); margin: 4px 0px 2px; }
.sst-home .pick-card .pick-highlight { display: none; }
.sst-home .pick-card .pick-button { min-height: 35px; font-size: 12px; border-radius: 5px; padding: 8px 5px; margin-top: auto; box-shadow: rgba(249, 83, 106, 0.145) 0px 3px 6px; }
.sst-home .pick-bonus { font-size: 10px; margin: 7px 0px 0px; }
.sst-home .pse-home-more { min-height: 120px; height: 120px; background: rgb(230, 250, 243); }
.sst-home .pse-home-more::before { background-size: cover; background-position: center 55%; }
.sst-home .pse-home-more p { font-size: 13px; }
@media (max-width: 1090px) {
  .sst-home .hero-shell { padding-left: 7.5vw; padding-right: 7.5vw; }
  .sst-home .hero-proof { max-width: 100%; width: 100%; }
  .sst-home .top-picks > .home-shell { max-width: 92%; }
  .sst-home .psg-hero h1 { font-size: clamp(50px, 6.6vw, 74px); }
}
@media (max-width: 850px) {
  body:has(.sst-home) #main-navigation a:first-child { display: initial; }
  .sst-home .hero-shell { padding-left: 5vw; padding-right: 5vw; }
  .sst-home .hero-copy { width: 72%; }
  .sst-home .hero-proof { grid-template-columns: repeat(2, minmax(0px, 1fr)); max-width: 440px; }
  .sst-home .pick-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .sst-home .pick-card { height: 255px; min-height: 255px; }
}
@media (max-width: 650px) {
  .sst-home .psg-hero { min-height: 650px; height: auto; }
  .sst-home .hero-shell { height: auto; min-height: 650px; padding: 24px 16px 263px; display: flex; align-items: flex-start; }
  .sst-home .hero-copy { width: 100%; max-width: 100%; margin: 0px; }
  .sst-home .psg-hero h1 { font-size: clamp(43px, 10vw, 60px); max-width: 420px; }
  .sst-home .hero-copy > p { font-size: 17px; margin: 13px 0px; }
  .sst-home .hero-art { inset: auto 0px 0px; width: 100%; height: 300px; background-size: auto 100%; background-position: right center; }
  .sst-home .hero-art::before { background: linear-gradient(rgb(231, 247, 245) 0%, rgba(231, 247, 245, 0.1) 35%, transparent 65%); }
  .sst-home .hero-proof { width: 100%; max-width: 420px; gap: 6px; }
  .sst-home .hero-proof b { font-size: 9px; }
  .sst-home .hero-proof small { font-size: 8px; }
  .sst-home .hero-proof i { width: 27px; height: 27px; font-size: 16px; }
  .sst-home .hero-primary { min-height: 47px; font-size: 12px; padding: 10px 15px; }
  .sst-home .top-picks > .home-shell { max-width: 100%; padding: 0px 15px; }
  .sst-home .pick-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .sst-home .pick-card { height: 243px; min-height: 243px; }
  .sst-home .section-title-row h2 { font-size: 23px; }
  .sst-home .pse-home-more { height: 105px; min-height: 105px; }
}
@media (max-width: 385px) {
  .sst-home .pick-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .sst-home .pick-card { padding: 10px 5px; }
  .sst-home .pick-brand h3 { font-size: 13px; }
}
@media (min-width: 851px) {
  body:has(.sst-home) .psg-brand { margin-left: 20px; }
  body:has(.sst-home) .pse-compass { width: 58px; height: 58px; }
  body:has(.sst-home) .pse-wordmark { font-size: 26px; }
  body:has(.sst-home) #main-navigation { justify-content: flex-end; gap: 17px; }
  .sst-home .hero-copy { transform: translateY(20px); }
  .sst-home .hero-proof { margin-top: 40px; }
  .sst-home .hero-actions { margin-top: 30px; }
  .sst-home .hero-art { mask-image: linear-gradient(90deg, transparent 0%, transparent 20%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 100%); }
}
@media (max-width: 850px) {
  .sst-home .hero-copy { transform: none; }
  .sst-home .hero-proof { margin-top: 14px; }
  .sst-home .hero-actions { margin-top: 0px; }
}
@media (min-width: 851px) {
  .sst-home .psg-hero { position: relative; isolation: isolate; }
  .sst-home .psg-hero::before { content: ""; position: absolute; inset: 0px; background: url("assets/design/pse-home-beach-left.png") left bottom / 710px 260px no-repeat; pointer-events: none; z-index: 0; }
  .sst-home .hero-shell { position: relative; z-index: 1; }
}
.sst-home .hero-art { background-image: url("assets/design/pse-home-wide-sanitized-sharp.png"); background-size: auto 100%; background-position: right 50%; background-repeat: no-repeat; filter: saturate(1.03) contrast(1.02); }
.sst-home .hero-art::before { background: linear-gradient(90deg, rgb(231, 247, 245) 0%, rgba(231, 247, 245, 0.867) 20%, rgba(231, 247, 245, 0.64) 33%, rgba(231, 247, 245, 0.27) 46%, transparent 66%); }
.sst-home .hero-proof { max-width: 622px; width: 622px; gap: 7px; margin: 18px 0px 16px; }
.sst-home .hero-proof > span { align-items: center; min-height: 54px; padding: 6px 8px; background: rgba(255, 252, 245, 0.94); border: 1px solid rgb(223, 231, 223); box-shadow: rgba(36, 78, 88, 0.12) 0px 2px 8px; border-radius: 8px; gap: 7px; }
.sst-home .hero-proof i { flex: 0 0 31px; width: 31px; height: 31px; font-size: 16px; border-radius: 50%; border: 1px solid rgba(0, 0, 0, 0.04); text-shadow: none; box-shadow: rgba(255, 255, 255, 0.75) 0px 1px 0px inset; font-weight: 700; }
.sst-home .hero-proof .proof-reviews i { background: rgb(255, 224, 125); color: rgb(120, 87, 0); }
.sst-home .hero-proof .proof-paying i { background: rgb(191, 229, 202); color: rgb(22, 107, 56); }
.sst-home .hero-proof .proof-worldwide i { background: rgb(185, 230, 255); color: rgb(12, 110, 157); }
.sst-home .hero-proof .proof-simple i { background: rgb(255, 230, 169); color: rgb(148, 104, 0); }
.sst-home .hero-proof .proof-lines { display: flex; flex-direction: column; align-items: flex-start; min-width: 0px; }
.sst-home .hero-proof b { font-size: 11.2px; line-height: 1.05; letter-spacing: -0.01em; font-weight: 900; }
.sst-home .hero-proof small { font-size: 9px; line-height: 1.15; color: rgb(32, 70, 90); font-weight: 700; }
@media (min-width: 851px) {
  .sst-home .hero-copy { transform: translateY(18px); }
  .sst-home .hero-proof { margin-top: 30px; }
  .sst-home .hero-actions { margin-top: 24px; }
}
@media (max-width: 850px) {
  .sst-home .hero-proof { max-width: 430px; width: 100%; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 6px; margin-top: 14px; }
}
@media (max-width: 650px) {
  .sst-home .hero-art { background-position: 72% center; background-size: cover; }
  .sst-home .hero-proof > span { min-height: 48px; padding: 6px 5px; gap: 5px; }
  .sst-home .hero-proof i { width: 27px; height: 27px; flex-basis: 27px; font-size: 14px; }
  .sst-home .hero-proof b { font-size: 9.2px; }
  .sst-home .hero-proof small { font-size: 7.6px; }
}
.sst-home .psg-hero { background: linear-gradient(rgb(237, 248, 247) 0%, rgb(238, 248, 248) 100%); }
.sst-home .hero-shell { min-height: 546px; height: 546px; padding-top: 18px; padding-bottom: 22px; }
.sst-home .hero-copy { width: 48%; max-width: 520px; padding-top: 34px; position: relative; z-index: 3; }
.sst-home .psg-hero h1 { font-size: clamp(66px, 6vw, 88px); line-height: 0.93; letter-spacing: -0.03em; margin: 0px 0px 18px; }
.sst-home .hero-copy p { font-size: 22px; line-height: 1.28; max-width: 430px; margin: 0px 0px 16px; }
.sst-home .hero-art { position: absolute; right: 0px; top: 0px; width: 73%; height: 100%; background-image: url("assets/design/hero-rebuilt-clean.png"); background-repeat: no-repeat; background-position: right center; background-size: cover; opacity: 1; z-index: 1; filter: none; }
.sst-home .hero-art::before { content: ""; position: absolute; inset: 0px; background: linear-gradient(90deg, rgb(237, 248, 247) 0%, rgb(237, 248, 247) 18%, rgba(237, 248, 247, 0.92) 31%, rgba(237, 248, 247, 0.58) 42%, rgba(237, 248, 247, 0.12) 52%, transparent 63%); }
.sst-home .hero-proof { max-width: 760px; width: 760px; gap: 10px; margin: 24px 0px 21px; grid-template-columns: repeat(4, minmax(0px, 1fr)); }
.sst-home .hero-proof > span { min-height: 58px; padding: 7px 10px; border-radius: 8px; background: rgba(255, 252, 246, 0.96); border: 1px solid rgb(221, 229, 220); box-shadow: rgba(23, 74, 92, 0.11) 0px 3px 9px; }
.sst-home .hero-proof i { flex: 0 0 32px; width: 32px; height: 32px; font-size: 17px; }
.sst-home .hero-proof b { font-size: 12px; line-height: 1.03; }
.sst-home .hero-proof small { font-size: 9.5px; line-height: 1.1; }
.sst-home .hero-actions { margin-top: 0px; }
.sst-home .hero-primary { min-height: 54px; padding: 15px 35px; font-size: 16px; border-radius: 8px; }
.sst-home .pse-home-more { min-height: 126px; height: 126px; padding: 18px 0px; background: rgb(223, 242, 243); position: relative; display: flex; align-items: center; justify-content: center; border-top: 0px; }
.sst-home .pse-home-more::before { content: ""; position: absolute; inset: 0px; background: url("assets/design/home-banner-rebuilt-clean.webp") center center / cover no-repeat; opacity: 1; z-index: 0; }
.sst-home .pse-home-more::after { content: ""; position: absolute; inset: 0px; background: linear-gradient(90deg, rgba(227, 248, 249, 0.18) 0%, rgba(232, 249, 250, 0.72) 19%, rgba(237, 250, 249, 0.92) 34%, rgba(237, 250, 249, 0.92) 66%, rgba(232, 249, 250, 0.72) 81%, rgba(227, 248, 249, 0.18) 100%); z-index: 1; }
.sst-home .pse-home-more .home-shell { position: relative; z-index: 2; }
.sst-home .pse-home-more p { font-size: 18px; line-height: 1.35; font-weight: 800; text-shadow: rgba(255, 255, 255, 0.55) 0px 1px 4px; }
.sst-home .pse-home-more a { font-size: 18px; font-weight: 900; text-decoration: underline 1.5px; }
@media (max-width: 1100px) {
  .sst-home .hero-shell { min-height: 526px; height: 526px; }
  .sst-home .hero-copy { width: 51%; max-width: 500px; }
  .sst-home .psg-hero h1 { font-size: clamp(58px, 6vw, 76px); }
  .sst-home .hero-copy p { font-size: 20px; }
  .sst-home .hero-proof { width: 680px; max-width: 680px; }
}
@media (max-width: 850px) {
  .sst-home .hero-shell { min-height: 620px; height: auto; padding-top: 20px; padding-bottom: 250px; }
  .sst-home .hero-copy { width: 100%; max-width: 100%; padding-top: 20px; }
  .sst-home .psg-hero h1 { font-size: clamp(44px, 10vw, 66px); }
  .sst-home .hero-copy p { font-size: 18px; max-width: 420px; }
  .sst-home .hero-art { width: 100%; height: 260px; inset: auto 0px 0px; background-position: center center; background-size: cover; }
  .sst-home .hero-art::before { background: linear-gradient(rgb(237, 248, 247) 0%, rgba(237, 248, 247, 0.55) 28%, transparent 68%); }
  .sst-home .hero-proof { width: 100%; max-width: 500px; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 8px; margin-top: 18px; }
  .sst-home .hero-proof > span { min-height: 52px; padding: 7px 8px; }
  .sst-home .pse-home-more { min-height: 112px; height: 112px; }
  .sst-home .pse-home-more p, .sst-home .pse-home-more a { font-size: 16px; }
}
@media (max-width: 420px) {
  .sst-home .hero-shell { padding-bottom: 230px; }
  .sst-home .hero-proof b { font-size: 10.6px; }
  .sst-home .hero-proof small { font-size: 8.2px; }
  .sst-home .hero-proof i { width: 28px; height: 28px; flex-basis: 28px; font-size: 15px; }
  .sst-home .hero-primary { font-size: 14px; padding: 13px 20px; }
  .sst-home .pse-home-more p, .sst-home .pse-home-more a { font-size: 14px; }
}
.sst-home .psg-hero { position: relative; isolation: isolate; overflow: hidden; background: rgb(232, 246, 245); }
.sst-home .psg-hero::before { content: ""; display: block; position: absolute; inset: 0px; z-index: 0; pointer-events: none; background-image: linear-gradient(90deg, rgba(236, 248, 247, 0.82) 0%, rgba(236, 248, 247, 0.72) 23%, rgba(236, 248, 247, 0.52) 38%, rgba(236, 248, 247, 0.12) 60%, rgba(236, 248, 247, 0) 76%), url("assets/design/hero-rebuilt-clean.webp"); background-size: 100% 100%, cover; background-position: center 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: 0px; transform: none; margin: 0px; }
.sst-home .psg-hero h1 { max-width: 630px; font-size: clamp(62px, 6.3vw, 84px); margin: 0px 0px 18px; line-height: 0.94; }
.sst-home .hero-copy > p { margin: 0px 0px 18px; max-width: 480px; line-height: 1.33; font-size: 20px; }
.sst-home .hero-proof { width: min(760px, 100%); max-width: 760px; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 10px; margin: 21px 0px 20px; align-items: stretch; }
.sst-home .hero-proof > span { box-sizing: border-box; display: grid; grid-template-columns: 36px minmax(0px, 1fr); align-items: center; justify-content: stretch; min-height: 62px; gap: 9px; border: 1px solid rgba(154, 188, 183, 0.57); padding: 9px; background: rgba(255, 253, 247, 0.96); border-radius: 10px; box-shadow: rgba(18, 63, 67, 0.12) 0px 3px 10px; }
.sst-home .hero-proof i { display: block; box-sizing: border-box; justify-self: center; width: 36px; height: 36px; flex: 0 0 auto; border: 0px; border-radius: 50%; font-size: 0px; line-height: 0; color: transparent; text-indent: -9999px; overflow: hidden; background-position: center center; background-repeat: no-repeat; background-size: 28px 28px; }
.sst-home .hero-proof .proof-reviews i { background-color: rgb(255, 242, 193); background-image: url("assets/home-icons/proof-reviews.svg"); }
.sst-home .hero-proof .proof-paying i { background-color: rgb(219, 244, 229); background-image: url("assets/home-icons/proof-paying.svg"); }
.sst-home .hero-proof .proof-worldwide i { background-color: rgb(226, 248, 255); background-image: url("assets/home-icons/proof-worldwide.svg"); }
.sst-home .hero-proof .proof-simple i { background-color: rgb(245, 247, 223); 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: 0px; 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: rgb(41, 85, 107); }
.sst-home .hero-actions { margin: 0px; }
.sst-home .hero-primary { font-size: 15px; min-height: 54px; box-shadow: rgba(191, 61, 72, 0.18) 0px 4px 10px; }
.sst-home .top-picks { background: rgb(255, 250, 242); padding: 25px 0px 30px; }
.sst-home .top-picks > .home-shell { max-width: 1095px; padding: 0px 15px; }
.sst-home .section-title-row { margin-bottom: 15px; }
.sst-home .section-title-row h2 { font-size: 29px; letter-spacing: -0.025em; }
.sst-home .pick-grid { gap: 14px; grid-template-columns: repeat(5, minmax(0px, 1fr)); align-items: stretch; }
.sst-home .pick-card { position: relative; min-width: 0px; min-height: 276px; height: 276px; padding: 11px 11px 13px; border: 1px solid rgb(229, 228, 221); border-radius: 12px; box-shadow: rgba(26, 64, 77, 0.12) 0px 5px 14px, rgba(26, 64, 77, 0.05) 0px 1px 3px; background: linear-gradient(rgb(255, 255, 255) 0%, rgb(255, 255, 255) 82%, rgb(255, 253, 250) 100%); transition: transform 0.18s, box-shadow 0.18s; }
.sst-home .pick-card:hover { transform: translateY(-2px); box-shadow: rgba(26, 64, 77, 0.16) 0px 9px 19px; }
.sst-home .pick-brand { display: flex; flex-direction: column; align-items: center; gap: 4px; margin: 0px; }
.sst-home .pick-card .pick-logo { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; height: 91px; min-height: 91px; margin: 0px auto; isolation: isolate; }
.sst-home .pick-card .pick-logo::before { content: ""; z-index: -1; position: absolute; width: 75px; height: 75px; background: radial-gradient(circle, rgb(243, 250, 251) 0%, rgb(248, 253, 252) 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, rgb(228, 247, 248), rgb(190, 230, 237)); border: 2px solid rgb(146, 202, 213); color: rgb(10, 113, 136); font-size: 36px; font-weight: 900; box-shadow: rgba(24, 107, 121, 0.12) 0px 3px 5px; }
.sst-home .pick-card:nth-child(2n) .pse-home-editorial-icon { background: linear-gradient(135deg, rgb(225, 245, 234), rgb(188, 230, 211)); border-color: rgb(164, 211, 183); color: rgb(34, 118, 84); }
.sst-home .pick-card:nth-child(3n) .pse-home-editorial-icon { background: linear-gradient(135deg, rgb(255, 241, 207), rgb(251, 224, 166)); border-color: rgb(232, 202, 136); color: rgb(146, 97, 29); }
.sst-home .pick-brand h3 { font-size: 16px; font-weight: 900; letter-spacing: -0.016em; line-height: 1.18; min-height: 19px; margin: 1px 0px 2px; }
.sst-home .pick-card > p.pse-pick-summary { display: -webkit-box; -webkit-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 1 0%; color: rgb(36, 76, 99); }
.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(rgb(255, 96, 117), rgb(247, 68, 96)); box-shadow: rgba(219, 68, 86, 0.22) 0px 3px 5px; }
.sst-home .pick-card .pick-bonus { margin: 8px 0px 0px; font-size: 11px; line-height: 1.17; font-weight: 700; color: rgb(10, 113, 134); }
.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, 0.14) 0%, rgba(240, 250, 248, 0.7) 22%, rgba(240, 250, 248, 0.92) 38%, rgba(240, 250, 248, 0.92) 62%, rgba(240, 250, 248, 0.7) 78%, rgba(237, 250, 250, 0.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: 0px; }
@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(rgba(236, 248, 247, 0.96) 0%, rgba(236, 248, 247, 0.92) 35%, rgba(236, 248, 247, 0.56) 61%, rgba(236, 248, 247, 0.08) 80%, transparent 100%), url("assets/design/hero-rebuilt-clean.webp"); background-position: center 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(0px, 1fr)); max-width: 500px; width: 100%; gap: 8px; margin-top: 18px; }
  .sst-home .pick-grid { grid-template-columns: repeat(3, minmax(0px, 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 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: 0px; padding: 0px; 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(0px, 1fr)); width: 100%; gap: 7px; }
  .sst-home .hero-proof > span { min-height: 56px; grid-template-columns: 29px minmax(0px, 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(0px, 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; }
}
.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; }
}
body:has(.sst-home) .site-header .header-shell, body:not(:has(.sst-home)) .site-header .header-shell { max-width: 1110px; min-height: 69px; padding: 0px 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: 0px; 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: 0px; }
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; }
.pse-compare-page .pse-page-hero.pse-hero-compare { overflow: hidden; background: linear-gradient(90deg, rgb(152, 220, 250) 0%, rgb(223, 245, 251) 46%, rgb(168, 223, 243) 100%); }
.pse-compare-page .pse-hero-compare .pse-hero-grid { max-width: 1225px; min-height: 404px; height: 404px; padding: 0px 52px; }
.pse-compare-page .pse-hero-compare .pse-hero-words { width: 58%; max-width: 630px; padding: 56px 0px 35px; margin: 0px; }
.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: 0.99; letter-spacing: -0.049em; max-width: none; white-space: nowrap; margin: 0px 0px 12px; transform: rotate(-1deg); transform-origin: left center; text-shadow: none; }
.pse-compare-page .pse-hero-compare .pse-hero-words h1::after { width: 225px; height: 4px; max-width: 40%; margin: 2px 0px 0px 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 0px 0px; padding: 0px; }
.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, 0.18) 9%, rgb(0, 0, 0) 21%); }
.pse-compare-page .pse-compare-wrap { max-width: 1171px; margin: -10px auto 0px; padding: 0px 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: 0px 18px 18px; }
@media (min-width: 1180px) {
  .pse-compare-page .pse-hero-compare .pse-hero-grid { max-width: 1265px; padding: 0px 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: 0px; }
  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: 0px 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: 0px 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: 0px; }
  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: 0px; right: 0px; top: 100%; flex-direction: column; background: rgb(255, 253, 248); 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: 0px 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 0px; padding: 0px 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: 0px 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: 0px 17px; }
  .pse-compare-page .pse-hero-compare .pse-hero-words { width: 100%; max-width: 100%; padding-top: 24px; padding-bottom: 0px; }
  .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(transparent 0%, rgb(0, 0, 0) 12%); }
  .pse-compare-page .pse-compare-wrap { margin: 0px auto; padding: 0px 12px 24px; }
  .pse-compare-page .pse-filter-bar.pse-compare-filter-form { padding: 13px 12px; gap: 8px; }
}
/* PSE accessibility patch 2026-10-19
   Corrections based on Lighthouse homepage screenshots; no layout/theme redesign. */

/* Contrast: wordmark on near-white header and text on coral CTAs. */
.site-header .pse-wordmark strong {
  color: #b72247;
}
.site-header .header-start,
.site-header .header-start:visited {
  background: #b72247;
  color: #fff;
}
.site-header .header-start:hover,
.site-header .header-start:focus-visible {
  background: #a61d43;
  color: #fff;
}

/* Contrast: "View all" above the survey cards. */
.sst-home .top-picks .section-title-row > a,
.sst-home .top-picks .section-title-row > a:visited {
  color: #b72247;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Footer credit: recognizable as a link without relying only on colour. */
.site-footer .footer-bottom a[href^="https://db-ip.com"] {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

/* Keyboard focus must stay visible over both light and dark surfaces. */
.site-header a:focus-visible,
.sst-home .top-picks a:focus-visible,
.site-footer a:focus-visible {
  outline: 3px solid #ffc365;
  outline-offset: 3px;
}

/* WCAG 2.2 tap size/spacing: footer links otherwise about 16px tall. */
@media (max-width: 850px) {
  .site-footer .footer-links {
    gap: 12px;
  }
  .site-footer .footer-links a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    min-width: 48px;
  }
}
