.wpcf7 .screen-reader-response {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
padding: 0;
border: 0;
word-wrap: normal !important;
}
.wpcf7 .hidden-fields-container {
display: none;
}
.wpcf7 form .wpcf7-response-output {
margin: 2em 0.5em 1em;
padding: 0.2em 1em;
border: 2px solid #00a0d2; }
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
border-color: #46b450; }
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
border-color: #dc3232; }
.wpcf7 form.spam .wpcf7-response-output {
border-color: #f56e28; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
border-color: #ffb900; }
.wpcf7-form-control-wrap {
position: relative;
}
.wpcf7-not-valid-tip {
color: #dc3232; font-size: 1em;
font-weight: normal;
display: block;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
position: relative;
top: -2ex;
left: 1em;
z-index: 100;
border: 1px solid #dc3232;
background: #fff;
padding: .2em .8em;
width: 24em;
}
.wpcf7-list-item {
display: inline-block;
margin: 0 0 0 1em;
}
.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
content: " ";
}
.wpcf7-spinner {
visibility: hidden;
display: inline-block;
background-color: #23282d; opacity: 0.75;
width: 24px;
height: 24px;
border: none;
border-radius: 100%;
padding: 0;
margin: 0 24px;
position: relative;
}
form.submitting .wpcf7-spinner {
visibility: visible;
}
.wpcf7-spinner::before {
content: '';
position: absolute;
background-color: #fbfbfc; top: 4px;
left: 4px;
width: 6px;
height: 6px;
border: none;
border-radius: 100%;
transform-origin: 8px 8px;
animation-name: spin;
animation-duration: 1000ms;
animation-timing-function: linear;
animation-iteration-count: infinite;
}
@media (prefers-reduced-motion: reduce) {
.wpcf7-spinner::before {
animation-name: blink;
animation-duration: 2000ms;
}
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes blink {
from {
opacity: 0;
}
50% {
opacity: 1;
}
to {
opacity: 0;
}
}
.wpcf7 [inert] {
opacity: 0.5;
}
.wpcf7 input[type="file"] {
cursor: pointer;
}
.wpcf7 input[type="file"]:disabled {
cursor: default;
}
.wpcf7 .wpcf7-submit:disabled {
cursor: not-allowed;
}
.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
direction: ltr;
}
.wpcf7-reflection > output {
display: list-item;
list-style: none;
}
.wpcf7-reflection > output[hidden] {
display: none;
}:root {
--background: hsl(210 40% 98%);
--foreground: hsl(222.2 84% 4.9%);
--card: hsl(0 0% 100%);
--card-foreground: hsl(222.2 84% 4.9%);
--primary: hsl(246 80% 60%);
--primary-foreground: hsl(210 40% 98%);
--secondary: hsl(262 83% 64%);
--secondary-foreground: hsl(210 40% 98%);
--muted: hsl(210 40% 96.1%);
--muted-foreground: hsl(215.4 16.3% 46.9%);
--border: hsl(214.3 31.8% 91.4%);
--radius: 0.5rem;
--star-filled: #f59e0b;
--star-empty: #d1d5db;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
body {
background-color: var(--background);
color: var(--foreground);
line-height: 1.5;
}
.container {
max-width: 1024px;
margin: 0 auto;
padding: 2rem 1rem;
}
.header {
margin-bottom: 2rem;
}
h1 {
font-size: 2rem;
font-weight: 700;
margin-bottom: 0.5rem;
}
.subtitle {
color: var(--muted-foreground);
font-size: 1.125rem;
}
.search-container {
position: relative;
margin-bottom: 1.5rem;
}
.search-icon {
position: absolute;
left: 0.75rem;
top: 50%;
transform: translateY(-50%);
color: var(--muted-foreground);
}
input[type="text"] {
width: 100%;
padding: 0.75rem 0.75rem 0.75rem 2.5rem;
font-size: 1rem;
border: 1px solid var(--border);
border-radius: var(--radius);
background-color: white;
}
.crm-list {
display: flex;
flex-direction: column;
gap: 1rem;
}
.crm-card {
border: 1px solid var(--border);
border-radius: var(--radius);
background-color: white;
transition: box-shadow 0.2s;
}
.crm-card:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.crm-card.expanded {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
.crm-card-header {
padding: 1rem;
display: flex;
flex-wrap: wrap;
gap: 1rem;
align-items: center;
}
@media (min-width: 768px) {
.crm-card-header {
flex-wrap: nowrap;
}
}
.crm-logo-name {
display: flex;
align-items: center;
gap: 0.75rem;
width: 100%;
}
@media (min-width: 768px) {
.crm-logo-name {
width: 20%;
}
}
.crm-logo {
width: 3rem;
height: 3rem;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid var(--border);
border-radius: 0.375rem;
overflow: hidden;
background-color: white;
padding: 0.25rem;
flex-shrink: 0;
}
.crm-logo img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.crm-name-container h3 {
font-size: 1.125rem;
font-weight: 500;
}
.winner-badge {
display: inline-block;
margin-top: 0.25rem;
padding: 0.35rem 0.75rem;
background-color: rgba(79, 70, 229, 0.1);
color: var(--primary);
border-radius: 9999px;
font-size: 0.75rem;
font-weight: 500;
white-space: nowrap;
margin-bottom: 1em;
}
.winner-badge.secondary {
margin-left: 0.5rem;
}
.crm-metrics {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 0.5rem 1rem;
width: 100%;
}
@media (min-width: 768px) {
.crm-metrics {
grid-template-columns: repeat(4, 1fr);
width: 50%;
}
}
.metric {
display: flex;
flex-direction: column;
}
.metric-label {
font-size: 0.75rem;
color: var(--muted-foreground);
}
.rating-stars {
display: flex;
align-items: center;
gap: 0.1rem;
line-height: 1;
}
.star {
font-size: 18px;
line-height: 1;
display: inline-block;
}
.star-filled {
color: var(--star-filled);
}
.star-container .star-filled {
position: absolute;
top: 0;
left: 0;
overflow: hidden;
padding: 0;
}
.star-empty {
color: var(--star-empty);
}
.star-large {
font-size: 22px;
}
.star-container {
position: relative;
display: inline-block;
width: 18px;
height: 18px;
padding:0;
}
.overall-score {
display: flex;
flex-direction: column;
align-items: center;
width: 100%;
max-width: 80px;
}
@media (min-width: 768px) {
.overall-score {
width: 10%;
}
}
.score-label {
font-size: 0.75rem;
color: var(--muted-foreground);
}
.score-value {
display: flex;
align-items: baseline;
gap: 0.25rem;
}
.score-number {
font-size: 1.25rem;
font-weight: 600;
}
.score-max {
font-size: 0.75rem;
color: var(--muted-foreground);
}
.crm-actions {
display: flex;
flex-direction: column;
gap: 0.5rem;
width: 100%;
}
@media (min-width: 768px) {
.crm-actions {
flex-direction: row;
width: 20%;
margin-left: auto;
justify-content: flex-end;
}
}
.button {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.25rem;
padding: 0.5rem 1rem;
border-radius: var(--radius);
font-size: 0.875rem;
font-weight: 500;
cursor: pointer;
white-space: nowrap;
transition: all 0.2s;
}
.button-outline {
background-color: transparent;
border: 1px solid var(--border);
color: var(--foreground);
}
.button-outline:hover {
background-color: var(--muted);
}
.button-primary {
background-color: var(--primary);
color: var(--primary-foreground);
border: none;
position: relative;
overflow: hidden;
transform: translateZ(0);
}
.button-primary:hover {
transform: scale(1.05);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.button-primary:active {
transform: scale(0.95);
}
.button-primary::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background-color: rgba(255, 255, 255, 0.2);
transform: skewX(45deg);
transition: all 0.7s;
}
.button-primary:hover::before {
left: 100%;
}
.expanded-content {
display: none;
padding: 1rem;
border-top: 1px solid var(--border);
animation: fadeIn 0.3s ease-out;
}
.crm-card.expanded .expanded-content {
display: block;
}
.crm-description {
margin-bottom: 1rem;
color: var(--muted-foreground);
font-size: 0.9375rem;
}
.view-details {
text-align: right;
} .back-link {
margin-bottom: 1rem;
}
.back-link a {
display: inline-flex;
align-items: center;
gap: 0.5rem;
color: var(--muted-foreground);
text-decoration: none;
font-size: 0.875rem;
padding: 0.5rem;
border-radius: var(--radius);
}
.back-link a:hover {
background-color: var(--muted);
}
.crm-details-header {
display: flex;
flex-direction: column;
gap: 1.5rem;
margin-bottom: 2rem;
}
@media (min-width: 768px) {
.crm-details-header {
flex-direction: row;
}
}
.crm-logo-large {
width: 5rem;
height: 5rem;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid var(--border);
border-radius: 0.5rem;
overflow: hidden;
background-color: white;
padding: 0.5rem;
flex-shrink: 0;
}
.crm-details-info {
flex: 1;
}
.crm-details-name {
display: flex;
flex-direction: column;
gap: 0.5rem;
margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
.crm-details-name {
flex-direction: row;
align-items: center;
}
}
.crm-details-name h1 {
font-size: 1.875rem;
margin-bottom: 0;
}
.crm-details-score {
display: flex;
align-items: center;
gap: 0.5rem;
margin-top: 0.5rem;
}
.crm-details-score .score-number {
font-size: 1.5rem;
}
.crm-details-score .rating-stars .star {
width: 1.125rem;
height: 1.125rem;
}
.crm-details-description {
color: var(--muted-foreground);
margin: 0.75rem 0 1rem;
}
.crm-actions-row {
display: flex;
flex-direction: column;
gap: 0.75rem;
margin-top: 1rem;
}
@media (min-width: 640px) {
.crm-actions-row {
flex-direction: row;
align-items: center;
}
}
.last-updated {
display: flex;
align-items: center;
gap: 0.25rem;
font-size: 0.75rem;
color: var(--muted-foreground);
}
.about-section {
margin-bottom: 2.5rem;
}
.section-title {
font-size: 1.25rem;
font-weight: 600;
margin-bottom: 0.75rem;
}
.about-text {
color: var(--muted-foreground);
white-space: pre-line;
}
.performance-section {
margin-bottom: 2.5rem;
}
.chart-container {
height: 400px;
margin-bottom: 1.5rem;
}
.scores-grid {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 1rem;
}
@media (min-width: 640px) {
.scores-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (min-width: 768px) {
.scores-grid {
grid-template-columns: repeat(3, 1fr);
}
}
.score-card {
background-color: white;
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 1rem;
}
.score-card-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 0.5rem;
}
.score-card-title {
font-size: 0.875rem;
font-weight: 500;
}
.score-card-value {
display: flex;
align-items: center;
gap: 0.5rem;
}
.score-card-number {
font-weight: 700;
font-size: 0.9375rem;
}
.score-card-stars .star {
width: 0.875rem;
height: 0.875rem;
}
.score-card-description {
font-size: 0.75rem;
color: var(--muted-foreground);
}
.bottom-cta {
background: linear-gradient(to right, rgba(79, 70, 229, 0.05), rgba(147, 51, 234, 0.05));
border-radius: 0.75rem;
padding: 1.5rem;
text-align: center;
}
.bottom-cta h3 {
font-size: 1.25rem;
font-weight: 600;
margin-bottom: 0.5rem;
}
.bottom-cta p {
color: var(--muted-foreground);
margin-bottom: 1rem;
max-width: 32rem;
margin-left: auto;
margin-right: auto;
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(5px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.crm-image {
text-align: center;
}
.crm-image img {
max-width: 300px;
height: auto;
border-radius: var(--radius);
margin: 0 auto;
}
.crmlist-crm-link {
margin: 2em 3em;
text-align: center;
padding-bottom: 2em;
}
.crmbutton,
.home-highlight a {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.25rem;
padding: 0.5rem 1rem;
border-radius: var(--radius);
font-size: 0.875rem;
font-weight: 500;
cursor: pointer;
white-space: nowrap;
transition: all 0.2s;
background-color: hsl(246.22deg 80.39% 60%);
color: #FFF !important;
border: none;
position: relative;
overflow: hidden;
transform: translateZ(0);
text-decoration: none !important;
}
.crmbutton.button-primary:active {
transform: scale(0.95);
}
.crmbutton:hover {
transform: scale(1.05);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.crmbutton.back {
background-color: var(--muted);
color: grey !important;
}
.crmlist-crm-link .crmbutton {
margin: 0 2em;
}
.winner-badge {
position: relative;
}
.winner-badge svg {
top: 3px;
position: relative;
margin-right: 5px;
}
.crm-list {
margin-bottom: 3.4em;
}
.crm-list .also-awarded {
float: left;
margin-top: 1.2em;
}
.crm-list .also-awarded .explainer {
display: inline-block;
margin-top: 0.25rem;
padding: 0.35rem 0.75rem;
color: #000;
font-size: 0.75rem;
font-weight: 500;
white-space: nowrap;
margin-bottom: 1em;
}
.whcrm-single-listing {
padding: 40px 0;
}
.whcrm-single-listing .container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
.whcrm-single-listing .entry-title {
margin-bottom: 30px;
font-size: 2.5em;
}
.whcrm-content {
margin-bottom: 30px;
}
.whcrm-tags {
padding-top: 20px;
border-top: 1px solid #eee;
}
.whcrm-tags .tags-title {
font-weight: bold;
margin-right: 10px;
} 
body.page-id-51 h1.wp-block-heading {
font-size: 2.6em !important;
}
body.page-id-51 h2.wp-block-heading {
font-size: 1.4em !important;
color:#5198d6 !important;
}
body.page-id-51 main {
margin-top: 0.5em !important;
}
body.single-whcrm_listing .entry-content {
border: 1px solid var(--border);
border-radius: var(--radius);
background-color: white;
transition: box-shadow 0.2s;
max-width: 800px;
margin: auto;
padding-top: 2em;
padding-bottom: 2em;
}
body.single-whcrm_listing .entry-content .crmlist-crm-link,
body.crmlist-best-page .entry-content .crmlist-crm-link {
padding-bottom:0;
}
body.single-whcrm_listing .entry-content ul,
body.crmlist-best-page .entry-content ul {
margin-left: 2em;
}
body.single-whcrm_listing .wp-block-post-featured-image img{
max-height:200px !important;
max-width:200px !important;
}
body.crmlist-best-page .entry-content {
border: 1px solid var(--border);
border-radius: var(--radius);
background-color: white;
transition: box-shadow 0.2s;
margin: auto;
padding-top: 2em;
padding-bottom: 2em;
}
body.crmlist-best-page main {
margin-top: 0 !important;
}
body.crmlist-best-page figure.wp-block-post-featured-image {
text-align: center;
}
body.crmlist-best-page figure.wp-block-post-featured-image img {
max-height:180px !important;
max-width:180px !important;
margin-bottom: 1em;
}
body.crmlist-best-page h1 {
text-align: center;
margin-bottom: 0.5em;
}
.home-highlight {
}
.crm-logo-name { 
min-width:260px;
}
.crm-actions {
min-width:200px;
}
.metric.overall-rating {
display: none;
}
.star-semi-filled {
position: absolute;
top: 0;
left: 0;
overflow: hidden;
padding: 0;
height: 18px !important;
}
.score-label-extra {
display: none;
}
.crm-name-container a {
text-decoration: none;
}
@media (max-width: 1366px) {
.metric-2 {
display: none;
}
.crm-metrics {
grid-template-columns: repeat(3, 1fr);
}
}
@media (max-width: 1140px) {
.star {
font-size: 12px;
line-height: 12px;
}
.star-semi-filled {
line-height: 12px;
font-size: 12px;
height: 12px !important;
}
.star-container {
width: 12px !important;
height: 12px !important;
}
}
@media (max-width: 952px) {
.metric-3 {
display: none;
}
.crm-metrics {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 856px) {
.metric {
display: none;
}
.metric.overall-rating {
display: block;
}
.crm-metrics {
grid-template-columns: repeat(1, 1fr);
}
}
@media (max-width: 768px) {
.crm-card-header {
text-align:center;
}
.crm-logo-name {
justify-content: center;
}
.crm-name-container h3 {
font-size: 1.5em;
}
.crm-metrics {
grid-template-columns: repeat(2, 1fr);
}
.metric {
display: flex;
}
.metric.overall-rating {
display: none;
}
.rating-stars {
justify-content: center;
}
.star {
font-size: 18px;
line-height: 18px;
}
.star-semi-filled {
line-height: 18px;
font-size: 18px;
height: 18px !important;
}
.overall-score {
justify-content: center;
margin: auto;
max-width:80%;
}
.score-label-extra {
display: inline-block;
}
.score-label {
font-size: 1.2em;
}
.crmlist-crm-link .crmbutton {
display: block;
max-width: 150px;
margin: auto !important;
margin-top: 1em !important;
}
.crm-list .also-awarded {
float: unset;
text-align: center;
margin-bottom: 0.5em;
}
.view-details {
text-align: center;
}
} .wglossary h3 {
font-size: 1.2em;
line-height: 1em;
padding: 0.5em 0;
margin: 0.5em 0;
margin-top: 0 !important;
}
p.wglossary-breadcrumbs {
text-align: center;
background: #187cc9;
color: #fff;
padding: 4px;
border-radius: 4px;
}
figure.wp-block-image.aligncenter.size-large {
margin-top: 1.5em !important;
}
body.parent-pageid-490 main ul,
body.page-id-490 main ul {
max-width: 600px !important;
background: #187cc9;
color: #fff;
padding: 4px;
border-radius: 4px;
padding-left: 2em;
padding-right: 1em;
padding-top: 1em;
}
body.parent-pageid-490 main ul li,
body.page-id-490 main ul li {
margin-bottom: 0.8em;
}
body.page-id-490 main ul li a {
padding-left: 0.5em;
}
main figure.wp-block-post-featured-image,
main figure.wp-block-post-featured-image img {
max-width: 300px;
border-radius: 4px;
}
.crm-of-the-week-header {
display: flex;
flex-wrap: wrap;
gap: 1rem;
align-items: center;
justify-content: center;
}
.crm-of-the-week-header img {
vertical-align: middle;
}
.crm-badge {
display: flex;
flex-wrap: wrap;
gap: 1rem;
align-items: center;
}
.crm-of-the-week .crm-card {
background: linear-gradient(90deg, #e3ffe7 0%, #d9e7ff 100%);
}
.crm-of-the-week .crm-name-container h3 {
font-size:1.1em;
}
.crm-of-the-week .crm-card-header {
justify-content: center;
}
.crm-of-the-week .crm-badge,
.crm-of-the-week .crm-logo-name,
.crm-of-the-week .metric,
.crm-of-the-week .crm-actions {
max-width:24%;
}
.crm-of-the-week .crm-actions {
text-align:right;
margin:0;
}
@media (max-width: 1244px) {
.crm-badge img {
max-width: 60px;
}
.crm-badge h3 {
font-size:0.8em;
}
}
@media (max-width: 1020px) {
.crm-card-header {
padding: 0.5em;
}
.crm-badge img {
max-width: 40px;
}
.crm-logo-name {
min-width:unset;
}
}
@media (max-width: 905px) {
.crm-badge img {
max-width: 30px;
}
.crm-badge h3 {
font-size:0.6em;
}
}
@media (max-width: 751px) {
.crm-card-header {
padding: 1em;
gap: 1em;
}
.crm-of-the-week .crm-badge,
.crm-of-the-week .crm-logo-name,
.crm-of-the-week .metric,
.crm-of-the-week .crm-actions {
max-width:unset;
}
.crm-badge {
display:block;
}
.crm-badge img {
max-width: 70px;
float: right;
position: absolute;
top: 1em;
right: 1em;
}
.crm-badge h3 {
font-size: 1.4em;
color: #f59e0b; }
} .crm-of-the-week .crm-card {
position: relative;
overflow: hidden;
}
.crm-of-the-week .crm-card.shimmer::before {
content: '';
position: absolute;
top: -2px;
left: -100%;
width: 100%;
height: calc(100% + 4px);
background: linear-gradient(
90deg,
transparent,
rgba(79, 70, 229, 0.15),
transparent
);
animation: shimmer-border 2s ease-out;
pointer-events: none;
z-index: 1;
}
@keyframes shimmer-border {
0% {
left: -100%;
}
100% {
left: 100%;
}
}