/* Testimonials design converted from the supplied React app; scoped to this page. */
body.testimonials-page { margin:0; padding-top:88px; background:#f8fbf9; }
.testimonials-page .tcs-site-chrome { font-size:16px; line-height:1.5; }
#testimonials-page { font-family:Geist,Inter,Arial,sans-serif; color:#14243a; line-height:1.5; }
#testimonials-page h1, #testimonials-page h2, #testimonials-page h3, #testimonials-page p { margin:0; }
#testimonials-page [hidden] { display:none !important; }
#testimonials-page #all-reviews { scroll-margin-top:108px; }
#testimonials-page :is(a,button,input,select):focus-visible { outline:3px solid #00b67a; outline-offset:4px; }
#testimonials-page .search-field:focus-within, #testimonials-page .select-field:focus-within { border-color:#007d5b; }
#testimonials-page { --ink:#14243a; --green:#00b67a; --green-dark:#006b4e; --green-deep:#073d32; --mint:#dff8ef; --muted:#68758b; --paper:#f8fbf9; }
#testimonials-page * { box-sizing:border-box; }
#testimonials-page a { color:inherit; text-decoration:none; }
#testimonials-page .shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
#testimonials-page .hero { position:relative; min-height:650px; display:flex; align-items:center; overflow:hidden; padding:84px 0; background:radial-gradient(circle at 80% 22%,rgba(0,182,122,.22),transparent 28%),linear-gradient(135deg,#041f1a 0%,#073d32 55%,#006b4e 100%); color:white; }
#testimonials-page .hero-orbit { position:absolute; border:1px solid rgba(255,255,255,.12); border-radius:50%; }
#testimonials-page .hero-orbit-one { width:720px; height:720px; right:-210px; top:-430px; }
#testimonials-page .hero-orbit-two { width:470px; height:470px; right:110px; bottom:-400px; }
#testimonials-page .hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:90px; }
#testimonials-page .eyebrow { margin:0; display:flex; align-items:center; gap:12px; color:#008f68; font-size:11px; font-weight:850; letter-spacing:.16em; text-transform:uppercase; }
#testimonials-page .eyebrow span { width:38px; height:1px; background:currentColor; }
#testimonials-page .hero .eyebrow { color:#76e9c0; }
#testimonials-page .hero-copy h1 { margin:26px 0 29px; font-size:clamp(68px,7.5vw,102px); font-weight:470; line-height:.86; letter-spacing:-.07em; }
#testimonials-page .hero-copy h1 em { color:#7bedc5; font-family:Georgia,serif; font-weight:400; }
#testimonials-page .hero-copy > p:not(.eyebrow) { max-width:670px; margin:0; color:#cae4db; font-size:17px; line-height:1.72; }
#testimonials-page .hero-link { width:max-content; margin-top:31px; display:flex; gap:18px; align-items:center; padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.5); font-size:12px; font-weight:800; }
#testimonials-page .score-card { min-height:390px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:45px; border:1px solid rgba(255,255,255,.18); border-radius:30px; background:rgba(1,32,26,.46); box-shadow:0 30px 80px rgba(0,0,0,.22); text-align:center; backdrop-filter:blur(12px); }
#testimonials-page .score-card > p { margin:0 0 18px; color:#83e7c4; font-size:10px; font-weight:850; letter-spacing:.15em; text-transform:uppercase; }
#testimonials-page .score-card > strong { font-size:118px; font-weight:650; line-height:.82; letter-spacing:-.08em; }
#testimonials-page .stars { margin-top:23px; color:#fff; font-size:19px; letter-spacing:9px; }
#testimonials-page .score-card .stars { padding:9px 6px 9px 15px; background:#00b67a; border-radius:2px; }
#testimonials-page .score-card > span:not(.stars) { margin-top:17px; color:#d2e7e0; font-size:13px; }
#testimonials-page .score-pills { display:flex; gap:9px; margin-top:27px; }
#testimonials-page .score-pills b { padding:9px 13px; border-radius:999px; background:rgba(255,255,255,.1); color:#d8eee7; font-size:9px; letter-spacing:.05em; }
#testimonials-page .reviews-section { padding:102px 0 110px; background:linear-gradient(180deg,#fff,#f4faf7); }
#testimonials-page .section-heading { display:flex; align-items:end; justify-content:space-between; gap:50px; margin-bottom:46px; }
#testimonials-page .section-heading h2 { margin:18px 0 0; font-size:clamp(54px,6vw,78px); font-weight:500; line-height:.94; letter-spacing:-.06em; }
#testimonials-page .section-heading > p { max-width:360px; margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
#testimonials-page .review-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
#testimonials-page .review-card { min-height:430px; display:flex; flex-direction:column; padding:31px; border:1px solid #dce9e4; border-radius:25px; background:white; box-shadow:0 20px 60px rgba(14,61,48,.07); }
#testimonials-page .review-card .stars { width:max-content; margin:0; padding:7px 1px 7px 8px; border-radius:2px; background:#00b67a; font-size:13px; letter-spacing:6px; }
#testimonials-page .review-label { margin:25px 0 13px; color:#008b64; font-size:9px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
#testimonials-page .review-card h3 { margin:0; font-size:28px; line-height:1.1; letter-spacing:-.04em; }
#testimonials-page .review-card blockquote { margin:20px 0 30px; color:#65728a; font-size:14px; line-height:1.72; }
#testimonials-page .review-card footer { margin-top:auto; display:flex; align-items:center; gap:12px; padding-top:20px; border-top:1px solid #e4eee9; }
#testimonials-page .avatar { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:var(--mint); color:#007d5b; font-size:13px; font-weight:850; }
#testimonials-page .review-card footer div:last-child { display:grid; gap:3px; }
#testimonials-page .review-card footer strong { font-size:12px; }
#testimonials-page .review-card footer span { color:#839087; font-size:10px; }
#testimonials-page .sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
#testimonials-page button, #testimonials-page input, #testimonials-page select { font:inherit; }
#testimonials-page .stars { display:inline-flex; gap:3px; letter-spacing:0; }
#testimonials-page .stars i { width:22px; height:22px; display:grid; place-items:center; border-radius:2px; background:#00b67a; color:white; font-size:14px; font-style:normal; line-height:1; }
#testimonials-page .score-card .stars { gap:4px; padding:0; background:transparent; }
#testimonials-page .score-card .stars i { width:40px; height:40px; font-size:25px; }
#testimonials-page .hero-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:33px; }
#testimonials-page .hero-actions a { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:0 22px; border-radius:14px; font-size:12px; font-weight:800; }
#testimonials-page .hero-actions .primary-action { min-width:205px; background:#00b67a; color:white; box-shadow:0 14px 30px rgba(0,182,122,.18); }
#testimonials-page .hero-actions .secondary-action { min-width:190px; border:1px solid rgba(255,255,255,.22); color:white; }
#testimonials-page .featured-section { padding:102px 0 112px; background:linear-gradient(180deg,#fff,#f3faf7); }
#testimonials-page .featured-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
#testimonials-page .featured-card { min-height:485px; display:flex; flex-direction:column; overflow:hidden; padding:31px; border-radius:27px; color:white; box-shadow:0 24px 65px rgba(4,56,43,.13); }
#testimonials-page .featured-card-1 { background:linear-gradient(150deg,#006b4e,#073d32); }
#testimonials-page .featured-card-2 { background:linear-gradient(150deg,#058864,#005542); }
#testimonials-page .featured-card-3 { background:linear-gradient(150deg,#0c6c5b,#17483f); }
#testimonials-page .featured-card-top { display:flex; align-items:center; justify-content:space-between; gap:20px; }
#testimonials-page .featured-card-top > span:last-child { color:#c8eee0; font-size:9px; font-weight:850; letter-spacing:.09em; }
#testimonials-page .featured-card .stars i { width:25px; height:25px; background:rgba(255,255,255,.14); font-size:15px; }
#testimonials-page .result-label { margin:48px 0 11px; color:#9ee8ce; font-size:9px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
#testimonials-page .result-number { max-width:280px; font-size:41px; font-weight:560; line-height:1.02; letter-spacing:-.055em; }
#testimonials-page .review-summary { margin:25px 0 34px; color:#d5ebe4; font-size:13px; line-height:1.72; }
#testimonials-page .featured-card footer { margin-top:auto; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; padding-top:23px; border-top:1px solid rgba(255,255,255,.14); }
#testimonials-page .featured-card .avatar { background:rgba(255,255,255,.12); color:white; }
#testimonials-page .featured-card footer > div:nth-child(2) { display:grid; gap:3px; }
#testimonials-page .featured-card footer strong { font-size:12px; }
#testimonials-page .featured-card footer span { color:#abd0c3; font-size:10px; }
#testimonials-page .featured-card footer > a { width:37px; height:37px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.18); border-radius:50%; }
#testimonials-page .trust-strip { padding:0 0 100px; background:#f3faf7; }
#testimonials-page .trust-grid { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; border:1px solid #d5e8e0; border-radius:27px; background:white; box-shadow:0 22px 60px rgba(14,61,48,.06); }
#testimonials-page .trust-grid > div { min-height:190px; display:flex; flex-direction:column; justify-content:center; align-items:center; padding:30px; border-right:1px solid #deebe6; text-align:center; }
#testimonials-page .trust-grid > div:last-child { border-right:0; }
#testimonials-page .trust-grid strong { color:#007d5b; font-size:62px; line-height:1; letter-spacing:-.065em; }
#testimonials-page .trust-grid span { max-width:210px; margin-top:14px; color:#657469; font-size:11px; line-height:1.55; }
#testimonials-page .archive-section { padding:105px 0 116px; background:#f8fbf9; }
#testimonials-page .archive-heading { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:70px; }
#testimonials-page .archive-heading h2 { margin:19px 0 0; font-size:clamp(55px,6vw,78px); font-weight:500; line-height:.92; letter-spacing:-.065em; }
#testimonials-page .archive-heading > p { max-width:480px; margin:0; color:#66758a; font-size:13px; line-height:1.75; }
#testimonials-page .review-tools { display:grid; grid-template-columns:1fr 190px 200px; gap:12px; margin-top:48px; }
#testimonials-page .search-field, #testimonials-page .select-field { min-height:64px; display:flex; align-items:center; gap:12px; padding:0 17px; border:1px solid #d9e8e1; border-radius:16px; background:white; box-shadow:0 12px 34px rgba(20,64,51,.04); }
#testimonials-page .search-field > span:first-child { color:#008b64; font-size:28px; transform:rotate(-18deg); }
#testimonials-page .search-field input { flex:1; min-width:0; border:0; outline:0; background:transparent; color:var(--ink); font-size:13px; }
#testimonials-page .search-field input::placeholder { color:#8b9690; }
#testimonials-page .search-field button { width:30px; height:30px; border:0; border-radius:50%; background:#e7f5f0; color:#007d5b; cursor:pointer; }
#testimonials-page .select-field { display:grid; grid-template-columns:auto 1fr; gap:9px; }
#testimonials-page .select-field > span { color:#738078; font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
#testimonials-page .select-field select { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--ink); font-size:11px; font-weight:750; cursor:pointer; }
#testimonials-page .level-filter { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
#testimonials-page .level-filter button { min-height:43px; padding:0 18px; border:1px solid #d8e7e0; border-radius:999px; background:white; color:#54645b; cursor:pointer; font-size:10px; font-weight:800; }
#testimonials-page .level-filter button.is-active { border-color:#007d5b; background:#007d5b; color:white; box-shadow:0 10px 24px rgba(0,125,91,.14); }
#testimonials-page .results-row { margin:42px 0 18px; display:flex; align-items:center; justify-content:space-between; color:#829087; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
#testimonials-page .results-row b { color:#007d5b; font-size:11px; }
#testimonials-page .directory-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
#testimonials-page .directory-card { min-height:355px; display:flex; flex-direction:column; padding:27px; border:1px solid #dbe9e3; border-radius:23px; background:white; box-shadow:0 18px 50px rgba(22,70,55,.055); transition:transform .2s ease,border-color .2s ease; }
#testimonials-page .directory-card:hover { transform:translateY(-3px); border-color:#a5d4c2; }
#testimonials-page .directory-top { display:flex; align-items:center; justify-content:space-between; gap:14px; }
#testimonials-page .directory-card .stars { gap:2px; }
#testimonials-page .directory-card .stars i { width:21px; height:21px; font-size:12px; }
#testimonials-page .directory-card .stars-4 i:nth-child(5), #testimonials-page .directory-card .stars-1 i:nth-child(n+2) { background:#dce8e3; color:white; }
#testimonials-page .directory-top > span:last-child { color:#89938e; font-size:9px; white-space:nowrap; }
#testimonials-page .review-levels { display:flex; flex-wrap:wrap; gap:5px; margin-top:24px; }
#testimonials-page .review-levels b { padding:6px 8px; border-radius:999px; background:#e9f7f2; color:#007b59; font-size:8px; letter-spacing:.08em; }
#testimonials-page .directory-card h3 { margin:14px 0 0; font-size:25px; line-height:1.1; letter-spacing:-.04em; }
#testimonials-page .directory-card > p { margin:15px 0 23px; color:#68768c; font-size:12px; line-height:1.65; }
#testimonials-page .reviewer-row { display:flex; align-items:center; gap:10px; margin-top:auto; }
#testimonials-page .reviewer-row > span:last-child { display:grid; gap:3px; }
#testimonials-page .reviewer-row strong { font-size:11px; }
#testimonials-page .reviewer-row small { color:#879189; font-size:9px; }
#testimonials-page .directory-card > a { margin-top:19px; padding-top:17px; display:flex; align-items:center; justify-content:space-between; border-top:1px solid #e1ece7; color:#007d5b; font-size:10px; font-weight:850; }
#testimonials-page .pagination { margin-top:38px; display:grid; grid-template-columns:180px auto 180px; align-items:center; justify-content:space-between; gap:16px; }
#testimonials-page .pagination button { width:100%; min-height:52px; padding:0 20px; border:1px solid #d7e7e0; border-radius:14px; background:white; color:#076c52; cursor:pointer; font-size:10px; font-weight:850; }
#testimonials-page .pagination button:last-child { justify-self:end; }
#testimonials-page .pagination button:disabled { opacity:.38; cursor:not-allowed; }
#testimonials-page .pagination span { color:#75837b; font-size:10px; }
#testimonials-page .pagination b { color:#007d5b; }
#testimonials-page .no-results { padding:70px 30px; border:1px solid #d9e8e1; border-radius:25px; background:white; text-align:center; }
#testimonials-page .no-results > strong { width:58px; height:58px; display:grid; place-items:center; margin:0 auto 18px; border-radius:17px; background:#e4f5ef; color:#007d5b; font-size:25px; }
#testimonials-page .no-results h3 { margin:0; font-size:28px; }
#testimonials-page .no-results p { margin:10px 0 22px; color:#718077; font-size:12px; }
#testimonials-page .no-results button { min-height:45px; padding:0 20px; border:0; border-radius:999px; background:#007d5b; color:white; cursor:pointer; font-size:10px; font-weight:800; }
#testimonials-page .review-note { padding:0 0 102px; background:#f8fbf9; }
#testimonials-page .note-card { display:grid; grid-template-columns:1fr auto; align-items:center; gap:75px; padding:58px 62px; border-radius:30px; background:linear-gradient(135deg,#102b27,#073d32 55%,#006b4e); color:white; box-shadow:0 30px 80px rgba(3,45,35,.17); }
#testimonials-page .note-card .eyebrow { color:#76e9c0; }
#testimonials-page .note-card h2 { margin:20px 0 14px; font-size:clamp(40px,5vw,60px); line-height:.98; letter-spacing:-.055em; }
#testimonials-page .note-card p:last-child { max-width:660px; margin:0; color:#c8ded6; font-size:13px; line-height:1.72; }
#testimonials-page .note-card > a { min-width:280px; min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:0 21px; border-radius:14px; background:#00b67a; color:white; font-size:11px; font-weight:850; }
@media(max-width:960px) {
#testimonials-page .hero-grid { grid-template-columns:1fr .72fr; gap:45px; }
#testimonials-page .featured-grid, #testimonials-page .directory-grid { grid-template-columns:repeat(2,1fr); }
#testimonials-page .review-tools { grid-template-columns:1fr 155px 170px; }
#testimonials-page .archive-heading { grid-template-columns:1.1fr .9fr; gap:40px; }
#testimonials-page .note-card { gap:35px; padding:48px; }
#testimonials-page .note-card > a { min-width:240px; }
}
@media(max-width:680px) {
#testimonials-page .shell { width:min(100% - 28px,1180px); }
#testimonials-page .hero { min-height:auto; padding:60px 0 67px; }
#testimonials-page .hero-grid { grid-template-columns:1fr; gap:38px; }
#testimonials-page .hero-copy { text-align:center; }
#testimonials-page .hero .eyebrow, #testimonials-page .archive-heading .eyebrow, #testimonials-page .note-card .eyebrow { justify-content:center; }
#testimonials-page .hero-copy h1 { margin:24px 0; font-size:56px; }
#testimonials-page .hero-copy > p:not(.eyebrow) { margin-inline:auto; font-size:14px; }
#testimonials-page .hero-actions { display:grid; grid-template-columns:1fr; }
#testimonials-page .hero-actions a { width:100%; }
#testimonials-page .score-card { min-height:300px; padding:33px 18px; }
#testimonials-page .score-card > strong { font-size:88px; }
#testimonials-page .score-card .stars i { width:32px; height:32px; font-size:20px; }
#testimonials-page .score-pills { justify-content:center; flex-wrap:wrap; }
#testimonials-page .featured-section, #testimonials-page .archive-section { padding:72px 0 78px; }
#testimonials-page .section-heading { display:grid; gap:20px; margin-bottom:32px; text-align:center; }
#testimonials-page .section-heading .eyebrow { justify-content:center; }
#testimonials-page .section-heading h2, #testimonials-page .archive-heading h2 { font-size:48px; }
#testimonials-page .section-heading > p { margin-inline:auto; }
#testimonials-page .featured-grid, #testimonials-page .directory-grid { grid-template-columns:1fr; }
#testimonials-page .featured-card { min-height:445px; padding:27px; }
#testimonials-page .trust-strip { padding-bottom:72px; }
#testimonials-page .trust-grid { grid-template-columns:1fr; }
#testimonials-page .trust-grid > div { min-height:140px; border-right:0; border-bottom:1px solid #deebe6; }
#testimonials-page .trust-grid > div:last-child { border-bottom:0; }
#testimonials-page .trust-grid strong { font-size:52px; }
#testimonials-page .archive-heading { grid-template-columns:1fr; gap:22px; text-align:center; }
#testimonials-page .archive-heading > p { margin-inline:auto; }
#testimonials-page .review-tools { grid-template-columns:1fr 1fr; margin-top:34px; }
#testimonials-page .search-field { grid-column:1/-1; }
#testimonials-page .select-field { min-height:58px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
#testimonials-page .level-filter { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:5px; }
#testimonials-page .level-filter button { min-width:0; min-height:36px; padding:0 3px; font-size:8px; white-space:nowrap; }
#testimonials-page .results-row { margin-top:32px; }
#testimonials-page .directory-card { min-height:335px; }
#testimonials-page .pagination { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:9px; }
#testimonials-page .pagination button { min-height:48px; padding:0 8px; }
#testimonials-page .review-note { padding-bottom:74px; }
#testimonials-page .note-card { grid-template-columns:1fr; gap:30px; padding:39px 26px; text-align:center; }
#testimonials-page .note-card > a { min-width:0; width:100%; }
}
@media(max-width:520px) { body.testimonials-page { padding-top:76px; } }
#testimonials-page .directory-card p { white-space:pre-line; overflow-wrap:anywhere; }
#testimonials-page .stars { flex-shrink:0; }
#testimonials-page .featured-card-top { flex-wrap:wrap; }
#testimonials-page .featured-card-top .stars { margin-top:0; }
#testimonials-page .avatar { flex-shrink:0; }
#testimonials-page .score-pills { flex-wrap:wrap; justify-content:center; }
#testimonials-page .directory-top time { color:#87968c; font-size:9px; }
#testimonials-page .result-number { font-size:32px; overflow-wrap:anywhere; }
#testimonials-page .reviewer-row strong { overflow-wrap:anywhere; }
