/* Industry pages (/industries/*). Loaded after problems.css and builds on it
   (pws-hero, pws-trust, pws-head, pws-card, pws-chat, pws-form-card) plus the Webflow
   classes (home-card, case-study-grid, case-card, faq-grid).
   Text follows the site's standard sizes: section headings use .new-h2, body copy 18px. */

/* hero: on desktop the photo fills its column from the top of the copy down to the trust bar */
@media(min-width:992px){
  .ind-hero .new-hero-grid{align-items:stretch}
  .ind-hero .hero-image-wrap{align-items:stretch;align-self:stretch}/* Webflow sets align-self:end */
  .ind-hero .hero-image{height:100%;max-height:none;max-width:none;object-fit:cover;object-position:50% 0}
}
@media(max-width:991px){.ind-hero .hero-image{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 0}}

/* logo grid under the trust bar: large full-colour logos, 3 across on desktop, 2 on mobile */
.ind-logos-section{background:#fff;padding-top:72px;padding-bottom:72px}
.ind-logos-section .new-container{padding-top:0;padding-bottom:0}/* .new-container carries section-sized vertical padding */
.ind-strip-title{margin:0 0 40px;text-align:center}
.ind-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 40px;max-width:960px;margin:0 auto;padding:0;list-style:none}
.ind-logos li{display:flex;align-items:center;justify-content:center;height:140px;padding:12px}
.ind-logos img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
@media(max-width:767px){.ind-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.ind-logos li{height:110px;padding:8px}}

/* positioning statement */
.ind-statement{max-width:900px;margin:0 auto;text-align:center}
.ind-statement .new-subtitle{margin-bottom:16px;text-transform:none}/* Webflow capitalises every word; the copy is sentence case */
.ind-statement .new-h2{margin-bottom:24px}
.ind-statement .body-text{font-size:20px;line-height:1.5}
@media(max-width:479px){.ind-statement .body-text{font-size:18px}}

/* "What we help with": 3 x 2 desktop, 2 columns tablet, 1 column mobile */
.ind-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media(max-width:991px){.ind-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ind-tiles{grid-template-columns:minmax(0,1fr)}}
.ind-tile{height:100%;text-decoration:none;color:#404040;transition:border-color .2s,box-shadow .2s}
.ind-tile:hover{border-color:#5B9769;box-shadow:2px 4px 29.5px #0000001f}
.ind-tile:focus-visible{outline:2px solid #053E2F;outline-offset:2px}
.ind-tile-icon{width:56px;height:56px;border-radius:50%;background:#36FFA4;color:#053E2F;display:grid;place-items:center;margin-bottom:20px;flex:none}
.ind-tile h3{margin:0 0 10px;font-size:22px;line-height:1.3;font-weight:600;color:#053E2F}
.ind-tile p{margin:0 0 20px;font-size:18px;line-height:1.5}
.ind-tile .arrow-button-dummy{color:#053E2F;width:100%;font-size:16px}

/* pain points: forest band, white text, mint accents */
.ind-pains{background:#053E2F;color:#fff}
.ind-pains .ind-pains-title{margin:0 0 48px;text-align:center;color:#fff}
.ind-pain{border-top:3px solid #36FFA4;padding-top:24px}
.ind-pain h3{margin:0 0 20px;font-size:24px;line-height:1.35;font-weight:600;color:#fff}
.ind-pain-label{display:block;margin-bottom:8px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#36FFA4}
.ind-pain p{margin:0;font-size:18px;line-height:1.55;color:#E3EEE9}
@media(max-width:860px){.ind-pains .pws-grid-3{gap:40px}}

/* featured projects: Webflow case cards, with the result line under the client name */
.ind-projects{scroll-margin-top:100px}
.ind-projects .card-image{height:auto}/* width/height attributes are for layout stability; aspect-ratio sets the shape */
.ind-projects .card-text-wrap h3{margin:0 0 12px}
.ind-projects .card-text-wrap p{margin:0 0 24px;line-height:1.5}
.ind-projects .arrow-button-dummy{font-size:16px}
.ind-projects .case-card{border:1px solid #DEE3DF}
.ind-projects .case-card:focus-visible{outline:2px solid #053E2F;outline-offset:2px}

/* testimonial slider (same component as /reviews), client logos as the dots */
.rv-slider{max-width:1000px;margin:0 auto;text-align:center}
.rv-quote-wrap{position:relative;padding:12px 80px 44px;min-height:170px;display:flex;align-items:center;justify-content:center;touch-action:pan-y;user-select:none}
@media(max-width:767px){.rv-quote-wrap{padding:44px 4px 52px}}
.rv-qm{position:absolute;width:48px}
.rv-qm-open{left:0;top:0}
.rv-qm-close{right:0;bottom:0}
@media(max-width:767px){.rv-qm{width:32px}}
.rv-quote{margin:0;padding:0;border:0;background:none;box-shadow:none;border-radius:0;font-size:22px;line-height:1.55;color:#053E2F;font-weight:500;max-width:760px}
@media(max-width:767px){.rv-quote{font-size:18px}}
.rv-nav{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:20px}
.rv-arrow{width:40px;height:40px;flex:none;display:grid;place-items:center;border:0;padding:0;background:none;color:#053E2F;cursor:pointer;transition:color .2s}
.rv-arrow svg{width:28px;height:28px}
.rv-arrow:hover{color:#5B9769}
.rv-dots{display:flex;align-items:center;justify-content:center;gap:20px}
.rv-dot{width:88px;height:88px;flex:none;border-radius:50%;background:#fff;border:1px solid #DEE3DF;display:grid;place-items:center;padding:14px;cursor:pointer;overflow:hidden;transition:width .25s,height .25s,border-color .25s}
.rv-dot:hover{border-color:#5B9769}
.rv-dot[aria-selected="true"]{width:116px;height:116px;padding:16px;border:2px solid #053E2F}
.rv-logo{max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:767px){.rv-nav{gap:4px}.rv-dots{gap:8px}.rv-arrow{width:28px}.rv-arrow svg{width:22px;height:22px}.rv-dot{width:60px;height:60px;padding:8px}.rv-dot[aria-selected="true"]{width:84px;height:84px;padding:10px}}
.rv-cite{margin-top:24px;min-height:84px}
.rv-name{font-weight:700;color:#053E2F;font-size:24px}
.rv-role{color:#3E5A51;font-size:18px;margin-top:4px}
.rv-link{display:inline-block;margin-top:10px;color:#053E2F;font-weight:600;font-size:16px;text-decoration:underline;text-underline-offset:3px}

/* FAQ: these questions are longer than the problem pages', so let the boxes size to content */
.ind-faq .faq-grid .accordion-item-trigger{min-height:0}
@media(min-width:768px){.ind-faq .faq-grid .accordion-item-trigger{min-height:150px}}
@media(min-width:992px){.ind-faq .faq-grid .accordion-item-trigger{min-height:128px}}
.ind-faq .faq-para a{color:#053E2F;text-decoration:underline}

/* why Sope: icon on top of each card */
.ind-why .pws-card{padding:36px 28px}
.ind-why .pws-card h3{font-size:24px;margin-bottom:12px}
.ind-why .pws-card p{font-size:18px;line-height:1.55}

/* contact: forest band like the problem pages; every intro paragraph at body size */
.ind-chat .pws-chat-intro .body-text{line-height:1.5}
