/* "Problems we solve" pages (/problems-we-solve/*). Shared so each new page in the
   section only needs its own copy. Builds on the Webflow classes (new-section,
   new-container, new-h2, new-primary-button, faq-grid, testimonial tabs). */
.pws-hero .new-h1{max-width:900px}
.pws-hero .body-text{max-width:720px}
.pws-head{max-width:800px;margin:0 auto 48px;text-align:center}
.pws-head .body-text{margin:20px 0 0}

.pws-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media(max-width:860px){.pws-grid-3{grid-template-columns:minmax(0,1fr)}}

.pws-quote,.pws-card{background:#fff;border:1px solid #DEE3DF;border-radius:12px;padding:28px 24px;box-shadow:2px 4px 29.5px #0000000f}
.pws-quote img{display:block;width:26px;height:auto;margin-bottom:14px}
.pws-quote p{margin:0;font-size:20px;line-height:1.4;font-weight:500;color:#053E2F}
.pws-card h3{margin:0 0 10px;font-size:20px;line-height:1.3;font-weight:600;color:#053E2F}
.pws-card p{margin:0;font-size:16px;line-height:1.5;color:#404040}

/* the page body is already light grey (#e6ebea), so alternate sections go white */
.pws-white{background:#fff}

.pws-rows{display:flex;flex-direction:column;gap:16px}
.pws-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);border:1px solid #DEE3DF;border-radius:14px;overflow:hidden}
@media(max-width:767px){.pws-row{grid-template-columns:minmax(0,1fr)}}
.pws-instead{background:#EEF1EE;padding:24px}
.pws-instead p{margin:0;font-size:16px;line-height:1.5;color:#3E5A51}
.pws-does{background:#053E2F;color:#fff;padding:24px 28px}
.pws-does h3{margin:0 0 8px;font-size:20px;line-height:1.3;font-weight:600;color:#fff}
.pws-does p{margin:0;font-size:16px;line-height:1.5;color:#fff}
.pws-does a{color:#36FFA4}
.pws-label{display:block;margin-bottom:10px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#3E5A51}
.pws-does .pws-label{color:#36FFA4}

/* hero: a little more forest green below the photo; trust strip sits flush underneath */
.pws-hero{overflow:hidden}/* the hero-shape sparkle sits partly off the right edge */
.pws-hero .hero-container{padding-bottom:0}
.pws-hero .button-group{display:flex;flex-wrap:wrap;gap:16px}
/* secondary hero CTA: same button shape, forest fill with a white outline so the mint primary stays dominant */
.new-primary-button.pws-btn-secondary{background-color:#053E2F;border-color:#fff;color:#fff}
.new-primary-button.pws-btn-secondary:hover{background-color:#36FFA4;border-color:#36FFA4;color:#053E2F}
.pws-hero .hero-image{height:auto}/* width/height attributes are for layout stability only */
.pws-hero .content-wrap{padding-bottom:72px}
@media(max-width:991px){.pws-hero .content-wrap{padding-bottom:0}}
/* trust strip reuses the logo marquee's .green-slit band and diagonal mint .marquee-logo-slit lines */
.pws-trust{position:relative}
.pws-cta{display:flex;justify-content:center;margin-top:48px}
.pws-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-top:30px;padding-bottom:30px}
.pws-stat{display:flex;align-items:center;gap:16px;padding-inline:24px;border-right:1px solid rgba(255,255,255,.14)}
.pws-stat:first-child{padding-left:0}
.pws-stat:last-child{border-right:0}
.pws-stat-icon{width:56px;height:56px;border-radius:50%;background:#36FFA4;color:#053E2F;display:grid;place-items:center;flex:none}
.pws-stat-icon.pws-ms{background:transparent;width:auto}
.pws-stat b{display:block;font-size:26px;line-height:1.2;font-weight:700;color:#fff}
.pws-stat div span{font-size:14px;color:#B9D6C8}
@media(max-width:991px){.pws-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}.pws-stat{padding-inline:12px;border-right:0}.pws-stat:nth-child(odd){padding-left:0}}
@media(max-width:479px){.pws-trust-grid{padding-top:24px;padding-bottom:24px}.pws-stat{gap:10px;padding-inline:0}.pws-stat-icon{width:40px;height:40px}.pws-stat-icon svg{width:20px;height:20px}.pws-stat b{font-size:19px}.pws-stat div span{font-size:12px}}

/* proof: light section; the white logo files sit on forest green tiles */
.pws-proof{background:#fff}
.pws-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:800px;margin:0 auto 56px;text-align:center}
.pws-stats .text-32px{color:#053E2F}
.pws-stats .text-small{color:#404040;font-size:16px}
@media(max-width:479px){.pws-stats{gap:12px}.pws-stats .text-32px{font-size:26px}.pws-stats .text-small{font-size:14px}}
.pws-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:900px;margin:0 auto;padding:0;list-style:none}
.pws-logos li{display:flex;align-items:center;justify-content:center;min-height:120px;padding:16px;background:#053E2F;border-radius:12px}
.pws-logos img{display:block;width:100%;max-width:220px;height:auto}
@media(max-width:600px){.pws-logos{gap:8px}.pws-logos li{min-height:72px;padding:8px}}

.pws-chat{background:#053E2F;color:#fff;scroll-margin-top:100px}
.pws-chat .new-h2{color:#fff}
.pws-chat-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start}
@media(max-width:860px){.pws-chat-grid{grid-template-columns:minmax(0,1fr);gap:32px}}
.pws-chat-intro .body-text{margin:20px 0 0;color:#fff}
.pws-form-card{background:#fff;border-radius:14px;padding:32px 28px;box-shadow:2px 4px 29.5px #0000001a}
.pws-form-card h3{margin:0 0 20px;font-size:24px;line-height:1.3;font-weight:600;color:#053E2F}
@media(max-width:479px){.pws-form-card{padding:24px 16px}}

.pws-problem-card{display:block;text-decoration:none;color:inherit}
.pws-problem-card:hover h2{text-decoration:underline}
.pws-problem-card h2{margin:0 0 10px;font-size:22px;line-height:1.3;font-weight:600;color:#053E2F}
.pws-problem-card p{margin:0;font-size:16px;line-height:1.5;color:#404040}
