/* ==========================================================================
   Pearl IMS — layout for the Solutions / Features / Industries page templates.
   Reuses shared tokens + components (pim-section, pim-container, pim-eyebrow,
   pim-h2, pim-lede, pim-card, pim-grid, pim-media-card, pim-industry-card,
   pim-stat-tile, pim-shot, pim-dot-grid, pim-cta-band) wherever they already
   cover a pattern. Only net-new layout (page hero, fee-collection spotlight,
   feature groups, mobile-apps band, trust band, alternating industry rows)
   lives here.
   ========================================================================== */










@media (max-width: 640px){

}

/* ---- Solutions: fee-collection dark spotlight --------------------------- */
.pim-spotlight{ position:relative; overflow:hidden; background:var(--pim-navy-2); color:#fff; }
.pim-spotlight__inner{ position:relative; padding-top:var(--pim-section-pad); padding-bottom:var(--pim-section-pad); display:flex; flex-wrap:wrap; gap:56px; align-items:flex-start; }
.pim-spotlight__copy{ flex:1 1 420px; min-width:min(300px,100%); }
.pim-spotlight__copy .pim-lede{ max-width:460px; }
.pim-spotlight__steps{ margin:32px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:22px; max-width:460px; }
.pim-spotlight__step{ display:flex; gap:16px; align-items:flex-start; }
.pim-spotlight__step-num{ flex:none; width:30px; height:30px; border-radius:8px; background:var(--pim-blue); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:var(--pim-font-mono); }
.pim-spotlight__step-title{ margin:0; font-weight:700; font-size:16px; color:#fff; }
.pim-spotlight__step-body{ margin:4px 0 0; font-size:14.5px; line-height:1.55; color:var(--pim-on-dark-muted); }
.pim-spotlight__media{ flex:1 1 380px; min-width:min(280px,100%); }
.pim-spotlight__media .pim-shot{ border-radius:16px; }
.pim-spotlight__caption{ margin:14px 0 0; text-align:center; font-size:13.5px; color:var(--pim-on-dark-faint); }

/* ---- Features: numbered group headers ----------------------------------- */
.pim-feature-group{ padding-top:84px; padding-bottom:0; }
.pim-feature-group--tight{ padding-top:64px; }
.pim-group-head{ display:flex; align-items:center; gap:18px; margin-bottom:36px; }
.pim-group-head__num{ flex:none; font:700 15px/1 var(--pim-font-mono); color:var(--pim-blue); letter-spacing:.04em; }
.pim-group-head__title{ flex:none; margin:0; font-weight:800; font-size:clamp(24px,3vw,32px); letter-spacing:-.02em; color:var(--pim-text); }
.pim-group-head__rule{ flex:1 1 auto; height:1px; background:var(--pim-border-2); }

/* ---- Features: mobile apps band ------------------------------------------ */
.pim-mobile-band{ margin-top:84px; }
.pim-mobile-band__inner{ display:flex; flex-wrap:wrap; gap:56px; align-items:center; }
.pim-mobile-band__copy{ flex:1 1 380px; min-width:min(300px,100%); }
.pim-mobile-band__copy .pim-lede{ max-width:460px; }
.pim-mobile-band__media{ flex:1 1 340px; min-width:min(260px,100%); }
.pim-check-list{ list-style:none; margin:26px 0 0; padding:0; display:flex; flex-direction:column; gap:15px; max-width:460px; }
.pim-check-list li{ display:flex; align-items:center; gap:12px; font-size:15.5px; font-weight:500; color:var(--pim-text); }
.pim-check-list li svg{ flex:none; color:var(--pim-green); }
.pim-phone-stack{ display:flex; gap:16px; }
.pim-phone{ width:150px; border-radius:26px; border:1px solid var(--pim-border-2); }
.pim-phone--offset{ margin-top:28px; }

/* ---- Features: trust & security dark band -------------------------------- */
.pim-trust-band{ position:relative; overflow:hidden; background:var(--pim-navy-2); color:#fff; }
.pim-trust-band__inner{ position:relative; padding-top:80px; padding-bottom:80px; }
.pim-trust-band__grid{ align-items:stretch; }
.pim-trust-band__head{ display:flex; flex-direction:column; justify-content:center; }
.pim-grid--auto-240{ grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.pim-info-card__title{ margin:0; font-weight:700; font-size:16px; color:#fff; }
.pim-info-card__body{ margin:8px 0 0; font-size:14.5px; line-height:1.55; color:var(--pim-on-dark-muted); }

/* ---- Industries: narrower container + alternating featured rows --------- */
.pim-container--1100{ max-width:1100px; }
.pim-industry-rows{ display:flex; flex-direction:column; gap:28px; margin-top:48px; }
.pim-industry-row{ display:flex; flex-wrap:wrap; align-items:center; gap:36px; border:1px solid var(--pim-border); border-radius:20px; padding:36px; background:var(--pim-surface-tint); }
.pim-industry-row--reverse{ flex-direction:row-reverse; }
.pim-industry-row__text{ flex:1 1 380px; min-width:min(280px,100%); }
.pim-industry-row__icon{ width:46px; height:46px; border-radius:11px; background:var(--pim-blue-light); color:var(--pim-blue); display:flex; align-items:center; justify-content:center; }
.pim-industry-row__title{ margin:18px 0 0; font-weight:800; font-size:23px; letter-spacing:-.01em; color:var(--pim-text); }
.pim-industry-row__body{ margin:10px 0 0; font-size:15.5px; line-height:1.6; color:var(--pim-text-muted); }
.pim-industry-row__media{ flex:1 1 380px; min-width:min(280px,100%); }
.pim-industry-row__media .pim-shot{ border-radius:12px; border:1px solid #E3E7F4; }

/* ---- Industries: "and many more" section heading ------------------------- */
.pim-industries-more-head{ text-align:center; margin:0 0 32px; }

@media (max-width: 720px){
	.pim-spotlight__inner, .pim-mobile-band__inner{ gap:40px; }
	.pim-industry-row{ padding:26px; gap:26px; }
	.pim-industry-row--reverse{ flex-direction:column; }
}

@media (max-width: 560px){
	.pim-group-head{ flex-wrap:wrap; gap:10px; }
	.pim-phone-stack{ gap:12px; }
	.pim-phone{ width:120px; }
}
